COnfused about exception where state was changed rootnode

So I’m getting an exception that my state has been changed and that the scene graph is not properly updated for rendering so here’s my question:

I have an AppState called InGameAppState, a SimpleApplication callled MyICGame and a class called playerspaceship. In my appstate I called rootNode’s addChild method in several different methods, not only in update but only in the appstate class. PlayerSpaceship has a spatial and the spatial has a rigid body control. In playerspaceship I have methods to move the spatial using the rigidbodycontrol, with the playespaceship methods being called from ingamestate. Finally, MYICGame initializes the AppState and it does this properly. So what exactly am I doing wrong?

“not only in update but only in the appstate class”

…what does that mean? Who is calling those other methods if not update?

The exception indicates that you are modifying the scene graph from a separate thread or from outside the normal update + render cycle. We don’t have enough information to help further.

Ok sorry for the lack of clarification. The other methods are being called either as part of initialize or from actionlistneers/analog listeners.

you are apparently using multithreading, are you moving spatials from another thread ? show us exception and code snippet