I think this is my least favorite kind of bug to track down. Even worse than a dangling pointer write - at least with that, you can use hardware debugging and catch it in the act.
There are so many ways something can just decide to not render. It might be getting culled as an optimization; the transforms might be wrong, rendering it beyond a clip plane; something silly like backface culling if you're rendering something 2D; it could be obscured by foreground rendering; or you might just be using your graphics API wrong, and yet it's failing silently...that's the worst one right there, and I think it's what I'm up against right now. Fortunately I do have some code that works, so I can compare-and-contrast until I figure out why the broken code is broke. No fun, though.
Oh yes, and let's not forget translucency and messed up shaders.

at least you have a few options.. you already have a working version. You could also disable some features and try wireframe rendering.
My opinion is that data corruption is worst. A long time ago, TSR programs were a pain to work on. :)
Posted by: luc raymond | August 14, 2009 at 10:45 AM
Highly platform dependent. Debugging it is trivial with PIX for example.
Posted by: yarpen | August 14, 2009 at 10:52 AM