From c6407cd19d12bbae1b6edf16d15e95ff274c3dfe Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Tue, 1 Sep 2015 16:19:56 +0200 Subject: [PATCH] Compatibility Fix - Use the extension of glFrameBufferTexture2D. --- Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h | 2 ++ Polyhedron/demo/Polyhedron/GlSplat/GlSplat.cpp | 7 +++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h b/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h index fe99eda60b2..cb133b1054a 100644 --- a/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h +++ b/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h @@ -32,8 +32,10 @@ public: virtual bool inFastDrawing() const = 0; typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDARBPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); typedef void (APIENTRYP PFNGLVERTEXATTRIBDIVISORARBPROC) (GLuint index, GLuint divisor); + typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLuint target, GLuint attachment, GLuint textarget, GLuint texture, GLint level); PFNGLDRAWARRAYSINSTANCEDARBPROC glDrawArraysInstanced; PFNGLVERTEXATTRIBDIVISORARBPROC glVertexAttribDivisor; + PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glFramebufferTexture2D; bool extension_is_found; GLfloat pickMatrix_[16]; diff --git a/Polyhedron/demo/Polyhedron/GlSplat/GlSplat.cpp b/Polyhedron/demo/Polyhedron/GlSplat/GlSplat.cpp index e5c737db910..5e2088711c3 100644 --- a/Polyhedron/demo/Polyhedron/GlSplat/GlSplat.cpp +++ b/Polyhedron/demo/Polyhedron/GlSplat/GlSplat.cpp @@ -200,8 +200,8 @@ void SplatRenderer::updateRenderBuffer() //glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MAG_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_RECTANGLE, GL_TEXTURE_MAG_FILTER, GL_NEAREST); mRenderBuffer->bind(); - //glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT1_EXT, GL_TEXTURE_RECTANGLE_ARB, mNormalTextureID, 0); - viewer->glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT1, GL_TEXTURE_RECTANGLE, mNormalTextureID, 0); + viewer->glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DEXTPROC)viewer->context()->getProcAddress("glFramebufferTexture2DEXT"); + viewer->glFramebufferTexture2D(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT1_EXT, GL_TEXTURE_RECTANGLE_ARB, mNormalTextureID, 0); mRenderBuffer->release(); } @@ -221,8 +221,7 @@ void SplatRenderer::updateRenderBuffer() //glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MAG_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_RECTANGLE, GL_TEXTURE_MAG_FILTER, GL_NEAREST); mRenderBuffer->bind(); - //glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_TEXTURE_RECTANGLE_ARB, mDepthTextureID, 0); - viewer->glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_RECTANGLE, mDepthTextureID, 0); + viewer->glFramebufferTexture2D(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_TEXTURE_RECTANGLE_ARB, mDepthTextureID, 0); mRenderBuffer->release(); }