-
Notifications
You must be signed in to change notification settings - Fork 47
Making Animations_kr
Rabbit Escape의 애니메이션은 이미지로 만들어집니다.
코드에서, 토끼와 다른 것들의 가능한 상태는 ChangeDescription.java에 있습니다, 또한 그러한 상태는 SpriteAnimator.java에 있는 애니메이션 파일(*.rea
)의 파일 이름으로 변환 됩니다.
SpriteAnimator.frameForThing()
에서 상태 열거형 값을 소문자로 바꾸고 AnimationLoader.java'의load()
메소드에서 로드된 파일을 탐색합니다.
따라서 애니메이션 파일은 rabbit-escape-render/src/rabbitescape/render/animations에 있으며, ChangeDescription.java에 있는 열거형에 따라 상태의 이름이 지어졌으며 끝에 .rea가 추가됐습니다.
해당하는 애니메이션을 만들지 않고 ChangeDescription.java에 상태를 추가하는 것은 에러를 일으킵니다.
애니메이션 파일은 반드시 10줄(시간 간격에서 각 프레임에 하나 씩)있어야 하며 각 주루은 다음과 같아야 합니다:
frame [x-offset [y-offset [sound_effect]]]
이 파일의 형식은 AnimationLoader.readAnimation()에 구현됩니다..
예를 들어, rabbit_bashing_up_right.rea의 경우:
rabbit_bash_right_01 0 -32
rabbit_bash_right_02 0 -32
rabbit_bash_right_03 0 -32
rabbit_bash_right_04 0 -32 rabbit_bashing
rabbit_bash_right_05 0 -32
rabbit_bash_right_06 0 -32
rabbit_bash_right_07 0 -32
rabbit_bash_right_08 0 -32
rabbit_bash_right_09 0 -32
rabbit_bash_right_10 0 -32
모든 프레임은 (0, -32) 픽셀만큼 오프셋되고 네번째 프레임을 렌더링 할때 "rabbit_bashing" 사운드 효과를 실행합니다..
애니메이션 프레임을 구성하는 이미지는 images-src에 저장되고 make
실행되는 동안 다양한 크기의 PNG 이미지(Swing 및 Android를 위해)에 저장됩니다.
SVG 또는 PNG 파일을 images-src 넣고 make
을 실행하면 애니메이션 파일에서 그 파일들을 참조할 수 있어야합니다.
게임에 사용된 SVG파일은 inkscape를 사용하여 개발되었습니다. 몇가지 팁들:
- When shrinking parts Inkscape may try to thin the strokes (모양 주위의 선들). 다음 페이지에서 방지할 수 있습니다.http://graphicdesign.stackexchange.com/questions/24736/how-can-i-preserve-border-width-when-scaling-an-object-with-inkscape
Eclipse 또는 다른 IDE를 사용하여 개발할 경우, 애니메이션 파일과 이미지가 처리되고 클래스 경로에 복사되기 위해 make
를 실행하세요.
애니메이션을 테스트하려고 애니메이션 테스터 유틸리티를 사용하려면 make runat
를 실행하세요.
애니메이션 테스터는 꽤 까다롭고 준비된 개발자를 위한 도구지만 기본적으로 정사각형을 클릭하여 그 안에 표시된 애니메이션(또는 배경 블록)을 변경할 수 있습니다.
이 도구는 약간 느리게 3단계로 반복되므로 애니메이션 3개를 선택해서 각 단계마다 실행시킬 수 있습니다.
애니메이션 테스터에는 키보드 단축키가 있습니다. 단축키 'h'를 누르면 콘솔에 바로가기 목록이 표시됩니다. 이러면 애니메이션을 빠르거나 느리게 할 수 있으며 개별 프레임을 단계별로 처리하고 각 프레임의 이름을 출력할 수 있습니다.