1

我有一个游戏,用户控制一个角色(用他的手指),我想添加功能,以便用户可以在玩游戏时记录他的动作,然后回放。问题是游戏包含物理,我想很难复制完全相同的动作。我怎样才能实现这样一个可以完美重播所有用户操作的系统?我必须记录每一次触摸然后回放所有的触摸吗?有人对这个有经验么?我将 Box2D 用于物理。

4

1 回答 1

2

“我们通过存储击键和帧号来记录回放” - box2d.org/forum/viewtopic.php?f=3&t=1982&view=next 似乎这是唯一的方法。将这些写到 PLIST 或其他东西上,你就会得到回放。此外,如果您的物理还不是确定性的(即随机),那么也只需删除随机值)

从评论:

“只需每帧(或可能每隔一帧)记录所有对象的所有位置和旋转状态,然后,当您想要回放时,只需完全跳过物理引擎,只需从记录的位置/旋转中重新定位每帧对象状态。

您需要做的就是确保回放的帧与物理运行时的持续时间相同。”

于 2012-06-20T17:27:27.317 回答