Incremental rendering


I was wondering whether it was possible to let jME only draw the pixels that were changed since last render, while letting the rest of the screen sit unchanged. If its already doing this, please tell me, so that I can scrape that off my 'good ideas' list :wink:


Apart from being AFAIK impossible (you can't turn off rendering of some pixels), I don't know why you would need this. The only speedup if it was possible, would be from not performing the fragment shaders on those pixels. Furthermore, in a 3D environment, even slight movement will change all pixels on the screen.

Imagine a static camera position over a static world, with objects moving about on this world. If only those pixels would be recalculated that changed because of those object movements, except for the whole screen, I can imagine this increasing the rendering efficiency.

I don't know how you'd go about doing this in xith, but I'm thinking you could restrict the drawn pixels with the stencil buffer. You would not only need to draw the pixels where objects had moved too, but also rerender the ones where it had moved from. I suspect that calculating this would be more compultationaly intense, than just rendering the old pixels, which i'm guessing would most likely be terrain.