I've been tasked with implementing multi-threaded support for our rendering engine and I've run into a problem I haven't been able to solve or google my way around.
When I set everything to wire-frame only it appears the rendered data is somehow being maintained from frame to frame. For example, if I just render a box then on frame 1 I would see the mainframe in it's entirety and on frame 2 I would see nothing. Then, if I rotate the box, I would see the wire-frame, but only the parts that aren't part of the initial wire-frame. (It's as if the previous wire-frame is "blocking" those bits.)
This data builds up, so eventually if you rotate the box in every conceivable way nothing will render as every pixel is now occluded... somehow.
I've gone so far as to literally delete and recreate my deferred context's every single frame to see if somehow I've missed something that needs to be reset, but even this it still occurs.
If I set back to a non-deferred system, everything works perfectly. (Basically, if everything is done on the immediate context.)
There has to be something I've missed!
Thank you for your time.