Fra*_*sco 6 iphone farseer xamarin.ios monogame
我已成功使用Farseer使用XNA开发我的一款游戏.游戏就像Windows和WP7中的魅力一样.我目前正致力于使用Monotouch和Monogame在IOS中移植我的游戏.我已成功编译和使用Farseer,而不是我的游戏的第一个版本移植到Monotouch和Monogame.一切都很好,除了表演.iPhone设备上的游戏运行速度要慢得多.我做了一些代码调查,似乎主要的瓶颈是Farseer.当它需要连接一个固定装置(圆圈)来管理超过5-6个实体时,它变得非常慢.
阅读文档我注意到要调整Farseer我可以更改Setting static class中的值:
性能
为了充分利用引擎,您应该尝试遵循以下指南:
启用睡眠 睡眠使您可以拥有世界上大量的身体.它还可以增加发动机的稳定性,因为一堆物体中的小运动不会在堆叠中扩散.睡眠的身体几乎没有头顶,因此建议启用它.
禁用CCD 连续碰撞检测可防止隧道效应,但会降低性能.如果你没有隧道问题,你应该一起禁用CCD.
最小化位置和速度迭代 的次数大量的迭代使得引擎以性能为代价更加稳定.您应该调整值以适合您的游戏.
坏消息是如果我改变那个类的任何值,似乎什么也没发生.我尝试更改值如下:
EnableDiagnostics = false
VelocityIterations = 6
PositionIterations = 2
ContinuousPhysics = false
Run Code Online (Sandbox Code Playgroud)
我也尝试使用较低的值,如VelocityIterations = 1,但似乎没有任何改变....
任何人都已更改设置类值以提高性能?
好的,
我已经做到了这一点。主要瓶颈与 Farseer 无关。一旦我解决了与我的“糟糕代码”相关的所有性能问题,像上面描述的那样调整 Farseer 就可以很好地获得 5-10% 的性能。
我的游戏是用 XNA 编写的,已成功移植到 iOS 和 Android,具有 monotouch 和 mono4android。
| 归档时间: |
|
| 查看次数: |
1063 次 |
| 最近记录: |