안녕하세요!
이번에는 버텍스 기반의 툴을 소개하려 합니다.
타일기반 툴은 빠르게 지형을 만들고 수정할 수 있지만 규격 외의 지형 대응이 힘듭니다.
그래서 최초에 이 툴을 만들게 된 계기는
이런 지형에서 성벽 위로 올라갈 수 있도록 하기 위함이었습니다.
버텍스 툴 이전, 저 성벽은 그림 상 요철이 있지만 실제로는 그냥 장식입니다.
그래서 3D카메라로 보면 벽 부분과 바닥 부분이 그냥 곧게 펴져 있습니다.
또한 그림자가 렌더링되지도 않고, 울퉁불퉁한 그림에 따른 지형 상호작용도 일어나지 않습니다.
이런 요소들을 올바르게 렌더링하고, 캐릭터와 상호작용 가능하게 하기 위해 버텍스 기반의 지형 툴을 만들게 됐습니다.
우선 폴리곤을 편집하는 기능부터 만들었습니다.
둠 빌더라는 레벨 디자인 툴을 참고하면서 최대한 단순하게 구현했습니다.
이렇게 구현된 지형을 타일맵에 매핑하면, 해당 타일맵은 연결된 메쉬 모양에 따라 3D공간상에서 올바르게 랜더링됩니다.
하지만 버텍스를 픽셀 단위로 디테일하게 다듬을 수 없기 때문에 단순히 그림을 매핑하니 그림이 잘리는 문제가 생겼습니다.
위의 세 케이스들의 문제 원인이 각각 다른데,
이 문제들을 해결하기 위해
이미지가 잘리지 않도록 이미지 모양에 따라 매쉬를 자동으로 확장시키는 기능을 구현했고
특정 메쉬는 매핑에서 제외할 수 있도록 하였고
땅속으로 이미지가 파고들지 않도록 땅과 접하는 부분을 접어주는 기능을 구현했습니다.
이외에도 개발하면서 여러 요구사항들이 생겼는데
기존 타일 기반 지형과의 병합 처리
프로토타이핑을 위해 임시로 렌더링하는 기능
벽에 구멍을 내는 기능 등이 있습니다.
하지만 이 툴을 사용해 만든 지형들은 비교적 수정이 까다로워 지기 때문에 자주 쓰지는 않고, 가끔씩 타일 규격 외의 지형이 필요할 때 사용하고 있습니다.
읽어주셔서 감사합니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이상한 링크라서 지웁니다
오 나는 생각만 해보고 구현은 포기했는데
와... - dc App
디테일이 놀랍네요
ㄷㄷㄷ 굇수