----- Robert Clausecker <fuz...@gmail.com> a écrit : > I just built the latest trunk and compiled it. I was very impressed > about the enhanced performance Wormux has now. In 0.9.2 stable release, > the performance was about 35-40 FPS, and now it's 45-55 FPS (I manually > tweaked src/options_menu.cpp in order to allow such high framerates)!!!
It's hard to actually benchmark the changes, but I guess those are the improvements: - more inlining (physical object accessors, some surface stuff) - trying to generate RGBA surfaces matching the display format I don't know of many additional algorithmic optimizations left but they are probably related to per-pixel alpha blending, which is very costly: - having a non-alpha tile items for parts of the ground with 0<alpha<transparent_threshold could be useful - making sure items who don't need alpha blending have colorkey instead (saves memory, too) This reminds me that the explosions don't use alpha blending to perform anti-aliasing. The remaining things might be to tweak the Double class (gcc is particularly awful at handling 64bits types on 32bits archs). This is probably impossible though because (decimal part being 16 bits): - overflows are more common (dynamics of 16 bits vs 48bits) - accuracy may suffer (having decimal part less than 16 bits to increase dynamics) > I hope, these imporvements will be available > for public soon. I'm afraid they'll have to be thoroughly tested, as they affect game play, and the number of changes increase the risk of a bug introduced. Regards, Christophe _______________________________________________ Wormux-dev mailing list Wormux-dev@gna.org https://mail.gna.org/listinfo/wormux-dev