]> git.mxchange.org Git - flightgear.git/blobdiff - src/Instrumentation/od_gauge.cxx
Merge branch 'maint2' into next
[flightgear.git] / src / Instrumentation / od_gauge.cxx
index ce66472598cc134de12f3d4fa7e24167ea53becc..820f0a9d8744d2de031d82a7484731634f41d9e7 100644 (file)
@@ -37,6 +37,7 @@
 #include <osg/StateSet>
 #include <osgDB/FileNameUtils>
 
+#include <simgear/scene/util/RenderConstants.hxx>
 #include <simgear/screen/extensions.hxx>
 #include <simgear/debug/logstream.hxx>
 
@@ -53,6 +54,8 @@ FGODGauge::FGODGauge() :
 
 void FGODGauge::allocRT () {
     camera = new osg::Camera;
+    // Only the far camera should trigger this texture to be rendered.
+    camera->setNodeMask(simgear::BACKGROUND_BIT);
     camera->setProjectionMatrix(osg::Matrix::ortho2D(-256.0, 256.0, -256.0,
             256.0));
     camera->setViewport(0, 0, textureWH, textureWH);
@@ -60,7 +63,7 @@ void FGODGauge::allocRT () {
     camera->setRenderOrder(osg::Camera::PRE_RENDER);
     camera->setClearMask(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
     camera->setClearColor(osg::Vec4(0.0f, 0.0f, 0.0f , 0.0f));
-    camera->setRenderTargetImplementation(osg::Camera::FRAME_BUFFER_OBJECT);
+    camera->setRenderTargetImplementation(osg::Camera::FRAME_BUFFER_OBJECT, osg::Camera::FRAME_BUFFER);
     osg::StateSet* stateSet = camera->getOrCreateStateSet();
     stateSet->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
     stateSet->setMode(GL_CULL_FACE, osg::StateAttribute::OFF);