Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xna Farseer Physics中是否提供BodyDef/FixtureDef?_Xna_Farseer - Fatal编程技术网

Xna Farseer Physics中是否提供BodyDef/FixtureDef?

Xna Farseer Physics中是否提供BodyDef/FixtureDef?,xna,farseer,Xna,Farseer,我已经搜索了Farseer的所有文档,但找不到如何在我的项目中使用BodyDef/FixtureDef。当它们从Box2D移植过来时,是否已重命名为其他名称 我主要关心的是完成以下类似的工作: FixtureDef fdef; fdef.isSensor = true; 虽然Farseer物理学起源于Box2D,但它并不是它的确切端口。它有一些相似之处,但有自己的方式(我想更熟悉C#程序员)。它不使用Def类。我认为以下两个例子是等效的: C++ C# 从主体中可以看出,主要区别在于在实际实例

我已经搜索了Farseer的所有文档,但找不到如何在我的项目中使用BodyDef/FixtureDef。当它们从Box2D移植过来时,是否已重命名为其他名称

我主要关心的是完成以下类似的工作:

FixtureDef fdef;
fdef.isSensor = true;

虽然Farseer物理学起源于Box2D,但它并不是它的确切端口。它有一些相似之处,但有自己的方式(我想更熟悉C#程序员)。它不使用Def类。我认为以下两个例子是等效的:

C++

C#

从主体中可以看出,主要区别在于在实际实例上而不是在def类上创建之后设置属性

Farseer Physics还利用方便的工厂类。有关更多信息,请参阅文档

// create a body
b2BodyDef bodyDef;
bodyDef.type = b2_dynamicBody;    
bodyDef.position.Set(-10, 20);
b2Body* body = world->CreateBody(&bodyDef);

// create a shape
b2CircleShape circleShape;
circleShape.m_radius = 0.5f;

// create a fixture
b2FixtureDef myFixtureDef;
myFixtureDef.shape = &circleShape;
body->CreateFixture(&myFixtureDef);
// create a body
var body = world.CreateBody();
body.BodyType = BodyType.Dynamic;
body.Position = new Vector2(-10, 20);

// create a shape
var circleShape = new CircleShape(0.5f);

// create a fixture
var fixture = body.CreateFixture(circleShape);