in reply to Re^3: How to speed up a nested loop?
in thread How to speed up a nested loop?
Ah, i see where you're coming from. I need to explain however that that the analysis for change is necessary. You see, in order to actually have things be decently fast in OpenGL, i compile the contents of one 16x16 block into one display list, that can be called as one single line in perl and gets drawn directly from gfx card ram. Without those this would be pretty much impossible.
However the act of actually constructing those is pretty costly timewise. To give a comparison, the following is from one refresh cycle where ALL display lists (98 in this instance) get generated:
the code took: 0.467388 wallclock secs ( 0.47 usr + 0.06 sys = 0.53 CPU)
And this one is from when NO display lists are generated:
the code took: 0.025486 wallclock secs ( 0.03 usr + 0.00 sys = 0.03 CPU)
As such, making the assignments would shave time off of an "idle refresh", but greatly increase the general costs by increasing the number of "rebuild refreshes".
The increases i'm looking for right now are necessary to ensure the ability to refresh at a constant rate while no game changes are occuring, without having any skipping in the operation. This goal is pretty much reached, as i can now fix the FPS at 30 and updates should fit inbetween frame generation.