[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [51128] branches/ge_harmony/source/ gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp: The gbuffer reshuffling broke things for ATI cards.

Daniel Stokes kupomail at gmail.com
Sat Oct 6 23:28:48 CEST 2012


Revision: 51128
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=51128
Author:   kupoman
Date:     2012-10-06 21:28:48 +0000 (Sat, 06 Oct 2012)
Log Message:
-----------
The gbuffer reshuffling broke things for ATI cards. Turns out I was trying to draw to something that wasn't there (second color attachment). Also changing the light buffer to a integer format to get rid of more of the floating point textures.

Modified Paths:
--------------
    branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp

Modified: branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
===================================================================
--- branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp	2012-10-06 19:58:21 UTC (rev 51127)
+++ branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp	2012-10-06 21:28:48 UTC (rev 51128)
@@ -703,7 +703,7 @@
 
 			// Update light target, but don't attach for now
 			glBindTexture(GL_TEXTURE_2D, GPU_texture_opengl_bindcode(m_light_target));
-			glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA16F, m_width, m_height, 0, GL_RGBA, GL_HALF_FLOAT, NULL);
+			glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA16, m_width, m_height, 0, GL_RGBA, GL_SHORT, NULL);
 			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
 			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
 			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
@@ -1628,7 +1628,7 @@
 	glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, m_prepass_target[0], 0);
 	//glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT1_EXT, GL_TEXTURE_2D, m_prepass_target[1], 0);
 	GLenum targets[2] = {GL_COLOR_ATTACHMENT0_EXT, GL_COLOR_ATTACHMENT1_EXT};
-	glDrawBuffersARB(2, targets);
+	glDrawBuffersARB(1, targets);
 
 	glClearColor(0.0, 0.0, 0.0, 0.0);
 	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);




More information about the Bf-blender-cvs mailing list