From 7a074acd49c15838654587df74938f03add0fbd0 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Mon, 12 May 2008 11:39:02 +0000 Subject: [PATCH] From Mathias Froehlich, Fixed FrameBufferObject attachement code to handle cases where no texture or image is attached --- src/osgUtil/RenderStage.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/osgUtil/RenderStage.cpp b/src/osgUtil/RenderStage.cpp index 56c01c7cb..0531657f2 100644 --- a/src/osgUtil/RenderStage.cpp +++ b/src/osgUtil/RenderStage.cpp @@ -340,7 +340,10 @@ void RenderStage::runCameraSetUp(osg::RenderInfo& renderInfo) osg::Camera::BufferComponent buffer = itr->first; osg::Camera::Attachment& attachment = itr->second; - fbo->setAttachment(buffer, osg::FrameBufferAttachment(attachment)); + if (attachment._texture.valid() || attachment._image.valid()) + fbo->setAttachment(buffer, osg::FrameBufferAttachment(attachment)); + else + fbo->setAttachment(buffer, osg::FrameBufferAttachment(new osg::RenderBuffer(width, height, attachment._internalFormat))); if (buffer==osg::Camera::DEPTH_BUFFER) depthAttached = true; else if (buffer==osg::Camera::STENCIL_BUFFER) stencilAttached = true;