diff --git a/src/osgVolume/MultipassTechnique.cpp b/src/osgVolume/MultipassTechnique.cpp index 72a90afa2..875752d24 100644 --- a/src/osgVolume/MultipassTechnique.cpp +++ b/src/osgVolume/MultipassTechnique.cpp @@ -390,9 +390,9 @@ void MultipassTechnique::init() { texture3D->setInternalFormatMode(internalFormatMode); } - texture3D->setImage(image_3d); + texture3D->setImage(image_3d.get()); - stateset->setTextureAttributeAndModes(volumeTextureUnit, texture3D, osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE); + stateset->setTextureAttributeAndModes(volumeTextureUnit, texture3D.get(), osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE); osg::ref_ptr baseTextureSampler = new osg::Uniform("volumeTexture", int(volumeTextureUnit)); stateset->addUniform(baseTextureSampler.get()); @@ -661,7 +661,7 @@ class RTTBackfaceCameraCullCallback : public osg::NodeCallback { osgUtil::CullVisitor* cv = dynamic_cast(nv); - cv->pushProjectionMatrix(_tileData->projectionMatrix); + cv->pushProjectionMatrix(_tileData->projectionMatrix.get()); _mt->backfaceSubgraphCullTraversal(cv); diff --git a/src/osgVolume/RayTracedTechnique.cpp b/src/osgVolume/RayTracedTechnique.cpp index 31f8ea1a5..f014f3ab9 100644 --- a/src/osgVolume/RayTracedTechnique.cpp +++ b/src/osgVolume/RayTracedTechnique.cpp @@ -165,7 +165,7 @@ void RayTracedTechnique::init() osg::ref_ptr vertexShader = osgDB::readRefShaderFile(osg::Shader::VERTEX, "shaders/volume.vert"); if (vertexShader.valid()) { - program->addShader(vertexShader); + program->addShader(vertexShader.get()); } else { @@ -285,7 +285,7 @@ void RayTracedTechnique::init() osg::ref_ptr fragmentShader = osgDB::readRefShaderFile(osg::Shader::FRAGMENT, "shaders/volume_tf_iso.frag"); if (fragmentShader.valid()) { - program->addShader(fragmentShader); + program->addShader(fragmentShader.get()); } else { @@ -300,7 +300,7 @@ void RayTracedTechnique::init() { OSG_INFO<<"Shader found"<addShader(fragmentShader); + program->addShader(fragmentShader.get()); } else { @@ -320,7 +320,7 @@ void RayTracedTechnique::init() osg::ref_ptr fragmentShader = osgDB::readRefShaderFile(osg::Shader::FRAGMENT, "shaders/volume_lit_tf.frag"); if (fragmentShader.valid()) { - program->addShader(fragmentShader); + program->addShader(fragmentShader.get()); } else { @@ -334,7 +334,7 @@ void RayTracedTechnique::init() osg::ref_ptr fragmentShader = osgDB::readRefShaderFile(osg::Shader::FRAGMENT, "shaders/volume_lit.frag"); if (fragmentShader.valid()) { - program->addShader(fragmentShader); + program->addShader(fragmentShader.get()); } else { @@ -352,7 +352,7 @@ void RayTracedTechnique::init() osg::ref_ptr fragmentShader = osgDB::readRefShaderFile(osg::Shader::FRAGMENT, "shaders/volume_tf.frag"); if (fragmentShader.valid()) { - program->addShader(fragmentShader); + program->addShader(fragmentShader.get()); } else { @@ -366,7 +366,7 @@ void RayTracedTechnique::init() osg::ref_ptr fragmentShader = osgDB::readRefShaderFile(osg::Shader::FRAGMENT, "shaders/volume.frag"); if (fragmentShader.valid()) { - program->addShader(fragmentShader); + program->addShader(fragmentShader.get()); } else { diff --git a/src/osgVolume/VolumeScene.cpp b/src/osgVolume/VolumeScene.cpp index 28438f250..d0b8ab16d 100644 --- a/src/osgVolume/VolumeScene.cpp +++ b/src/osgVolume/VolumeScene.cpp @@ -141,7 +141,7 @@ VolumeScene::TileData* VolumeScene::tileVisited(osgUtil::CullVisitor* cv, osgVol tileData->stateset->setTextureAttribute(2, tileData->depthTexture.get(), osg::StateAttribute::ON|osg::StateAttribute::OVERRIDE); tileData->texgenUniform = new osg::Uniform("texgen",osg::Matrixf()); - tileData->stateset->addUniform(tileData->texgenUniform); + tileData->stateset->addUniform(tileData->texgenUniform.get()); } tileData->active = true; @@ -305,7 +305,7 @@ void VolumeScene::traverse(osg::NodeVisitor& nv) stateset->setRenderBinDetails(10,"DepthSortedBin"); osg::ref_ptr program = new osg::Program; - stateset->setAttribute(program); + stateset->setAttribute(program.get()); // get vertex shaders from source osg::ref_ptr vertexShader = osgDB::readRefShaderFile(osg::Shader::VERTEX, "shaders/volume_color_depth.vert");