protected override void InitializeProperties(ICollisionShape instance, Actor actor, CollisionShapeConfig config) { var box = instance as IBoxCollisionShape; var boundingBox = actor.ActorModel.LocalBoundingBox; box.Position = boundingBox.Min; box.SideLengths = boundingBox.GetSideLengths(); base.InitializeProperties(instance, actor, config); }
protected override void InitializeProperties(ICollisionShape instance, Actor actor, CollisionShapeConfig config) { var concreteShape = instance as IMeshCollisionShape; var modelActorModel = actor.ActorModel as ModelActorModel; if (modelActorModel == null) { throw new InvalidOperationException( "IMeshCollisionShape must be bound to the actor with ModelActorModel."); } concreteShape.CreateMesh(modelActorModel.Model); base.InitializeProperties(instance, actor, config); }