Re-re-recycle Gp2x Demo


Optimus

Member
Joined
May 8, 2005
Messages
339
Age
44
Location
Greece
Website
optimus.untergrund.net
Here is the Download Link. Almost forgot it..

30645.jpg


This is a fast made scene demo done in less than a week to support the combined demo compo of Pixelshow demoparty. It ranked 3rd.

Featuring some old and few almost new stuff (bilinear filtering, box blur, alpha blending, etc.) in a coder's demo done in a hurry. Some parts are not as smooth as I'd wish but still there are few impressive stuff in it. It uses the ogg940 player by Dzz and some precompiled version of mmuhack to gain a bit in performance.
 
much better than creeptea
nice to see your works :)
waiting for a Optimus demo made not "in a hurry" ..assembly07 ? :)
good luck

ps.
a remix of fc "second reality" would probably increase interest for this little machine ?
 
I always wondered too how possible it is to do bilinear filtering in software. That's why I tried to code it :)
Well, no it doesn't use the 940. The bilinear still does a lot of work in the inner loop of the rasterization if someone examines that piece of code, however it's all done in fixed point and only uses some multiplications (which only takes few cycle in the ARM), four times*pixels the memory reads (to read the 3 other pixels near the central one as data for the filtering) and a lot of shifting. If the RGB rotozoomer (which does the bilinear for each R,G and B separately, three times the work than the gray gradient one) is enabled to be at full screen (Only a 3rd of the screen is shown is the demo), it does around 20fps just for the records.

Maybe it can be further improved (reading and writting 32bit pairs? Maybe handling the R,G,B operations all at once in an integer instead of separately? I have used some similar tricks in other effects in the past but in this one I didn't had time to try. The strange thing is that I tried something similar in the other slow effects (box filter, blending) while party coding but there was hardly any speed improvement (maybe the cache is already slowing down things?) but I'll check these tricks with a more clear head again and try some more things). I am also planning to add an optional check for bilinear filtering in the next release of my 3d engine (Which I am planning to simplify as much as I can, write some parts for scratch and add some easy to use functions (maybe similar to OpenGL) and examples for designers/coders to use without having to look at my messy code. Coming,. soon?).
 
Back
Top