2010-05-18 51 views
0

内的游戏是否有可能增加一个功能记录你的游戏内的游戏没有进食过多的内存?iPhone的SDK - 记录游戏

我希望让用户有游戏保存为某种形式的视频文件如果多数民众赞成的可能?

//编辑 - 让事情更容易更具现代感// 这个想法是,用户可以使用应用程序来更改预先动画场景中的纹理,并在完成后可以将其导出到视频。

谢谢

回答

0

您的游戏是确定性的吗?如果是,那么你应该能够记录用户输入。然后回放你只需运行游戏并提供记录的输入而不是实时输入。

根据游戏中最难的部分将使其成为确定性的类型。您需要将所有种子捕获到随机数生成器,以及从生成器获取数字的次数,以便获得完全相同的结果。由于我们谈论的是单核心,所以您不必过多担心评估的顺序,但确保它的定义良好。

其次,如果你使用MVC(模型视图控制器)设置将是最简单的,那么所有你需要的是一个播放器,如有必要,记录时间戳的输入实时用户控制器。注意:根据您的操作方式,使用帧数而不是实际时间可能更容易。当玩家击中记录时,收集游戏的整个状态,并开始捕捉玩家输入。

要导出视频所有你需要做的就是加载启动状态再​​现帧,然后捕获框架在整个播放记录迭代。如果你的游戏中有时间基础的东西,你将不得不摆脱时钟,以便消除视频捕捉所花费的时间。或者,您可以使用帧数记录基于时间的事件,以便它发生在正确的帧上,但是您必须确保不同的处理顺序不会改变游戏。

第二个选择是去基于事件,只记录游戏中发生的每一个事件然后在回放过程中,在他们最初发生的帧中触发这些事件。这需要捕获更多的数据,因为你没有使用游戏模拟一切(你仍然需要做动画等),但可能会改善渲染时间,因为你没有运行整个游戏。

+0

但问题是,我不能够允许用户将其保存为一个单独的视频文件? (例如他们可以在他们的电脑上播放) – Dave 2010-05-18 16:29:27

+0

我无法想起曾经看过以原始视频格式实现游戏录制的游戏。它在CPU编码能力和存储空间方面太昂贵了。在这些方面,iPhone肯定太贵了。您需要记录这些动作并在某种模拟器中播放它们。 – DougW 2010-05-18 21:31:37

+0

我见过允许上传到YouTube的人,如果这有所作为? – Dave 2010-05-18 23:40:26