I’m trying to render a model into a render target then show it with a 2d quad on the screen, however I’m seeing something strange, the model seems to be inside-out! look at the image below. The perspective is correct, I have tested CW and CCW winding, and numerous other GL states, but still things look inside out.
http://imageshack.us/photo/my-images/585/screenshot1zr.jpg
code for void renderOpenGL() callback
[code]OpenGLHelpers::clear (Colours::black.withAlpha (1.0f));
glEnable (GL_BLEND);
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable (GL_TEXTURE_2D);
glShadeModel(GL_SMOOTH); // Enables Smooth Shading
glClearDepth(1.0f); // Depth Buffer Setup
glEnable(GL_DEPTH_TEST); // Enables Depth Testing
glDepthFunc(GL_LESS); // The Type Of Depth Test To Do
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // Really Nice Perspective Calculation
glDisable(GL_LIGHTING);
//========================================================================================================================
//Setup Render Target 1
OpenGLFrameBuffer* RT1 = OpenGLImageType::getFrameBufferFrom (renderTarget1);//renderTarget1 is created in newOpenGLContextCreated()
RT1->makeCurrentAndClear();
OpenGLHelpers::prepareFor2D (getWidth(), getHeight());
OpenGLHelpers::setPerspective ((double)CAMERA_FOVX, getWidth() / (double) getHeight(), (double)CAMERA_ZNEAR, (double)CAMERA_ZFAR);
//Draw To The Render Target 1
OpenGLFrameBuffer* tex1 = OpenGLImageType::getFrameBufferFrom (logoImage);
glTranslatef (0.0f, 0.0f, -2.0f);
tex1->draw3D (-1.0f, 1.0f, 1.0f, -1.0f, -1.0f, 1.0f, 1.0f, -1.0f, 1.0f, 1.0f, 1.0f, 1.0f, Colours::white);
tex1->draw3D (-1.0f, 1.0f, -1.0f, 1.0f, 1.0f, -1.0f, 1.0f, -1.0f, -1.0f, -1.0f, -1.0f, -1.0f, Colours::white);
tex1->draw3D (-1.0f, -1.0f, -1.0f, 1.0f, -1.0f, -1.0f, 1.0f, -1.0f, 1.0f, -1.0f, -1.0f, 1.0f, Colours::white);
//-----------------------
//Release Render Target
//-----------------------
RT1->releaseAsRenderingTarget();
//========================================================================================================================
OpenGLHelpers::prepareFor2D (getWidth(), getHeight());
OpenGLHelpers::setPerspective ((double)CAMERA_FOVX, getWidth() / (double) getHeight(), (double)CAMERA_ZNEAR, (double)CAMERA_ZFAR);
//=======================================================================================================
//DRAW A QUAD
//=======================================================================================================
glTranslatef (0.0f, 0.0f, -0.645f);
RT1->draw2D(-1,-1,1,-1,1,1,-1,1,Colours::white);[/code]
Im suspecting something wrong with makeCurrentAndClear();
Any Ideas how to just draw 3d stuff into a render target properly, thanks in advance…
