Thanks Colin, changes merged and submitted to svn/trunk and OSG-2.8 branch.

I made one small tweak and that was to use != DYNAMIC as the test, i.e.:

        if (!geometryContainsSharedArrays(*geom) &&
                      geom->getDataVariance()!=osg::Object::DYNAMIC &&
                      isOperationPermissibleForObject(geom))
                {
                    geometryDuplicateMap[geom].push_back(geom);
                }


I trust this works fine for you.

Cheers,
Robert.



On Wed, Jul 15, 2009 at 4:00 PM, Colin
McDonald<[email protected]> wrote:
> Hi Robert,
>
> The Optimizer Merge Geometry visitor is always merging geometries,
> even if they have had DataVariance DYNAMIC explicitly specified.  Then
> when an application attempts to dynamically update the geometry in the
> frame loop the primitive sets and data arrays are no longer as
> expected, leading to display and/or memory corruption.
>
> Attached is a simple fix.  It is for the svn trunk, but the fix may
> also be a candidate for 2.8.x.
>
> Regards
>
> Colin McDonald
>
> _______________________________________________
> osg-submissions mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
>
>
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to