[osg-users] Changes in osgVolume from 3.0 to 3.4

Alex Taylor alextaylor at gmail.com
Wed Feb 3 13:11:40 PST 2016


Robert,

Thanks. There are two main culprits the behavior change I was seeing. The
first is that for some reason, between OSG 3.0 and 3.4, I now need to
explicitly set a BlendFunc. With the exception of MIP, it looks like the
rest of osgVolume just renders with a default BlendFunc and doesn't
explictly set anything.

I found that by setting

 stateset->setAttribute(new osg::BlendFunc(GL_SRC_ALPHA,
GL_ONE_MINUS_SRC_ALPHA), osg::StateAttribute::ON);

There is a second issue I want to ask about:

It looks to me there was a change to the shaders I'm using regarding the
position of the light source between OSG 3.0 and OSG 3.4:

https://github.com/openscenegraph/osg/commit/4525ec49a386b48608fdb3107033a1c915d928e6

The change is to honor the lightDirection from GL_LIGHT0 rather than use
the eye direction as the direction of the light source.

If I wanted to get the old behavior of using the eyeDirection, is there an
easy way to go about that?

Thanks,

Alex

On Thu, Jan 28, 2016 at 3:16 PM Robert Osfield <robert.osfield at gmail.com>
wrote:

> Hi Alex,
>
> There were quite a few improvements to osgVolume between OSG-3.0 and
> OSG-3.4, both in shaders and the introduction of the new
> MultiPassTechnique.  One thing to look at with your own setup is that you
> aren't picking up on old
>  shaders such as by having your own path to old shaders.
>
> It's quite a while since I did the work on osgVolume, around two years, so
> won't be able to be specific without viewing code and being able to
> reproduce the problems you are seeing first hand.
>
> Robert.
>
> On 28 January 2016 at 15:25, Alex Taylor <alextaylor at gmail.com> wrote:
>
>> Hi,
>>
>> I'm working on upgrading the OSG version used in the product I work on.
>> When OSG is upgraded with the same client code, I'm noticing differences is
>> the way my volumes are rendered with all of the rendering algorithms that I
>> can't explain. I've fixed the parameters I'm using to define the osgVolume
>> in both versions, so it can't be a matter of picking up a different default
>> option for a parameter.
>>
>> *OSG 3.4 Fixed Function*
>> [image: osg34RayTraced.jpg]
>> *OSG 3.0 Fixed Function*
>>
>> *[image: osg30FixedFunction.jpg]*
>>
>> *OSG 3.4 Ray Traced Lit*
>>
>>
>> *[image: osg34RayTracedLit.jpg]*
>> *OSG 3.0 Ray Traced Lit*
>>
>>
>> *[image: osg30RayTracedLit.jpg]*
>>
>> *OSG 3.4 Isosurface*
>>
>> *[image: osg34Isosurface.jpg]*
>> *OSG 3.0 Isosurface*
>>
>> *[image: osg30Isosurface.jpg]*
>>
>> In the Ray Traced cases, I'm using the properties:
>>
>> AlphaFunc = 0.02;
>> SampleDensity = 0.005;
>>
>> I'm using setting the TransferFunctionProperty, so I'm using the shaders
>> to do the alpha/color mapping.
>>
>> For the FixedFunctionTechnique, I'm using AlphaFunc = 0.02, and using
>> the applyTransferFunction function to obtain an RGBA mapped osg::Image
>> buffer.
>>
>> It's very possible that the upgrade to 3.4 has changed something else in
>> my overall use of OSG elsewhere in the pipeline, unrelated to osgVolume,
>> that is causing this issue. That said, I thought i'd ask if visually anyone
>> has a guess it what might have changed between osg 3.0 and osg 3.4 that
>> might explain these visual differences.
>>
>> Thanks for your help,
>>
>> Alex
>>
>>
>>
>> _______________________________________________
>> osg-users mailing list
>> osg-users at lists.openscenegraph.org
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>
>>
> _______________________________________________
> osg-users mailing list
> osg-users at lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160203/f623216e/attachment-0002.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: osg30RayTracedLit.jpg
Type: image/jpeg
Size: 99825 bytes
Desc: not available
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160203/f623216e/attachment-0012.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: osg34Isosurface.jpg
Type: image/jpeg
Size: 65801 bytes
Desc: not available
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160203/f623216e/attachment-0013.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: osg34RayTraced.jpg
Type: image/jpeg
Size: 65527 bytes
Desc: not available
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160203/f623216e/attachment-0014.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: osg30FixedFunction.jpg
Type: image/jpeg
Size: 64837 bytes
Desc: not available
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160203/f623216e/attachment-0015.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: osg34RayTracedLit.jpg
Type: image/jpeg
Size: 142434 bytes
Desc: not available
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160203/f623216e/attachment-0016.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: osg30Isosurface.jpg
Type: image/jpeg
Size: 76932 bytes
Desc: not available
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160203/f623216e/attachment-0017.jpg>


More information about the osg-users mailing list