When you release a
CC3Layer), and allow it to deallocate, it will clean up after itself. You can then re-instantiate the layer or scene with the "play again" configuration.
Be sure that you are actually properly releasing everything, and are not keeping references to the layer or scene in a "levels" array somewhere, etc. You might insert log strings in the
dealloc method of your custom scene or layer classes to track their deallocation.
The spinning globe HUD window in the
CC3DemoMashUp demo app is an example of a scene that is repeatedly shut down and re-instantiated. In addition, the
CC3Demo3DTiles demo also demonstrates rebuilding scenes.