As part of our renewed quest for even more performance, we have been drawing our plans as you will have read in previous blogs. While I continued researching how the engine scene was being built thanks to NSIGHT and Simon was busy getting confused with his weed and grass issues, Ravey the third technologist in our mighty trio made a tweak to the DarkAI subsystem that did not adversely affect the AI system but virtually eliminated the cost of calling what was the most expensive function to call. The humble result for me personally is that I went from 25 fps to 37 fps and my AI UPDATE call went from 25% of all cycles to less than 3% (and sometimes 0%).
The frame rate difference might be slight right now, but the smoothness of the game play is very noticeable. Furthermore when I switched off reflections, my frame rate jumped over 60 fps (on a 9600 GT card) which is just where I wanted it to be. My mission, partly thanks to NSIGHT, will be to target the reflection render system to ensure it only works when it needs to, and not in the scene above where it is quite clear there is no water to reflect anything.
Other discoveries included the conclusion that static batching, large object draw order and occlusion will all play a part in speeding up the level, and for the engine as a whole. These are planned for later in the week.
In other news, we have fixed the shader issue so HIGH and MEDIUM behave themselves and resemble their HIGHEST and LOWEST counterparts. Water is now fogged properly so it emerges from the mist just like everything else, and we are on the verge of halving the number of grass objects being rendered which will help performance even more.
I continue to haunt the forum this week to ensure I try to answer all our V1.007 concerns, and don't forget there is a Live Interview next week planned which will include some of your worthy questions you have posted last week. It will be on the subject of Indie Developers, but I might sneak some mentions of Reloaded while I am in the spotlight ;) Great to hear than V1.007 is being received well and we hope to improve on this version without too much delay, so watch this space for more news soon!