本文整理汇总了C#中FarseerPhysics.CreateBody方法的典型用法代码示例。如果您正苦于以下问题:C# FarseerPhysics.CreateBody方法的具体用法?C# FarseerPhysics.CreateBody怎么用?C# FarseerPhysics.CreateBody使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FarseerPhysics
的用法示例。
在下文中一共展示了FarseerPhysics.CreateBody方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateCollisionBody
/// <summary>
/// Create and attach a new collision body to this Entity.
/// </summary>
/// <param name="world">CollisionWorld instance.</param>
/// <param name="type">Type of collision body. Dynamic bodies receive responses, kinematic bodies do not. Static bodies cannot move.</param>
/// <param name="flags">Flags.</param>
public void CreateCollisionBody(Physics.Dynamics.World world, Physics.Dynamics.BodyType type, CollisionFlags flags = CollisionFlags.Default)
{
if (CollisionBody != null) throw new ArgumentException("CreateCollisionBody called on Entity where collision body already exists.");
CollisionWorld = world;
Physics.Dynamics.Body body = world.CreateBody();
body.BodyType = type;
body.Position = m_position * GameEnvironment.k_physicsScale;
if (!VisualRotationOnly) body.Rotation = m_rotation;
body.LinearVelocity = m_velocity * GameEnvironment.k_physicsScale;
body.FixedRotation = flags.HasFlag(CollisionFlags.FixedRotation);
body.SleepingAllowed = !flags.HasFlag(CollisionFlags.DisableSleep);
body.IsBullet = flags.HasFlag(CollisionFlags.IsBullet);
body.UserData = this;
CollisionBody = body;
}