2011년 11월 16일 수요일

Game Character Animation and Hitting Sense

오랜만에 게임 클라이언트 프로그래밍을 하고 있다.
타격감이 중요한데,
타격감은 공격 모션과 대미지 시뮬레이션의 동기화,
이펙트, 사운드, 피격 모션이 서로 잘 어우러져야만 한다.

게임 로직이 복잡해질수록,
상태변화를 담당하는 모듈과 애니메이션을 담당하는 모듈에서의 상태관리가
서로 엉켜 복잡해진다.

타격감을 위해서는 기준은 애니메이션이다.
공격을 시작하는 충돌을 감지하고, 애니메이션이 시작된다.
그전에 하던 애니메이션이 멈춰야 하고, 해당 공격이 취소될때까지, 상태가 유지되어야 하고,
완료하면, 그전 상태의 애니메이션을 플레이 해야 한다.

복잡하게 생각할 필요 없다.
타격이 일어나면, 타격 애니메이션을 돌려주고, 애니메이터가 애니메이션이 끝남을 알리면,
상태변환 진입을 허용하고, 현재 상태를 분석하여, 다시 애니메이션을 돌려주면 된다.
애니메이션내에서의 타격점에서의 대미지 딜링과 효과음,효과 파티클 플레이는 애니메이션 이벤트를 받아서 처리하면 된다.