Ejemplo n.º 1
0
 public BoxShape(float diameterX, float diameterY, PhysicsParams p)
 {
     diameterX           *= 2;
     diameterY           *= 2;
     Width                = diameterX;
     Height               = diameterY;
     Body                 = BodyFactory.CreateRectangle(PhysConfig.world, diameterX, diameterY, p.Density);
     Body.Position        = new Vector2(p.X, p.Y);
     Body.IsBullet        = !p.CanSleep;
     Body.Awake           = !p.IsSleeping;
     Body.Rotation        = p.Angle;
     Body.AngularDamping  = p.AngularDamping;
     Body.AngularVelocity = p.AngularVelocity;
     Body.FixedRotation   = p.FixedRotation;
     Body.LinearDamping   = p.LinearDamping;
     Body.LinearVelocity  = new Vector2(p.LinearVelocityX, p.LinearVelocityY);
     Body.Friction        = p.Friction;
     Body.Restitution     = p.Restitution;
     Body.IsStatic        = p.Static;
 }
Ejemplo n.º 2
0
 public CapsuleShape(float height, float radius, PhysicsParams p)
 {
     height              *= 2;
     radius              *= 2;
     Width                = radius;
     Height               = height + radius;
     Body                 = BodyFactory.CreateCapsule(PhysConfig.world, height, radius, p.Density);
     Body.Position        = new Vector2(p.X, p.Y);
     Body.IsBullet        = !p.CanSleep;
     Body.Awake           = !p.IsSleeping;
     Body.Rotation        = p.Angle;
     Body.AngularDamping  = p.AngularDamping;
     Body.AngularVelocity = p.AngularVelocity;
     Body.FixedRotation   = p.FixedRotation;
     Body.LinearDamping   = p.LinearDamping;
     Body.LinearVelocity  = new Vector2(p.LinearVelocityX, p.LinearVelocityY);
     Body.Friction        = p.Friction;
     Body.Restitution     = p.Restitution;
     Body.IsStatic        = p.Static;
 }