More fine-tuning of the occlusion queries code. I think that "blinky" on brush model entities has now been completely abolished but I'm being cautious and leaving the default at MDL only. There was a really rare and quite subtle crash bug in there that I caught once while not running in the debugger, and was damn fortunate to catch a second time while in the debugger.
Viewport scaling and interaction with the status bar now seems to be rock solid for all combinations of possible configurations.
Another bug with anisotropic filtering has been caught. Sheesh! Why can't D3D have texparams like OpenGL? (OK, it can if I wrap IDirect3DTexture9, but I shouldn't have to.)
One nasty performance killer has been identified where surface batching gets broken. DirectQ renders in texture order, with each texture being sorted front to back, then in lightmap order within that (lightmap building is done is texture order to preserve batching). However that means that the draw order of Texture1/Front/Lightmap1, Texture1/Front/Lightmap2, Texture1/Back/Lightmap1 is possible. Yeah, front to back is good, but batching gives more performance, so the order needs to change to texture, lightmap, f2b. Hanging a surface chain off each lightmap seems to be the way to go, and should further boost a lot of really big and complex scenes. I'll be keeping a copy of the old code on standby just in case it doesn't.
The timer has been smoothed out better. Remember the integer division thing I mentioned where at 72 FPS some frames need to be 13ms and some need to be 14ms? Well now they are.
Overall items are starting to fall off my "to do" list quite nicely, and I haven't been caught by any frustrating time-killing bugs yet, but then again I haven't even touched the sound code problem yet. I'll know for definite when a likely release date will be as soon as I have that done.
Wednesday, June 30, 2010
Updates for 30th June 2010
Posted by
mhquake
at
9:58 PM
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment