Hi Manu,

We found a bug those days in TriStripVisitor.cpp. I didn't really read your latest email, but this might be related to your precision issues:

class WriteValue : public osg::ConstValueVisitor
{
   ...
       // add those 3 lines
       virtual void apply(const Vec2d& v) { _o << v; }
       virtual void apply(const Vec3d& v) { _o << v; }
       virtual void apply(const Vec4d& v) { _o << v; }
   ...
}

class RemapArray : public osg::ArrayVisitor
{
   ...
       // add those 3 lines
       virtual void apply(osg::Vec2dArray& array) { remap(array); }
       virtual void apply(osg::Vec3dArray& array) { remap(array); }
       virtual void apply(osg::Vec4dArray& array) { remap(array); }
   ...
}

Hope this helps.

Regards,

Stephan

Emmanuel Roche schrieb:
Hi Robert,

Actually, I've noticed that the problem doesn't come from the underlying tristripper library:

instead, it seems that the indice array generated from my vertices is incorrect: I suspect that the comparison function to find if too vertices are the same or not is too precise in my case. Do you have a clear idea where this is done ? (otherwise, I will just read more code and find it...)

cheers,

Manu.



2009/11/23 Emmanuel Roche <[email protected] <mailto:[email protected]>>

    Actually, I also noticed that OSG v2.8.1 uses version 1.0 of the
    tristripper library.

    As I'm quite in an hurry, I think I will re-implement my own
    tristripvisitor with the latest version of tristripper and check
    if this makes a difference. Will let you know what's the result of
    this test.

    But I believe this could really be a generic issue (it happens
    with all the models I tested) and thus would mean many people are
    currently using "not so well tri-stripped" geometries if they use
    this optimiser feature !  (it is the case for instance in the
    OSGExp export plugin for 3DS max as I've noticed this issue there
    for the first time).

    regards,
    Manu.



    2009/11/23 Robert Osfield <[email protected]
    <mailto:[email protected]>>

        Hi Manu,

        If the tristripper doesn't connect the triangles together well
        then it
        can result on few tristrips and lots of unconnected traingles
        that it
        has to put into a single list of triangles to avoid lots of
        separate
        primitive calls.

        As to why your model is not being stripped well I can't say.
         We've
        used 3rd party code to do the tri-stripping so I'm not best
        placed to
        answer the low level questions, but... the original author of
        the cdoe
        Tanguy Fautre is now an OSG user and I believe still on the
        list so
        perhaps he'll be able to chip in ;-)

        Robert.

        On Mon, Nov 23, 2009 at 11:08 AM, Emmanuel Roche
        <[email protected] <mailto:[email protected]>>
        wrote:
        > Hi everyone,
        >
        > I have a strange problem with the TryStripVisitor:
        >
        > When I use it on a model (with about 6000 triangles,
        described as TRIANGLES
        > [thus using 18000 vertices]) I get trip strip primitive sets
        indeed.... BUT
        > actually I get a few TRIANGLE_STRIP primitive sets with 4
        vertices in each,
        > and then a single big TRIANGLES primitive set with about
        17950 vertices !!!!
        >
        > So, most of the model is just not stripped at all ! any idea
        what I could be
        > doing wrong ???
        >
        > Moreother, I've noticed that the geometry is then
        transformed as an indexed
        > geometry... correct me if I'm wrong but indexed geometries
        are slower that
        > simple vertices ordered arrays. If there a way to switch
        this or am I on my
        > own on this ?
        >
        > Regards,
        > Manu.
        >
        >
        >
        > _______________________________________________
        > osg-users mailing list
        > [email protected]
        <mailto:[email protected]>
        >
        
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
        >
        >
        _______________________________________________
        osg-users mailing list
        [email protected]
        <mailto:[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

--
-------------------------------------
Stephan Kussmaul
Geschaeftsfuehrender Gesellschafter / Managing Director
TrianGraphics GmbH
Schoenhauser Allee 45
10435 Berlin
Germany
Tel: +49 (0)30 48495565   FAX: +49 (0)30 48495581
Email: [email protected]
Web: www.triangraphics.de
-------------------------------------
Sitz der Gesellschaft / Corporate Headquarters:
TrianGraphics GmbH, Berlin
Registereintragung / Registration:
Amtsgericht Berlin-Charlottenburg HRB 93807 B
Geschaeftsfuehrer / Managing Directors:
Stephan Kussmaul, Mirco Nierenz, Volker Walkiewicz

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to