Unreal

[Unreal] 3월 17일 수업정리

k-codestudy 2025. 3. 17. 13:49

오늘은 메쉬에 관한 수업을 들었다.

 

메쉬(Mesh)

영문 뜻으로 '그물'을 의미하며, 3D 그래픽에서 폴리곤(다각형)으로 이루어진 모델을 지칭한다.

 

스태틱 메쉬(Static Mesh)

고정된 형태의 메쉬로, 게임 엔진에서 변경되지 않는 정적인 모델을 의미한다.

사용자 작업시 사각형(쿼드) 형태로 모델링을 하는 경우가 많지만 최종적으로 폴리곤은 삼각형으로 변환이 된다.

즉, 후처리 과정을 통해 삼각형 폴리곤으로 변환이 되는것이다 

    • 변환 과정에서는 버택스(Vertex)데이터가 사용이 되는데, 사각형(쿼드)는 내부적으로 두 개의 삼각형으로 분할되며, 각 두개의 삼각형으로 분할되며, 각 삼각형의 정점(Vertex) 정보가 저장이 된다.
    • 3D 모델링 소프트웨어(Maya, Blender 등)나 게임 엔진(Unreal Engine, Unity 등)에서 자동으로 삼각형 분할을 수행하며, 이 과정에서 법선(Normal), UV좌표(Texture Coordinates)등이 함께 처리된다.
    • 변환 방식은 사용하는 툴의 파이프라인에 따라 차이가 있을수 있다.

 

테셀레이션(Tessellation)

저폴리곤(Low Polygon) 모델을 모종의 연산으로 하이폴리곤(High Polygon)으로 변환하는 기술.

즉, 단순한 노멀맵 기반의 시각적 트릭이 아니라 실제로 새로운 폴리곤을 생성하는 방식

특정 부분만 하이폴리곤으로 변환하여 성능을 최적화함

하드웨어 테셀레이션을 지원하는 GPU에서 효과적으로 동작한다.

 

택스처, 머테리얼 시스템

단순히 텍스처를 입히는 것이 아니라 픽셀 셰이더를 통해 연산을 수행하여 랜더링을 진행한다.

과거에는 어셈블리 언어로 직접 작성을 했어야 했지만 현재는 HLSL(High-Level Shader Language)로 스크립팅 가능하다.

머테리얼 시스템을 이용하면 셰이더를 보다 쉽게 작성하고 적용할 수 있다.

  • 머테리얼 작업 시 프리뷰 씬 세팅 기능을 활용하여 최종 렌더링 환경을 조정할수 있다.

 

나나이트(Nanite)

UE5에서 도입된 가변 해상도 메쉬 렌더링 기술로 하이폴리곤 모델을 기반으로 하되, 필요 없는 부분을 자동으로 저폴리곤으로 변환하여 최적화한다.

사용자가 조정할 수 있는 부분은 "정밀도 설정"으로 정밀도를 조절하여 성능과 품질 간의 균형을 맞출 수 있다.

즉, 하이폴리곤을 기반으로 하여 필요없는 부분을 로우 폴리곤으로 돌리는 기법이다.

[LOD, 팝핑 현상, 밈뱁 은 외워둘것]

LOD(Level of Detail) 

LOD는 오브젝트의 디테일을 거리 또는 화면 크기에 따라 조절하는 기술이다.

과거에는 거리에 따라 LOD가 변경되는 방식이 일반적이였지만 현재는 화면에서 차지하는 비율 (버퍼 영역 기준)으로 LOD를 결정한다.

LOD 레벨의 개수는 설정에 따라 달라질 수 있으며, 폴리곤이 많음 -> 적음 or 적음 -> 많음 방식으로 구성이 될 수 있다.

 

LOD 확인 방법

현재 화면 크기

  • Props 창(왼쪽 상당)에서 '현재 화면 크기'를 확인하여 계산한다.
  • 마우스 커서를 올리면 현재 적용된 LOD 개수가 표시가 된다.

 

팝핑(Poppint) 현상

LOD가 전활될 때 디테일이 급격히 변하는 현상이다. ( 자세한 현상은 찾아보면 바로 나온다 )

언리얼 에서는 포스트 프로세스(Post-Process) 효과를 적용하여 완화할 수 있다.

블러 효과, 레이 트레이싱, 뎁스 기술을 활용하여 부드럽게 전환이 가능하다.

 

밈맵(MipMap)

LOD에 따라 텍스처 해상도를 낮추는 기술

오브젝트의 디테일 수준이 낮아질 떄, 저해상도 텍스처를 자동으로 적용하여 성능을 최적화 한다.

레벨별 디테일 감소는 밈맵을 활용하여 제어가 된다.

 

LOD 설정 방법

  • LOD 개수 변경 : LOD개수만 조정한 후 저장하면 적용이 된다. 

 

  • LOD 선택 툴 : 자동(Auto) 모드에서 확인 가능

  • 필요하다면 커스텀(Custom) 모드로 설정하여 개별 조정 가능하다.

  • LOD 감소 세팅 : 가급적 기본값을 유지 권장하는데 특정 LOD를 수정하게 되면 이후 모든 LOD 설정을 다시 조정해야하므로 번거로울수 있기 떄문이다.

 

추가 사항

 

릭 리타기팅(Retargeting)

언리얼 엔진 5.4 이전 버번에서는 IK 리그(IK Rig) 기반의 애니메이션 리타기팅을 사용해야 함

[ 공식 문서 참고 ]

레벨 시퀀스 (Level Sequence)

언리얼 엔진의 애니메이션 및 카메라 연출 기능으로 유튜브에서 관련 튜토리얼을 쉽게 찾을 수 있음.

블루프린트에서 레벨 시퀀스 기능을 사용할 수 있으며, 카메라에 시네마틱 카메라 기능을 활용하면 편리하게 연출 가능.

중요한 요소: 카메라, 애니메이션

나이아가라(Niagara) & 캐스케이드(Cascade)

캐스케이드(Cascade): 기존의 파티클 시스템. 현재는 사용되지 않음.

나이아가라(Niagara): 캐스케이드를 대체하는 최신 FX 시스템. FX(이펙트) 제작에 사용됨.

언리얼 엔진의 FX 탭에서 나이아가라 시스템을 확인할 수 있음.