| Submitted by , posted on 24 January 2003 |

Image Description, by This is a screen shot, from my recently completed screen saver project. It can be downloaded from: http://www.scene.org/file.php?file=/demos/artists/fluid/fld_water.zip&fileinfo if the above link does not work then the scene.org admin have moved the file to our main directory
http://www.scene.org/dir.php?dir=/demos/groups/fluid/ look for fld_water.zip
All code was done in Microsoft C++ and MASM.
The screen saver is 100% software rendered.
The only major problem i had developing the screen-saver, was trying to maintain a decent frame-rate. The image cycling mode blends two images together in real time using no look-up tables, at first i just used a standard linear interpolation something like the below:
c = (cb * t + cf * (1 - t))
that was done for every color component (r,g,b) on a 512x384 surface. yes it was slow, far to many calculations were being performed to acheive the effect, in the end i put together an alpha blending function using MMX instructions. the function works on two color components at a time and the results were very fast. Infact i had enough cpu cycles left to perform anti-aliasing.
Screen saver settings include: 3 diffrent backgrounds, and an image cycling option, that cycles through the 3 available backgrounds using alpha blending.
Hope you enjoy the screen shot, and screen saver.
Wayne Mike

[prev] | Image of the Day Gallery www.flipcode.com | [next]

Copyright 1999-2008 (C) FLIPCODE.COM and/or the original content author(s). All rights reserved.
Please read our Terms, Conditions, and Privacy information.