Hi Mike,

Your comments about ArrayDispatcher and slow paths was most
illuminating.  I had a look at the ArrayDispatchers.cpp and how it
integrates with the GLBeginEndAdapter that is used as a fallback when
slow paths have to be used and found that it didn't contain the
handling of Vec3d's so I've added this and checked it into svn/trunk.
With this change your edges3.osg model works with the vertex data
passed in as a Vec3dArray.

Could you try out svn/trunk and let me know how you get on.

Cheers,
Robert.

On Fri, Oct 21, 2011 at 1:26 PM, Mike Connell <[email protected]> wrote:
> Hi Filip,
>
> Thanks for your comments. It appears the warnings are indeed from the
> TriangleFunctor which is used by the DriveManipulator & TerrainManipulator.
> As we don't use those pieces of code in this application I don't think they
> are the problem here.
>
> I've dug a little deeper in the rendering code and found a solution. The
> geometry object which isn't working has PER_PRIMITIVE and OVERALL bindings
> and so was shunted off the fast path. I now suspect that there is a bug
> within the ArrayDispatcher code where the Vec3d vertex data is discarded.
> However, if I update the geometry so that fast paths are used, everything
> works as expected.
>
> I am going to take the easy road and update our code to stay on the fast
> path route, but in case anyone else has problems with double precision
> geometry, the non fast path rendering code may be the culprit.
>
> best wishes
>
> Mike
>
> beleive that the problem lies within the ArrayDispatcher code, but
>
> On 18 October 2011 17:11, Filip Arlet <[email protected]> wrote:
>>
>> Hi,
>>
>> PolytopeIntersector uses osg::TriangleFunctor< T > and as you can see in
>> code (TriangleFunctor header).
>> Constructor called with Vec*d does nothing (prints warning).
>> In member function TriangleFunctor::drawArrays OSG is accesing Array, that
>> doesnt exists - and that's where the problem is I think. It looks like it's
>> unfinished. For my app using double I created TriangleFunctorDouble < T > by
>> replacing every float type variable to double type, but it's more like a
>> workaround than a sollution.
>>
>> Cheers,
>> Filip
>>
>> ------------------
>> Read this topic online here:
>> http://forum.openscenegraph.org/viewtopic.php?p=43449#43449
>>
>>
>>
>>
>>
>> _______________________________________________
>> osg-users mailing list
>> [email protected]
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to