Unity의 LOD 그룹에서 Level of Detail 샘플을 만들어 보았다.

3581 단어 Unity
오픈 월드 게임을 만들고 싶지 않아?
저자는 젤다의 전설 BotW에서 빠져 Ghost of Tsushima는 최고를 좋아합니다

오픈 월드를 지원하는 중요한 기술 중 하나가 Level of Detail (LOD)입니다.
이것은 피사체와의 거리 등으로 표시하는 메쉬를 전환함으로써
카메라 내의 다각형 수를 줄이고 그리기 부하를 억제하는 기술입니다.

Unity에는 쉽게 LOD를 실현하는 도구가 있기 때문에
이번에는 여기 샘플을 만들었습니다.

사전 정보



Unity: 2020.3.11f1
LOD 그룹 : htps : // / cs. 글쎄, ty3d. 코 m/쟈/쿤 t/마누아 l/cぁ s-ぉ DG 왁스 p. HTML

작업



블렌더로 메쉬 준비



이번에는 Blender에서 고 다각형, 중간 다각형 및 저 다각형을 준비합니다.

파랑: UV Sphere의 Segments=12, Verts=182
녹색: UV Sphere의 Segments=24, Verts:362
빨강: UV Sphere의 Segments=48, Verts:722

Unity에 각 메쉬 배치



Unity에서 EmptyObject를 배치하고 자식 요소에 3 패턴 객체 추가

※ 알기 쉽게 옆에 배치하고 있습니다만 좌표는 동일하게 해 주세요

LOD 그룹 설정



상위 요소에 대한 Inspector 창에서 LOD Group 추가


각 폼의 상세한 설명은 공식 문서가 알기 쉽게 해설하고 있으므로 생략합니다
LOD 그룹 : htps : // / cs. 글쎄, ty3d. 코 m/쟈/쿤 t/마누아 l/cぁ s-ぉ DG 왁스 p. HTML

Unity의 LOD Group에서는 피사체가 화면 내에서 몇% 차지하는지 메쉬를 내놓는다.
위 이미지라면 100%라면 LOD 0, 60%라면 LOD 1, 30%라면 LOD 2, 10%라면 표시하지 않습니다
각 게이지 부분을 클릭하면 대상 객체 또는 Renderer를 지정할 수 있습니다.

나중에 카메라 아이콘을 슬라이드하면 Scene 보기로 미리 보기
Scene 뷰에서 카메라 이동해도 반영된다고 생각합니다.



비교





시각적으로 구체의 각장에 차이는 거의 없지만
stats의 Triangle 수와 Vertex 수가 급감하고 있음을 알 수 있습니다.

감상



LOD 그룹 덕분에 매우 쉽게 LOD를 경험할 수있었습니다.
그냥 너무 간단하고 설정 항목도 적기 때문에
본격적으로 부하 경감하고 싶다면 자작 할 필요가있을 것 같습니다.

장점



・간단하게 만들 수 있으므로 모의 작성용

단점



・화면내의 비율로 메쉬를 바꿔놓기 때문에, 꺾어 있을 때에 저 폴리곤이 된다
 →Fade Mode로 메쉬 전환을 매끄럽게 하면 완화될지도 모릅니다

・메모리에는 모든 메쉬가 실려 있다고 생각하므로 메모리도 절약하고 싶은 경우에는 향하지 않을지도
 →Renderer 지정으로 하면 동적 로드해 줄지도?

08/19 추가



실제로 메모리에 모든 LOD가 전개되었는지 확인했습니다.

좋은 웹페이지 즐겨찾기