Computer Graphics/Hiking

Hiking: 프로젝트 후기

Banjosh 2025. 5. 27. 16:39

8주간의 Hiking 프로젝트가 끝났다. 처음 애니메이션 분야를 다뤄본 것이라 부족한 점도 많고 힘든 점도 많았지만 그 안에서 많이 배울 수 있었다. 먼저 프로젝트를 통해 내가 배운 점을 적어보려 한다.

 

기본기가 중요하다

 실제 애니메이션 데이터를 통해 프로젝트를 진행해본 것은 이번이 처음이다. 기본도 안 되있는데 처음부터 FBIK를 구현하려 했으니 목표를 달성하지 못한것은 당연한 것이라 생각한다. (1주차에 정한 목표에 비해 구현한 것이 너무 적다)

 애니메이션 분야의 기본기를 먼저 공부한 뒤 난이도를 서서히 올렸어야했는데, 갑자기 IK를 구현하려 하니 기본적인 구현 (스키닝, 애니메이션 블랜딩, 상태 관리 등)을 깔끔하게 구현하지 못했고, 이 스노우볼로 더러운 구현과 비효율적인 분기 남발이 발생하였다.

 

실무에 적용할 수 있는 설계를 해야한다

지금까지는 모든 구현을 프로젝트 내부에서만 돌아가게 만든 것이 많다. 예를 들면 이번 프로젝트에서는 캐릭터가 Jump하거나 Run하는게 없으니 walk를 애니메이션을 쓰지 않고 구현해보려 하였다.  그러나 이 부분은 지적을 당할 수 밖에 없었고, 당연한 이야기지만 실제 게임에서는 walk만 사용하지 않는다. 모든 기술을 다양한 상황에 적용시킬 수 있게 만들어야 했고, 지금까지 처럼 현재 문제만 해결할 수 있는 단편적인 해결방법으로 처리하는 것은 좋지 못한 방법이었다. 따라서 프로젝트 중간 부터는 최대한 애니메이션의 정보를 이용한 움직임을 구현하려 하였고, 단편적인 해결책이 아닌 범용적인 해결책을 찾는데 노력을 많이 기울였다.

 

많은 기술을 미리 공부해 놓아야 한다

FBIK를 목표로 구현을 하려 보니 알고 있는 기술들이 없어서 진행속도가 많이 늦어졌다. 진행과정에서 많은 문제가 발생하였고 이를 나름 내 방법대로 해결하려 했지만, 기존에 나와있는 기술들 중에 내 해결책보다 더 좋은 것들이 이미 나와있다고 생각한다. 만약 내가 많은 기술들을 알고 있었다면 지금보다 구현을 더 빨리 효율적으로 하며 결과물 또한 더 좋았을거라 생각한다.

 

 

진행하면서 이러한 부족함들을 많이 느꼈고, 실제로 현재 구현된 프로젝트는 실무에서 쓸만한 범용적인 구현이 아닌, 프로젝트에서 보여주기식의 결과라 생각한다. 프로젝트가 이미 실무에 적용할 수 있는 범용적인 설계로 이루어져있지 않기 때문에 더 확장하는 것은 큰 의미가 없는 것같고 오히려 이 깨달음을 바탕으로 새로운 프로젝트를 진행하는게 맞는 것 같다.

 

앞으로는 Unreal 엔진을 공부하며 소스코드를 보는 연습과 내부의 다양한 기술들에 대해 공부를 할 예정이다.