2x-4x Faster Living Noise
Nov 4, 2009
I wasn't quite satisfied with almost 50% CPU for v1 of the Living Noise here, so made some improvements.
The new version runs at 15-20% in low quality and about 30% in high quality..could be better but I tried... :)
The new version replaces the old one here: http://nokola.com/livingnoise
If you don't see the "High Quality" checkbox, please refresh/delete your browser cache.
The source code is updated as well: http://nokola.com/sources/livingnoise.zip
Summary of Optimizations
- Changed to static threads and event signaling instead of creating threads on every frame
- Added table lookup instead of division and shifts for blur (this improved perf about 30%)
- Added "skip step": since most of the screen is black, if the blur finds black pixel, it jumps 8 pixels ahead and if it finds another black pixel, assumes that the line strip was black and does not do anything. To avoid having dots "stick" on the screen, the algorithm uses a sliding window on every Blur() to ensure that all pixels on the screen are verified at some point. (that was significant perf improvement as well)
- Added artificial frame cap to 90 FPS
Hope you like it!