Hi Farshid,

On 17 September 2012 23:43, Farshid Lashkari <[email protected]> wrote:
> Hi Robert,
>
> I just discovered a problem with the patch. When a color is specified with
> BIND_OVERALL, then it will not be properly applied in the non-fast path
> case.
>
> What's happening is osg::Geometry is calling
> "arrayDispatchers.dispatch(BIND_OVERALL,0)" outside the Begin/End calls. The
> GLBeginEndAdapter class interprets this as no color being assigned. I was
> able to solve this by making the
> "arrayDispatchers.dispatch(BIND_OVERALL,0)" call immediately after each call
> to "arrayDispatchers.Begin" in osg::Geometry.
>
> I'm not sure if this is the cleanest solution. Do you have any suggestions?

I've done a quick review and I'm inclined to think that the
GLBeginEndAdapter needs to have another two flags that specify whether
the _overallNormal and _overallColor have been set and if not then
don't call _state.Normal(..) etc.

Thoughts?
Robert.
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to