이제 순전히 내가 주도하는 게임을 만들어보려고 한다.
이전 BP관련 프로젝트를 하다가,
이번에 이득우님의 파란책을 보고 CPP로 구현하는 과정을 배우게 되었다.
BP관련 프로젝트를 하면서 배웠던 것은,
BP는 유지보수가 힘들다
라는 것이었다.
그 이유가, 노드를 직접 끌어서 연결해야하는데,
이게 노드가 일정 수준 이상 많아지면,
노드 뭉치를 일일이 연결하기도 벅차고,
연결하는 것 자체가 일이되어버리게 되는 것 같다.
(노드 하나로 묶으면 되지만..)
(노드 하나 당 여러갈래의 선을 따라서 보기에 가독성이 떨어지게 된다)
그리고 BP의 비용이 CPP보다 많이 든다고 배웠기 때문에..
애니메이션이나 데이터테이블, 매시 등등 BP로 구현하는게 쉬운 부분을 제외하곤,
게임을 CPP로 제작해보려고 한다.
우선 배경은 에셋에 맞춰서 따라갈 것 같지만,
장르는 오픈월드, 어드벤쳐 게임으로 만들고 싶다.
갓 오브 워, 데스 스트랜딩, 페인스크릭 킬링즈
처럼
배경 자체는 밝지만 분위기는 암울한 세계관에서 살아남는
게임을 제작하고 싶다.
우선 foot rig 기능을 넣고 싶다.
경사면에 따라 발이 위 아래로 자연스럽게 배치되는 시스템인데,
한 번 구현하거나 기능을 넣어보고 싶다.
그리고 최대한 캐릭터의 움직임을 자연스럽고 완성도있게 구현하고 싶다.
이번 이득우 프로젝트에서 NPC를 생성했고, Behavior Tree에 맞춰
AI기능으로 움직이도록 했었다.
마찬가지로 AI동료 기능을 만들고 싶고,
따라다니면서 적을 같이 공격하고 혹은 명령도 내리는
기능을 넣어보고 싶다.
시간이 지남에 따라 해가 지고 뜨는 시스템을 구현하고 싶다.
마찬가지로 시간 UI를 구현하고,
추가로 잠자면 시간이 흐르는 등 기능을 구현해보고 싶다.
딱 하나라도 좋으니까 보스를 구현해보고 싶다.
엘든링, 다크소울, 세키로, P의 거짓 등의 소울라이크 게임을 해보면서
뭔가 피의 양에 따라 페이즈가 나뉘며,
피의 양 뿐만이 아니라, 플레이어와의 거리에 따라
보스의 Behavior Tree도 다르게 동작한다고 느꼈고,
싸우는게 재미있는 보스 하나만 정말 제대로 구현해보고 싶다.