Render to texture effects and MSAA...

LeGreg said:
OpenGL guy said:
If the application only uses a single texture for multiple effects, you can't render to backbuffer, copy to texture, render to backbuffer with the texture, then do the same process for the next effect since the backbuffer already has data that can't be overwritten..
So what is your proposal to improve the API ? Allow for multisampled textures ?
That would be good from a performance standpoint (less copies). Clearly, you wouldn't want to create a zillion MSAA textures because of the memory cost, but that goes for MSAA render targets as well. For cases where you need more than one MSAA texture, you could use a copy mechanism.
 
OpenGL guy said:
Demirug said:
It can work if you render to the backbuffer and than use StretchRect to copy the backbuffer to a texture. In this case the application does not need to support AA because the driver knows that the backbuffer have AA. Splinter Cell 3 as an example does it this way.
Except that this may not be possible if the backbuffer contains data you want to keep. Anyway, I said, "You can't expect..." that doesn't mean it's impossible it just means that you shouldn't expect it to work.
I don't understand. If the application renders to the backbuffer then copies the contents to a texture, in what way does that copy (+downsampling with forced AA) affect the contents of the backbuffer?
 
OpenGL guy said:
Except that this may not be possible if the backbuffer contains data you want to keep. Anyway, I said, "You can't expect..." that doesn't mean it's impossible it just means that you shouldn't expect it to work.

Maybe there is a missunderstanding. After the copy I do not need the data in the backbuffer anymore if i want to use the copy for a fullscreen effect.
 
Demirug said:
OpenGL guy said:
Except that this may not be possible if the backbuffer contains data you want to keep. Anyway, I said, "You can't expect..." that doesn't mean it's impossible it just means that you shouldn't expect it to work.
Maybe there is a missunderstanding. After the copy I do not need the data in the backbuffer anymore if i want to use the copy for a fullscreen effect.
That wasn't exactly the scenario I was referring to, I think I explained it better in a later post.
 
Back
Top