Does glAccum use AA filter?
Hi all, I have a problem with AA in my application, I need to use glAccum function in a post process filter.
If I render my objects without this post process filter (so, I'm not using glAccum), objects appear fine without jaggies. Instead, if I activate the post process filter (so, I'm now using glAccum), objects appears with jaggies in edges.
I was wondering if glAccum uses or not AA. In my application, the results offered by glAccum (GL_RETURN) are stored in a texture to process the filter. After that, I render a whole fullscreen QUAD with that texture modified by the filter.
I have tried to show directly the return of glAccum in the screen, but the results are the same, objects with jaggies.
So, my question is: is there a way to activate the AA filter in glAccum calls?
Thanks for all and sorry for my English.
Quote:Original post by sylpheedNot so far as I know.
So, my question is: is there a way to activate the AA filter in glAccum calls?
Also be aware that the accumulation buffer has been deprecated for quite some time. You can achieve the same effects (and more) using framebuffer objects with floating point textures as your accumulation buffer, and a shader to handle your accumulation operation. You can implement AA for framebuffer objects with the EXT_framebuffer_multisample extension.
Of course, on older hardware, the accumulation buffer may be all you have, but in that case, AA will probably be out of reach as well [smile]
Thanks for you answer.
Old hardware is not a problem for our purpose, we have a high system requirements, so framebuffer should be supported by clients.
I'll try with framebuffers, but, what would you use to mix the results offered by framebuffers? Using accumulation buffer, I had:
for (...)
...
glAccum (GL_ADD, ...)
...
end
glAccum (GL_RETURN);
With framebuffers, should I use glTexEnvi with GL_COMBINE instead of glAccum (GL_ADD,...)?
Thanks again
Old hardware is not a problem for our purpose, we have a high system requirements, so framebuffer should be supported by clients.
I'll try with framebuffers, but, what would you use to mix the results offered by framebuffers? Using accumulation buffer, I had:
for (...)
...
glAccum (GL_ADD, ...)
...
end
glAccum (GL_RETURN);
With framebuffers, should I use glTexEnvi with GL_COMBINE instead of glAccum (GL_ADD,...)?
Thanks again
glTexEnv is fixed function. You should use shaders for all your rendering.
glAccum(GL_ADD, 0.0) just adds RGBA values. You can have the same effect with
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE);
so that adds your RGBA value with whatever is in the framebuffer.
glAccum(GL_ADD, 0.0) just adds RGBA values. You can have the same effect with
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE);
so that adds your RGBA value with whatever is in the framebuffer.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement