public virtual void RemoveAndDestroyAllChildren()
{
foreach ( SceneNode sn in childNodes.Values )
{
sn.RemoveAndDestroyAllChildren();
// destroy but prevent removing from internal list yet
this.RemoveChild( sn, false );
sn.Creator.DestroySceneNode( sn, false );
}
// finish removal
childNodes.Clear();
NeedUpdate();
}