Hi Robert,

No need to reproduce, I found the problem. In the overloaded copy-constructor of my subclass I didn't call Drawable's copy constructor or copy the state set manually. I reuse a lot of my text objects so I probably never saw the originals which were the only ones working w.r.t. depth test and polygon mode. Simple, stupid error, but glad I found it. Guess those hours of sleep did help after all...better late than never. Sorry to have taken your time.

Thanks,
Andreas

Robert Osfield wrote:

HI Andreas,

I'm curious about the problem with using your own StateSet. Could you try modifying osgfadetext to reproduce the problem?

Robert.

On 10/4/06, * Andreas Ekstrand* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Robert,

    Actually I don't touch the state set in my subclass, I just apply
    a new
    state set from outside. So I don't see why using a subclass should
    matter in this case. However, I decided to use getOrCreateStateSet
    and
    just work in the Text's existing state set. This way it works fine.

    By the way, I discovered that I have the same problems with overriding
    polygon mode to fill, causing the text to disappear if a state set
    above
    is switched to wireframe. Just a proof of that it is a general
    state set
    problem and not specific to depth test. Anyway, I get around both the
    problems by modifying the existing state set instead of creating
    one of
    my own.

    /Andreas


    Robert Osfield wrote:

    > Hi Andreas,
    >
    > osgText::Text does some non standard management osg the attached
    > StateSet to cover cases where no StateSet is manually attached,
    this
    > is done to  help state sorting and the approrpriate default
    binning of
    > osgText::Text.  For 1.2 this behavior changed a bit, making it more
    > flexible in fact, such that you can now set your own StateSet where
    > previously it forcably used StateSet's managed by Font.
    >
    > I suspect in your subclass you are playing around a bit with the
    > StateSet in a way that osgText::Text hasn't kept track off.  You
    could
    > either tweak you subclass to play better with the mechanism in
    > osgText::Text, or just attach a StateSet to the Geode above the Text
    > drawable.
    >
    > Robert.
    >
    > On 10/3/06, *Andreas Ekstrand* < [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    > <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>> wrote:
    >
    >     Robert,
    >
    >     > Well spotted, I added a ClusterCullingCallback to the text
    so the it
    >     > disappears when it goes round the other side of the
    earth.  Without
    >     > this the example looks really odd.
    >
    >     Ok, with the ClusterCullingCallback turned off everything
    looks as I
    >     expected it to.
    >
    >     In my own code I have discovered that everything works fine
    if I use
    >     getOrCreateStateSet on the Text object to turn off depth
    test. If I
    >     create my own state set with depth test turned off and apply
    that
    >     state
    >     set to my Text, it doesn't work. Even if I first apply my own
    >     state set
    >     to the Text object and then use getOrCreateStateSet it doesn't
    >     work. So
    >     it seems like I'm replacing an existing state set with one that
    >     doesn't
    >     do the job properly. Is it generally a bad idea to replace the
    >     state set
    >     directly on an osgText::Text? In your example your state set
    is on the
    >     group above.
    >
    >     Actually I'm using a class of my own, inheriting from
    >     osgText::Text. If
    >     I use osgText::Text directly it seems to work. So it's probably
    >     something fishy with this inheritance, even if my own class
    is very
    >     simplistic, only overriding the constructor and
    copy-constructor, both
    >     calling osgText::Text(). Anyway, I can always use the
    >     getOrCreateStateSet approach, even if it seems unnecessary.
    But I do
    >     wonder why this is, seems too basic to be a bug somewhere in
    osg...
    >
    >     > You cannot see what is not there?  Get some sleep!! ;-)
    >
    >     Yeah, sounds serious, doesn't it? :-) Off to get some shut-eye
    >     right now...
    >
    >     /Andreas
    >
    >     --
> ________________________________________________________________________
    >     Andreas Ekstrand
    >     Remograph
    >     Rekrytgatan 10
    >     SE-582 14 Linköping
    >     SWEDEN
    >     Website: http://www.remograph.com
    >     E-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >
    >     _______________________________________________
    >     osg-users mailing list
    >     [email protected]
    <mailto:[email protected]>
    <mailto:[email protected]
    <mailto:[email protected]>>
    >     http://openscenegraph.net/mailman/listinfo/osg-users
    >     http://www.openscenegraph.org/ <http://www.openscenegraph.org/ >
    >
    >
    >------------------------------------------------------------------------
    >
    >_______________________________________________
    >osg-users mailing list
    > [email protected] <mailto:[email protected]>
    >http://openscenegraph.net/mailman/listinfo/osg-users
    >http://www.openscenegraph.org/ <http://www.openscenegraph.org/>
    >


    --
    ________________________________________________________________________
    Andreas Ekstrand
    Remograph
    Rekrytgatan 10
    SE-582 14 Linköping
    SWEDEN
    Website: http://www.remograph.com
    E-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>

    _______________________________________________
    osg-users mailing list
    [email protected] <mailto:[email protected]>
    http://openscenegraph.net/mailman/listinfo/osg-users
    http://www.openscenegraph.org/ <http://www.openscenegraph.org/>


------------------------------------------------------------------------

_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/



--
________________________________________________________________________
Andreas Ekstrand
Remograph
Rekrytgatan 10
SE-582 14 Linköping
SWEDEN
Website: http://www.remograph.com
E-mail: [EMAIL PROTECTED]

_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to