XNA Farseer - 如何真正使其发挥作用?

发布于 2024-10-25 16:38:25 字数 197 浏览 0 评论 0原文

我已将 Farseer 引擎应用到我的 2D XNA 平台游戏项目中。

我使用一块地形的图像创建了一个主体,该地形的加载和绘制效果很好,我创建了第二个主体,它是玩家,它会绘制但不执行任何操作。

如何使玩家身体对象实际工作并应用重力并与地形对象碰撞?

我到处搜索,似乎找不到很多关于如何使用 Farseer 进行基本操作的教程/指南。

I have implemented the Farseer engine into my 2D XNA platformer project.

I created a Body using an image of piece of terrain which loads and draws nicely, I created a second body which is the player and it draws but doesn't do anything.

How do I make the Player body object actually work and apply gravity and collide with the terrain object?

I have searched high and low and can't seem to find many tutorials/guides on how to do the basic stuff with farseer.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

漫漫岁月 2024-11-01 16:38:25

我相信有一个名为 BodyType 的属性或类似的属性,您需要更改它才能使身体实际发生任何事情。默认情况下,身体不参与物理模拟,因此您需要更改它才能使重力等功能发挥作用。

另一件值得注意的事情是,当引擎认为不会发生任何事情时,身体会自动进入睡眠状态,因此,如果某些事情没有按照您期望的方式运行,请尝试更改该值。

我建议您查看 Box2D 手册,因为 Farseer 的大部分内容都复制了原始的 Box2D API。显然,内存管理之类的事情因 .Net 框架的工作方式而有所不同。可能需要进行一些实验。

I believe there is a property called BodyType or something similar that you need to change for anything to actually happen to the body. The default is for the body to not take part in physics simulations, so you need to change it in order for things like gravity to work.

Another thing worth noting is that bodies will automatically go to sleep when the engine doesn't think anything is going to happen to them, so if something isn't behaving the way you would expect try changing the value.

I would recommend looking through the Box2D Manual because for the most part Farseer replicates the original Box2D API. Things like memory management, obviously, are different because of the way the .Net framework works. Some experimentation may be necessary.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文