Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-16 Thread Robert Osfield
Hi Jannik, On 16 August 2016 at 17:44, Jannik Heller wrote: > I don't need to remove it during runtime, I remove it on exit. Obviously it's > a good idea to remove stuff on exit to avoid memory leaks. You *could* just > leave your scene as it is and let OSG clean it up

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-16 Thread Jannik Heller
Hi, > You need to think about whether you need to delete Camera's > dynamically during the applications life, you haven't explained why > you are doing this and why not keeping the Camera around is not > appropriate so I can't comment on the validity of what you are doing. > I don't need to

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-16 Thread Robert Osfield
Hi Jannik, On 16 August 2016 at 15:28, Jannik Heller wrote: > Yes you can break it that way but I'm actually talking about a different > breakage - the fact that resources get cleaned up that should *not* be > cleaned up because they're still in use. > > Consider: > > -

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-16 Thread Jannik Heller
Hi, > > The releaseGLObjects() and removeCamera() are there to make sure > resources are correctly cleaned up. If you really try you can break > it, like hiding resources from that active parts of the viewer/scene > graph that are their to clean up things > Yes you can break it that way

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-15 Thread Robert Osfield
Hi Jannik, On 15 August 2016 at 15:03, Jannik Heller wrote: > Given that there is no documentation suggesting that removing RTT camera's is > unsafe - I just assumed it was a bug :) You can't document a issue if you haven't conceived of the specific usage case that it's

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-15 Thread Jannik Heller
Hi, > > Your crash suggests otherwise :-) > Given that there is no documentation suggesting that removing RTT camera's is unsafe - I just assumed it was a bug :) As a workaround I believe that removing the Camera's children before removing the camera should fix the crash. That means

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-15 Thread Robert Osfield
Hi Jannik, On 15 August 2016 at 13:21, Jannik Heller wrote: > As far as I'm aware, in-scene graph cameras are not supposed to be subject to > threading issues and *should* be safely removable without stopping the viewer > threading. Your crash suggests otherwise :-) I

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-15 Thread Jannik Heller
Hi Robert, I know about the restriction with viewer-level cameras (add/removeSlave). I'm not using those. I'm using in-scenegraph cameras for render to texture effects. subgraph->addChild(rttCamera); As far as I'm aware, in-scene graph cameras are not supposed to be subject to threading

Re: [osg-users] Crash on exit (graphics thread removing camera)

2016-08-15 Thread Robert Osfield
Hi Jannik, A quick reply as I don't have time right now to look into the details of this particular crash. As a general note, the design of osgViewer assumes that viewer level Camera's won't be added/removed while viewer threads are running. It's easy to just call do something like:

[osg-users] Crash on exit (graphics thread removing camera)

2016-08-14 Thread Jannik Heller
Hi, I just noticed a semi-random crash on exit in my application that seems to point to a design issue in OSG. In theory a crash can happen when you remove a previously used camera from the scene graph, then modify something in the subgraph of that camera (e.g. remove a node's child). The