메쉬 최적화에 대해

Gusdnd_01·2024년 12월 17일
0

공부

목록 보기
13/16

이번 글은 메쉬 최적화에 대해 설명해보고자 합니다.

가장 중요한 부분인데요, 컴퓨터가 모니터에 3D를 출력할 때에 버텍스를 가져오고 각각 연산 과정을 거쳐 그리기 때문에 버텍스 수를 줄이는 것은 가장 중요하다고 생각을 하고 있습니다.

우선 컴퓨터가 그림을 그릴 때 버텍스의 위치 정보를 가져옵니다.
버텍스의 위치 정보를 가져오고 난 후 Local Matrix, World Matrix, Projection Matrix, 순으로 연산을 하고 위치를 시킵니다.

그리고 버텍스에 인덱스에 기반해서 폴리곤을 그립니다. 폴리곤을 그리고 난 후 레스터라이징을 진행합니다. 레스터라이징은 벡터 데이터를 기반으로 픽셀화 시킨다고 보면 될 것 같습니다.

그리고 버텍스의 색, 그려지는 텍스쳐의 색, 픽셀 셰이더를 거쳐 모니터에 송출합니다.
이러한 과정이 있기 때문에 가장 초반에 버텍스를 불러오는 시간이 길어진다면 안정적이지 않겠죠?

그래서 저는 주로 메쉬를 범용적으로 만들고, 그 다음에 그 메쉬 또한 버텍스 수를 300개 이하로 제한하고 생각하며 작업을 합니다. 디스크에 저장되는 용량마저 줄이기 위해서 말이죠.

계속 생각을 하면서 작업을 해야 나중에 고치는 작업이 줄기 때문에 효율성이 더 좋기 때문이라고 생각합니다.

3DS Max와 블렌더 모두 모디파이어를 사용하여 작업을 할 때, 하나만 삐끗해서 최대의 퀄리티를 작업하기 시작하면 나중에 최적화가 안되어서 줄이고 줄이며 불필요한 작업을 해야하기 때문에 쳐낼것은 과감하게 쳐내는 작업이 중요합니다.

그리고 유니티 내에서도 설정이 가능한데요. 저는 이펙트 메쉬를 설정할 때,

저 빨간 네모는 모두 끕니다. 안써요.

그리고 모델에서 Import부분을 모두 끕니다. 메쉬 말고는 쓸게 없거든요.
이렇게 설정하면 제가 생각하기로는 최대한의 최적화를 진행했다고 생각합니다. 빌드 후 오류가 생길 경우에는 여러 부분에서 최적화를 진행하긴 해야겠죠.

오늘은 메쉬 최적화에 대해 적어봤습니다. 저도 아직 완벽하게, 전부 아는 것은 아니라 틀렸거나 더 추가할 부분이 있다면 알려주시면 감사하겠습니다.

읽어주셔서 감사합니다.

profile
테크와 아름다움을 좋아하는 게임 이펙터

0개의 댓글

관련 채용 정보