From cd58f012a35d5ad3c7bc5e72cd3f61d58ff0e0a5 Mon Sep 17 00:00:00 2001 From: "Anthony J. Thibault" Date: Sat, 15 Aug 2015 09:42:05 -0700 Subject: [PATCH] Fix for ATI discrete graphics on 2015 macbook pro / mac pro. Fixed incorrect size for camera transform uniforms passed via glBindBufferRange. This is a legitimate bug on our side. I guess Intel and nVidia drivers just happen to ignore this field. This was likely causing many of the shader TransformCamera members to be identity or un-initialized, specifically, the projection matrix values. This was resulting in a black screen on ATI gpus. --- libraries/gpu/src/gpu/GLBackendTransform.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/gpu/src/gpu/GLBackendTransform.cpp b/libraries/gpu/src/gpu/GLBackendTransform.cpp index a9f30fd0fa..23b3dba14e 100755 --- a/libraries/gpu/src/gpu/GLBackendTransform.cpp +++ b/libraries/gpu/src/gpu/GLBackendTransform.cpp @@ -133,7 +133,7 @@ void GLBackend::updateTransform() { if (offset >= 0) { glBindBufferRange(GL_UNIFORM_BUFFER, TRANSFORM_CAMERA_SLOT, _transform._transformCameraBuffer, - offset, sizeof(Backend::TransformObject)); + offset, sizeof(Backend::TransformCamera)); } (void)CHECK_GL_ERROR();