2012-08-22 3 views
1

나는 cocos2d로 "또 다른 iOS"게임을 만들고 있으며, 이제는 스프라이트 애니메이션을위한 초당 허용되는 프레임 수가 충분한 지 궁금하십니까?iOS Sprite 애니메이션 프레임 속도

이것은 게임을 멋지게 보이게하기 위해 얼마나 많은 애니메이션 프레임을 그려야하는지에 대한 이론적 인 질문입니다. 예를 들어, 애니메이션 전문가는 1 초 동안 32 프레임을 그리는 것을 좋아하지만 4 프레임이면 충분하다고 생각합니다. 아무도 알지 못하는 것을 위해 RAM을 희생하고 싶지 않습니다. 스프라이트 애니메이션의 초 동안 가장 좋은 프레임 수는 얼마입니까? 4,6,8,12,16,20,24,32?

업데이트 : 새로운 iPad 용 고해상도 그래픽 다음 다음 24 프레임의 단일 스프라이트 애니메이션은 최대 2048x2048 픽셀의 텍스처 아틀라스 내부에 맞지 않는 :(내가 많이하고 싶지 않아요을 만들 경우 RAM에 대한 concers 중이. 아니면 처음부터 여기에 매우 뭔가 잘못 생각하고있어?

답변

3

인간의 눈과 초당 10 ~ 12 별도의 이미지를 처리 ​​할 수의 뇌 인터페이스, 인간의 시각 시스템, 지각 그들 각각.

[Source]

그래서 나는 애니메이션이 원활하게 감지 될 수 있도록 이보다 더 높은 것으로 생각합니다.

나는이 숫자의 배수를 제안 할, 정말 모르겠어요 이유

, 그래서 나는 보통 A의 아마 6fps까지 캐릭터 애니메이션을 자주과 더 적은을 위해 24fps로 갈 불 덩어리 (예를 들어)

그러나이 문제가 발생하면 더 빠른 속도로 애니메이션을 실행하면 속도가 느려지지 않는다. 다른 프레임 속도로 업데이트하는 데 걸리는 시간을 측정하는 것이 좋습니다.


+0

글쎄, 새로운 iPad 용 고해상도 그래픽을 만든다면 24 프레임의 단일 스프라이트 애니메이션이 2048x2048 픽셀의 텍스처 아틀라스 안에 들어 가지 않습니다. (그리고 나는 이것들을 많이 가지고 싶지 않습니다. RAM을위한 콘서트 나 처음에 뭔가 잘못 생각한 것입니까? – clops

+1

아트를 재사용하여 애니메이션에 필요한 아트웍을 크게 줄이는 방법을 고안했습니다. 예를 들어 머리 하나만 들고 각 프레임의 다른 위치 사이를 움직일 수 있습니다. 예를 들어. 자세한 내용은 [이 질문] (http://stackoverflow.com/questions/7936003/converting-flash-animation-to-cocos2d)을보십시오. 애니메이션을 위해 * flash *를 사용했지만 자신의 상황과 비슷한 것을 찾을 수 있다면 개념은 동일해야합니다. –

1

반드시 프레임의 수는 아니지만 매끄러움을 의미합니다. 인간의 눈에는 변화가 일어나기 쉬운 정도의 프레임 속도가없고 심지어 빠른 속도도 있습니다.

일반적으로 초당 12 프레임 미만의 화면이 고르지 않은 것으로 정답은 정확합니다. 충분히 높은 수를 목표로하여 고르지 않게하려고하는 대신 여러 가지 다른 속도를 시도하고 대부분의 사람들이 여전히 부드럽다고 생각하지만 예산에 맞는 프레임 속도를 갖는 것을 선택하십시오. (분명히 당신은 또한 예를 들어 캐릭터 움직임의 페이싱을 고려해야합니다.)

또한 장식용이거나 중요하지 않은 것들은 많은 프레임을 가질 필요가 없습니다. 프레임 속도에 대한 가장 낮은 공통 분모를 선택하면 이상하게 보이지 않습니다. 제 생각에는 여기에 말을 가장 중요한 것은에서

2

은 다음과 같습니다

이 문제는 게임의 성공을 인간의 눈으로 볼 수 없거나

무엇이든 프레임 속도 필수적인되지 않습니다 , iOS 용 2D 게임을 만드는 경우 가장 중요한 것은 게임이 재미 있고 멋지며 부드럽게 재생된다는 것입니다. 그것에 집중하십시오.

시작 밖이 잘 보이는 경우에 당신이 당신의 게임을 재생할 때 간단하고 개발하기에 편리하게 애니메이션의 프레임 수 (즉, 너무 많은 작업은, 크기에 대한 걱정은) 당신은 볼 수 없습니다로 또는 아닙니다, 걱정하지 마십시오. 그렇지 않은 경우, 문제는 프레임의 양이 아닐 수도 있지만 특정 동작에서 프레임이 보여주는 내용은 무엇입니까?

물리적 인 논의에서 초당 약 12 ​​프레임을 포착했기 때문에 눈이 구분할 수 없다고 생각했기 때문에 24fps가 영화 용으로 선택된 형식이었습니다. 그러나 24fps로 표시된 비디오 자료와 더 높은 프레임 속도로 표시된 자료 사이의 차이를 보는 것이 가능하다는 것이 밝혀졌습니다. 그 이유는 인간의 뇌가 똑똑하고 환상에 속지 않기 때문입니다.

그러나이 토론은 2 차원 게임 제작자가 아니라 영화 제작자를위한 것입니다. 애니메이션의 경우 24fps가 가장 큰 과잉입니다. 사람들은 작은 화면에서 재생되는 게임에 대해 거의 동일한 기대치를 갖지 않습니다. 그들은 playability, 부드러움과 일반적인 느낌과 awesomeness에 초점을 것입니다. 3D 게임을 제작하는 경우 애니메이션은 3D 엔진에 의해 보간법에 의해 계산되므로 애니메이션은 이론적으로 최대 60fps (또는 게임의 fps가 무엇이든간에) 될 수 있습니다. 2d에서 저는 개발 프로세스에 의미있는 것 이상을 기대하지 않습니다.

2

FPS가 나오는 한 15FPS를 내 iPhone 앱에 사용 했으므로 많은 CPU 시간이나 디스크 공간을 사용하지 않고도 잘 작동합니다. 귀하의 필요에 맞는 가치를 찾아서 더 이상 걱정하지 마십시오. 애니메이션 요구에 맞게 텍스처 아트라스를 사용하는 것이 중요한 문제입니다. 매우 작은 텍스쳐를 많이 사용하고 애니메이션 루프가 매우 작 으면 (즉, 하나의 아틀라스가 전체 애니메이션 사이클을 포함한다는 의미이므로) 아틀라스에서 이점을 얻을 수 있습니다 (optimizing-texture-atlases 참조). 그러나 애니메이션이 특정 크기 (너비 x 높이 또는 길이)에 도달하면 알파 채널을 지원하는 비디오 형식을 사용하는 것이 좋습니다 (예 : displaying-animations-in-opengl 참조). 제안하는 방법에 대해 알고 싶다면 알파 채널을 지원하는 동영상 파일에서 OpenGL 텍스처를로드하는 Xcode 프로젝트의 소스 코드를으로보십시오.