本文整理汇总了C#中FarseerPhysics.Dynamics.Fixture.CreateProxies方法的典型用法代码示例。如果您正苦于以下问题:C# Fixture.CreateProxies方法的具体用法?C# Fixture.CreateProxies怎么用?C# Fixture.CreateProxies使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FarseerPhysics.Dynamics.Fixture
的用法示例。
在下文中一共展示了Fixture.CreateProxies方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateFixture
/// <summary>
/// Creates a fixture and attach it to this body.
/// If the density is non-zero, this function automatically updates the mass of the body.
/// Contacts are not created until the next time step.
/// Warning: This function is locked during callbacks.
/// </summary>
/// <param name="shape">The shape.</param>
/// <param name="density">The density.</param>
/// <returns></returns>
public Fixture CreateFixture(Shape shape, float density)
{
Debug.Assert(World.IsLocked == false);
if (World.IsLocked)
{
return null;
}
Fixture fixture = new Fixture(this, shape, density);
if ((Flags & BodyFlags.Active) == BodyFlags.Active)
{
BroadPhase broadPhase = World.ContactManager.BroadPhase;
fixture.CreateProxies(broadPhase, ref Xf);
}
FixtureList.Add(fixture);
fixture.Body = this;
// Adjust mass properties if needed.
if (fixture.Density > 0.0f)
{
ResetMassData();
}
// Let the world know we have a new fixture. This will cause new contacts
// to be created at the beginning of the next time step.
World.Flags |= WorldFlags.NewFixture;
if (World.FixtureAdded != null)
{
World.FixtureAdded(fixture);
}
return fixture;
}