gpt4 book ai didi

iphone - 更改 Farseer 物理引擎设置以提高性能

转载 作者:行者123 更新时间:2023-12-03 18:47:19 24 4
gpt4 key购买 nike

我已成功使用 Farseer 使用 XNA 开发了我的一款游戏。该游戏在 Windows 和 WP7 中运行起来就像一个魅力。我目前正在使用 MonotouchMonogame 将我的游戏移植到 IOS 中。我还成功地在通过 Monotouch 和 Monogame 移植的游戏的第一个版本中编译并使用了 Farseer。除了表演之外,一切都很好。游戏在 iPhone 设备上运行速度要慢得多。我做了一些代码调查,看来主要的瓶颈是 Farseer。当它必须管理超过 5-6 个带有单个固定装置的物体(圆圈)时,它会变得非常慢。

阅读文档时,我注意到要调整 Farseer,我可以更改设置静态类中的值:

性能

为了充分利用引擎,您应该尝试遵循以下准则:

启用 sleep sleep 使你能够在世界上拥有大量的 body 。它还可以提高发动机的稳定性,因为一堆物体中的小运动不会在堆栈中扩散。 sleep 主体的开销很小,因此建议启用它。

禁用 CCD连续碰撞检测可以防止隧道传输,但会牺牲性能。如果隧道传输没有问题,则应完全禁用 CCD。

最小化位置和速度迭代次数大量的迭代使引擎更加稳定,但牺牲了性能。您应该调整这些值以适合您的游戏。

坏消息是,如果我更改该类的任何值,似乎什么也不会发生。我尝试按如下方式更改值:

EnableDiagnostics = false
VelocityIterations = 6
PositionIterations = 2
ContinuousPhysics = false

我也尝试过使用较低的值,例如 VelocityIterations = 1,但似乎没有任何变化......

有人已经更改了设置类值以提高性能吗?

最佳答案

好的,

我已经做到了。主要瓶颈与 Farseer 无关。一旦我解决了与我的“糟糕代码”相关的所有性能问题,像上面描述的那样调整 Farseer 就可以很好地获得 5-10% 的性能。

我的游戏是用 XNA 编写的,已成功移植到 iOS 和 Android,具有 monotouch 和 mono4android。

关于iphone - 更改 Farseer 物理引擎设置以提高性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8293696/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com