public void AddToScene(CPhyScene scene) { if (scene == mScene) { return; } if (mScene != null) { mScene.Actors.Remove(this); } mScene = scene; if (mScene != null) { mScene.Actors.Add(this); } if (scene != null) { SDK_PhyActor_AddToScene(CoreObject, scene.CoreObject); } else { SDK_PhyActor_AddToScene(CoreObject, CPhyScene.GetEmptyNativePointer()); } }
public bool AddTickScene(CPhyScene scene) { foreach (var i in TickScenes) { if (i.SceneId == scene.SceneId) { return(false); } } TickScenes.Add(scene); return(true); }
public CPhyScene CreateScene(Guid sceneId, CPhySceneDesc desc) { var ptr = SDK_PhyContext_CreateScene(CoreObject, desc.CoreObject); if (ptr.GetPointer() == IntPtr.Zero) { return(null); } var ret = new CPhyScene(ptr, sceneId); ret.Desc = desc; return(ret); }