iOS精灵动画帧率

时间:2012-08-22 07:42:11

标签: ios animation cocos2d-iphone sprite

我正在使用cocos2d制作“又一个iOS”游戏,我现在想知道精灵动画每秒可接受的帧数是多少?

这是一个理论上的问题,我必须绘制多少个动画帧才能让游戏看起来很好看。例如:动画专家喜欢为一秒钟的动画画32帧,而我认为4帧真的足够了。我不想为任何人都没注意到的东西牺牲RAM。那么为精灵动画制作第二帧的最佳帧数是多少? 4,6,8,12,16,20,24,32?

更新:如果我为新iPad创建高分辨率图形,那么24帧的单个精灵动画不适合2048x2048像素的纹理图集:(我不想有很多这些出于内存的概念。或者我首先想到的是一些非常错误的东西?

4 个答案:

答案 0 :(得分:4)

  

人眼及其大脑界面,即人类视觉系统,每秒可以处理10到12个单独的图像,并逐个感知它们。

[Source]

所以我会考虑比这更高的东西,以确保您的动画能够流畅地被感知。

由于我不太确定的原因,我想建议这些数字的倍数,所以我通常选择 24fps 来获得角色动画,而且往往更少,对于火球(例如)

,可能 6fps

然而,当它归结为它时,我并没有真正注意到以更高的速度运行动画的速度减慢。您可以很好地衡量以不同帧速率更新所需的时间。


答案 1 :(得分:2)

在我看来,最重要的是在这里说:

  

此事对于游戏的成功并不重要

无论人眼可以看到与否的帧速率,如果你正在为iOS制作2D游戏,最重要的是游戏很有趣,看起来很酷并且播放流畅。专注于此。

为您的动画开始使用多个帧,这使您可以轻松方便地开发(即不需要太多工作,不用担心尺寸)你会看到你玩游戏的时候如果它看起来不错,不要担心。如果没有,问题可能不是框架的数量,而是框架在特定运动中说明的内容。

至于物理讨论,24 fps是为电影选择的格式,因为它被认为是眼睛无法区分,因为它每秒捕获大约12帧。然而事实证明,可以看到以24 fps显示的视频材料与以更高帧率显示的材料之间的差异。这样做的原因是人类的大脑是聪明的,不能被幻觉欺骗。

但我的意见是,这个讨论是针对电影制作人,而不是二维游戏制作者。 24fps的动画很可能是一个巨大的矫枉过正。人们对在小屏幕上播放的游戏没有几乎相同的期望。他们将专注于可玩性,平稳性和一般感觉以及令人敬畏。如果你正在进行3D游戏,动画由3d引擎通过动态插值计算,因此动画可以(理论上)高达60fps(或者游戏的fps)。在2d中,我永远不会期待任何比开发过程更有意义的东西。

答案 2 :(得分:2)

就FPS而言,我在我自己的iPhone应用程序中使用了15FPS,它运行得很好,看起来不错,不需要占用太多的CPU时间或磁盘空间。只需找到适合您需求的价值,然后再不用担心了。使用纹理图集来满足您的动画需求是一个真正的问题。如果您使用大量非常小的纹理并且动画循环非常小(意味着一个地图集包含整个动画循环),那么您将受益于地图集(请参阅optimizing-texture-atlases)。但是,一旦您的动画达到一定的大小(宽度x高度或持续时间),那么您最好只使用支持Alpha通道的视频格式(例如,请参阅displaying-animations-in-opengl)。如果您想了解我建议的方法,请查看Load OpenGL textures with alpha channel on iOS获取Xcode项目的源代码,该项目实现从支持Alpha通道的电影文件中加载OpenGL纹理。

答案 3 :(得分:1)

它不一定归结为多个帧而是平滑。人眼没有帧速率,因为它很容易发生变化,甚至是快速变化。

詹姆斯的答案是正确的,因为每秒低于12帧的任何东西通常被认为是不稳定的。不要试图通过瞄准足够高的数字来避免波动,而是尝试几种不同的费率并选择大多数人认为仍然平稳但具有适合您预算的帧速率的费率。 (显然你也必须考虑你角色运动的节奏。)

此外,装饰性或不太重要的东西不必具有尽可能多的帧。为帧速率选择一个良好的最小公分母可以使这看起来很奇怪。