FBO로 렌더링 한 다음 화면 버퍼로 렌더링하면 텍스처가 어두워집니다. 여기에서 볼 수 있듯이 ->http://imgur.com/QZNyY8U왜 FBO로 렌더링하면 텍스처가 더 어두워 집니까?
RenderTarget target = new RenderTarget(Display.getWidth(), Display.getHeight());
렌더 타겟 클래스는 여기에서 찾을 수 있습니다 : 사용 http://pastebin.com/anpBPsgv
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);
// set the color of the quad (R,G,B,A)
GL11.glColor4f(5/255f, 35/255f,70/255f, 1f);
//Bind Render Target
target.bind();
// draw quad on FBO
GL11.glBegin(GL11.GL_QUADS);
GL11.glVertex2f(0,0);
GL11.glVertex2f(0+200,0);
GL11.glVertex2f(0+200,0+200);
GL11.glVertex2f(0,0+200);
GL11.glEnd();
target.unBind();
glEnable(GL_TEXTURE_2D); // enable texturing
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);// switch to rendering on the framebuffer
glClearColor (0.0f, 0.0f, 0.0f, 1.0f);
glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);// Clear Screen And Depth Buffer on the framebuffer to black
glBindTexture(GL_TEXTURE_2D, target.colorTextureID); // bind our FBO texture
//Draw FBO on screen buffer
glBegin(GL_QUADS);
glTexCoord2f(0.0f, 0.0f); glVertex2i(0, 0);
glTexCoord2f(1.0f, 0.0f); glVertex2i(Display.getWidth(), 0);
glTexCoord2f(1.0f, 1.0f); glVertex2i(Display.getWidth(), Display.getHeight());
glTexCoord2f(0.0f, 1.0f); glVertex2i(0, Display.getHeight());
glEnd();
glDisable(GL_TEXTURE_2D);
//Draw same colour image without gonig through FBO
GL11.glBegin(GL11.GL_QUADS);
GL11.glVertex2f(200,0);
GL11.glVertex2f(200+200,0);
GL11.glVertex2f(200+200,0+200);
GL11.glVertex2f(200,0+200);
GL11.glEnd();
glFlush();
클래스 여기 pastebin.com/YRChp5vB 찾을 수 있습니다 여기 pastebin.com/anpBPsgv
해당 붙여 넣기를 인라인합니다. – genpfault