[osg-users] OpenSceneGraph-3.4.0-rc12 tagged

Robert Osfield robert.osfield at gmail.com
Mon Aug 10 13:04:39 PDT 2015

Hi All,

I have just tagged rc12.  Had intended to make the release, but with
testing comes problem reports... which do eventually get resolved and then
fixes checked in...

Today I been working hard to today to come up with viable workaround for
the NVIdia volume rendering/loop variable bug and the best solution I have
come up with has been to extend the #pragma(tic) shader composition support
to assign the GL_VENDOR string to a #define, then have the shaders check
for this and decide what to do in the shader depending upon the vendor
string.  I'm guessing this will be useful beyond this particular GLSL
workaround for osgVolume.  The workaround in the shader looks like:

#version 110

##pragma import_defines(NVIDIA_Corporation)

#if defined(NVIDIA_Corporation)
    // workaround a NVidia hang when the loop variable is a float, but
works fine when it's an int
    #define loop_type int
    #define loop_type float

Note to map the GL_VENDOR string of "NVIDIA Corporation" to a #define I
have had to replace spaces with _.

Also fixed today was include/osg/Types handling under VS.

The source can be found at:

   - Zip file containing source code : OpenSceneGraph-3.4.0-rc12.zip
   - Subversion tag for 3.4.0-rc12 : svn co

Aside from the above my main dev main decided to start hanging soon after
booting.  I have wasted lots of hours trying to get to the bottom of the
problem, and most likely candidate is a disk failure.  Perhaps the lighting
storm we had today fried it... So today has been a bit of nightmare...

Anyway, please test :-)

My plan is now to go for 3.4.0 release on Wednesday.  Tomorrow I'll be
writing up new features/writing + recording presentations.

-- ChnageLog since rc 11:

2015-08-10 19:56  robert

    * src/osg/State.cpp: From svn/trunk merged support for passing the
      GL_VENDOR string into the #pragma(tic) shader compositions

2015-08-10 19:46  robert

    * CMakeLists.txt, ChangeLog: Update RC number to 12, and updated

2015-08-10 19:40  robert

    * CMakeLists.txt: Fixed line endings

2015-08-10 19:39  robert

    * src/osgVolume/Shaders/volume_frag.cpp,
      src/osgVolume/Shaders/volume_tf_mip_frag.cpp: Updated built-in
      shaders from OpenSceneGraph-Data vesion that introduce
      #pragma(tic) shaders that resolve the NVidia loop iteration bug.

2015-08-10 19:19  robert

    * src/osg/Shader.cpp: Quietened down #pragma(tic) shader
      composition messages

2015-08-10 05:04  robert

    * include/osg/Types, src/osg/CMakeLists.txt: Build fix for VS and
      installing TYpes
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20150810/6d4cc634/attachment-0002.htm>

More information about the osg-users mailing list