private void SwapGroundActor(Tuple <PhysX.RigidActor, PhysX.Shape, PhysX.TriangleMesh> groundActor) { if (_groundActor != null) { _scene.RemoveActor(_groundActor); _groundActor.Dispose(); if (!_groundShape.Disposed) { _groundShape.Dispose(); } _mesh.Dispose(); } _groundActor = groundActor.Item1; _groundShape = groundActor.Item2; _mesh = groundActor.Item3; _groundActor.UserData = this; CollisionGroup.SetCollisionGroup(CollisionGroupFlag.Ground, _groundShape); _scene.AddActor(_groundActor); }