From Jason Beverage, "I've got a few machines that OSG incorrectly believes support FRAME_BUFFER_OBJECTS so I am manually trying to set the renderTargetImplementation to PIXEL_BUFFER or PIXEL_BUFFER_RTT. I noticed that this call wasn't setting the camera's overlay data properly because the setRenderTargetImplementation simply calls init() which only does anything for OBJECT_DEPENDENT_WITH_ORTHOGRAPHIC_OVERLAY. Any subsequent calls to getOverlayData will simply return the cached OverlayData instead of setting it up.
My fix updates the camera's render target implementation for all OverlayData objects in the OverlayDataMap."
This commit is contained in:
parent
f0c2b89fc5
commit
0c234e7997
@ -922,6 +922,12 @@ void OverlayNode::setRenderTargetImplementation(osg::Camera::RenderTargetImpleme
|
||||
_renderTargetImpl = impl;
|
||||
|
||||
init();
|
||||
for(OverlayDataMap::const_iterator itr = _overlayDataMap.begin();
|
||||
itr != _overlayDataMap.end();
|
||||
++itr)
|
||||
{
|
||||
itr->second->_camera->setRenderTargetImplementation(_renderTargetImpl);
|
||||
}
|
||||
}
|
||||
|
||||
OverlayNode::OverlayData* OverlayNode::getOverlayData(osgUtil::CullVisitor* cv)
|
||||
|
Loading…
Reference in New Issue
Block a user