2011-04-11 84 views
0

我目前在iPhone上使用box2d与cocos2d。我设置了一个相当复杂的场景,我希望最终用户能够将它作为视频的一部分记录下来。我已经使用AVAssetWriter等实现了一个录音机,并设法从OpenGL像素数据中获取录制帧。如何“渲染”iPhone上的Box2D场景

但是,这种录像似乎a)减慢了应用程序的一点,但更重要的是b)每秒最多只记录几帧。

这使我想到了渲染Box2D场景的想法,手动触发蜱并且每次都会抓取图像。但是,dt可能是一个问题。

只是想知道如果有人已经这样做,或者如果任何人有更好的想法?

回答

1

一个很好的解决方案,我猜是使用像ScreenFlow或类似的屏幕录像机解决方案...

+0

这样的应用程序是否存在iOS? – 2011-04-11 16:12:51

+0

我这么认为,但是这样的视频录制对于飞行压缩需要高CPU,这些设备有点弱。当你可以在模拟器上做它们... – 2011-04-11 16:17:16

+0

谢谢文森特。这个想法是让最终用户随时随地记录并分享到他们的Youtube。我应该在最初的问题中更清楚地说明 - 我现在编辑它。 – 2011-04-11 20:53:18

0

我觉得你的Box2D的是一个好主意......不过,你会想用一个固定时间步。如果你使用dt,物理模拟中的步骤会变大,而box2d将会变得不稳定和不安。

http://gafferongames.com/game-physics/fix-your-timestep/

帧速率将会受到冲击,但你会得到每帧。我不认为你能够记录每一帧,仍然保持稳定的帧率 - 这似乎是要求很多硬件。

+0

感谢您的提示mfredrickson。我已经检查了链接,这肯定会成为一个工作解决方案的组成部分。 – 2011-04-11 20:55:46