[osg-users] Limit on number of children ?

Gordon Tomlinson gordon at gordon-tomlinson.com
Fri May 2 05:51:00 PDT 2008


HI

 

Try creating a group and adding the Moon and Sun geodes to that and then add
this new group to your Root

 

Personally I never give a  geode to the root node (

 

__________________________________________________________
Gordon Tomlinson 

Email   :  <mailto:gordon at GordonTomlinson.com> gordon at GordonTomlinson.com
YIM/AIM : gordon3dBrit
MSN IM  :  <mailto:gordon3dBrit at 3dscenegraph.com>
gordon3dBrit at 3dscenegraph.com
Website :  <http://www.vis-sim.com> www.vis-sim.com
<http://www.gordontomlinson.com> www.gordontomlinson.com 

__________________________________________________________

 

From: osg-users-bounces at lists.openscenegraph.org
[mailto:osg-users-bounces at lists.openscenegraph.org] On Behalf Of Vincent
Bourdier
Sent: Friday, May 02, 2008 8:45 AM
To: OpenSceneGraph Users
Subject: Re: [osg-users] Limit on number of children ?

 

Thanks for help,
a bit of code will be more clear so this is something approaching :

osg::Geode* createMoon(std::string texturePath);
osg::Geode* createSun(std::string texturePath);

and in the main:

    _root->addChild(createSkyMap

(config->Skypath));    
    _root->addChild(createSunLight(_root.get())); 
    _root->addChild(earthGroup);
...
    _root->addChild(createSun(...))   //ok
   _root->addChild(createMoon(...))  //error

but if I do this : 

    _root->addChild(createSkyMap(config->Skypath));    
    _root->addChild(createSunLight(_root.get())); 
    _root->addChild(earthGroup);
...
    //_root->addChild(createSun(...))  
   _root->addChild(createMoon(...))  //ok

So I don't understand what can be the problem...
I if put createSun() or createMoon() it work well, but if I put the two, it
crashes...

I hope it's more clear now.

Thanks,
   Vincent

 

2008/5/2 Paul Melis <paul at science.uva.nl>:

Vincent Bourdier wrote:
> Somewhere in my code, I make some root->addChild(functionCreateGeode());
>
> but when I added a last one, OSG crash on rendering, pretending a vector
> error.
> I've verified, it do not depend on the Geode, because it work if I
> remove an "addChild()" before doing mine...

Not sure what you mean here, showing the relevant code might help.


> Is there a limit in the number of child ? or is it impossible to add 2
> Geode (or more) on the same group ?

A Group node keeps its children nodes using a std::vector, which doesn't
have any practical length limit (other than available memory and an
integer counter of the number of items which might overflow).

Without seeing your actual code I'd guess this has something to do with
not using ref_ptr where you should.

Paul
_______________________________________________
osg-users mailing list
osg-users at lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20080502/82643719/attachment.htm 


More information about the osg-users mailing list