[TIL] 2025-05-24 알고리즘 문제, 스켈레탈 메시 병합
2025-05-24 TIL
알고리즘 문제
이번 문제는 이해하는 것은 좀 어려웠지만, 알고리즘 자체에 대한 아이디어는 잘 떠올려냈습니다.
다만 구현에 어려움이 좀 있었고, 시간적으로 너무 오랜 시간이 걸려서 답을 찾아보았습니다.
제가 떠올렸던 알고리즘의 방향이 맞았는데 세부적으로 알고리즘을 응용하는 실력이 부족하여 풀지 못한 것 같습니다.
응용에 대해서는 학습을 추가적으로 진행해야 실력이 향상될 것 같습니다.
[프로그래머스][C++] 다단계 칫솔 판매
최종 프로젝트
모듈식으로 된 스켈레탈 메시를 병합하는 작업을 진행했습니다.
스켈레탈 메시 병합
플레이어의 캐릭터 메시가 모듈식으로 구성되어 있기 때문에 어떤 방법으로 메시를 사용할지에 대해 결정할 필요가 있었습니다.
알아본 방법으로는 크게 3가지 방법이 있는 것으로 파악했습니다.
- 리더 포즈 컴포넌트
- 메시에서 포즈 복사
- 스켈레탈 메시 병합
해당 3가지 방법은 언리얼 엔진의 공식 개발자 문서에서 살펴보았습니다.
리더 포즈 컴포넌트나 메시에서 포즈 복사의 경우 각 메시 별로 드로우콜이 발생하기 때문에, 캐릭터의 수가 많은 경우 최적화에 좋지 않다는 점을 인지했습니다.
현재 작업 중인 프로젝트에서는 던전에서 몬스터와 전투하는 경우 플레이어 캐릭터 1개만 존재하기 때문에 문제가 되지 않지만, 타이쿤의 경우 모듈식으로 구성된 캐릭터의 수가 훨씬 많아질 수 있기 때문에 첫 구성에 비용이 많이 들지만 게임 스레드 및 렌더 스레드에 비용이 적은 메시 병합을 사용하였습니다.
비용의 경우 공식 개발자 문서에서 정리된 비교 차트를 보고 판단하였습니다.
스켈레탈 메시 병합을 사용하는 경우 모프 타겟을 사용할 수 없지만, 해당 기능을 사용하지 않기 때문에 문제가 되지는 않을 것 같습니다.
정확하게 모프 타겟을 사용하는 것이 불가능 하지는 않고, FSkeletalMeshMerge::GenerateLODModel
를 참조하여 우회하는 방법이 있다고 합니다.
댓글남기기