[러셀과 함께하는 시작해요 언리얼] 3주차 요점 – 레벨 구성 & 라이팅
퀵셀 브릿지에서 받은 에셋의 Nanite의 품질은 아주 높기 때문에, 텍스쳐가 보통 8K의 해상도를 가진다. 그래서 메모리의 효율적 운용을 위해 텍스쳐의 해상도를 낮출 필요가 있다. 텍스쳐를 더블 클릭하여 텍스쳐 창을 열고, 아래 LOD Bias를 0 부터 하나씩 증가시키면 8192 -> 4096 -> 2048로 Displayed 해상도가 줄어든다. Imported는 8192×8192이지만 실제 메모리상에는 4096×4096의 텍스쳐가 적용이 된다.
다량의 텍스쳐를 한번에 수정하려면, 콘텐츠 브라우져에서 텍스쳐로 필터링을 걸어 주어 텍스쳐만 노출되게 한다. 그리고 마우스 우클릭을 통해 Bulk Edit via Property Matrix를 선택한다. Property를 수정할 수 있는 창이 열리면, Ctrl + A를 통해 모든 에셋을 선택한 후에, 오른쪽 메뉴에 LevelOfDetail섹션에 LOD Bias를 원하는 값으로 바꾸면 전체 리스트에 적용된다.
라이팅 및 대기 효과
Env. Light Mixer 창을 열고, Light를 하나씩 추가해 본다.
우선 Atmospheric Light 0을 누르면, DirectionalLight를 생성하고 회전을 통해 원하는 시간대의 환경을 만들 수 있다.
그리고, 하늘에 빛이 없는 상태이기 때문에 Sky Atmosphere을 추가해보자.
그늘진 곳이 어둡게 보이므로 간접광을 위해 스카이라이트를 추가한다.
입체감을 위해 Fog를 추가해보자.
안개의 Inscattering Color를 바꾸어 안개의 색을 바꿀 수 있다. (특정 시간대를 표현하고 싶을 때 사용한다.)
Directional light의 온도를 조절하여 뜨겁거나 차거운 효과를 낼 수도 있다.
Directional light의 Source Angle은 태양의 크기로 보면 된다.
SkyAtmosphere에서 색 흡수하기는 원하는 색을 빼서 보색이 노출되도록 하는 기능이다. 아래와 같이 녹색을 흡수할 경우, 보래색으로 표현된다.
레벨 인스턴스
다수의 오브젝트를 하나로 묶어 인스턴스화 시키고 레벨에 로드되도록 한다. 원하는 에셋을 멀티 선택한 후, 마우스 우클릭을 통해 Create Packed Level Actor를 선택하고, 팝업 창의 OK를 누른다. treegroup으로 저장해보자. 블루 프린트도 같이 저장한다.
Outliner상에 BPP_treegroup로 나타나고, 수정을 위해서는 Details 창에 Edit 버튼을 누르고 변경 가능하다. 변경 후에는 Commit Change를 누르면 반영된다.
3D Plants 최적화
식물의 경우 Nanite가 적용이 안되어 있기 때문에 성능을 위해서 폴리곤 개수를 줄일 필요가 있다. 아래와 같이 LOD 개수에 따라 Triangles수가 거리에 따라 줄어 들 수 있지만, LOD 0일때 12,059개의 폴리곤 수가 기본적으로 많기 때문에 Reduction Settings의 Percent Triangles를 50%로 변경하면, 폴리곤 개수를 반으로 줄일 수 있다.
메가 어셈블리 소개