I have shadowmaps working nicely in Nvidia cards, and altough they are also workin in Ati cards, they look ugly.
I’m setting up my code on the ATI version like this :
glGenFramebuffersEXT( 1, &g_BIG_SHADOWframeBuffer ); glGenRenderbuffersEXT( 1, &g_BIG_SHADOWdepthRenderBuffer ); glBindRenderbufferEXT( GL_RENDERBUFFER_EXT, g_BIG_SHADOWdepthRenderBuffer ); glRenderbufferStorageEXT( GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, 2048, 2048 );
The texture is created like this :
glTexImage2D( GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT16, 2048, 2048, 0, GL_DEPTH_COMPONENT, GL_FLOAT, NULL);
The Nvidia version instead of GL_DEPTH_COMPONENT16 i’m using GL_DEPTH_COMPONENT24.
In Nvidia even using a depth of 16, the shadowmap looks fine, i can’t even spot a diference from the 24bit version, so i guess they just roll back to 24.
The results are the following :
On the ATI looks pixelated and ugly, do you guys know what am i doing wrong here ? Maybe some other way to setup the fbo, or generate the texture ??