이 페이지는 언리얼 엔진과 포트나이트 언리얼 에디터(UEFN)에서 공통으로 제공되는 기능에 대해 설명합니다.
언리얼 엔진을 기반으로 작성되었기 때문에 일부 설명과 스크린샷이 실제 UEFN과 다를 수 있습니다.
기본 UEFN 문서로 돌아가려면 여기 를 클릭하세요.
이 퀵스타트 튜토리얼에서는 프로시저럴 폴리지 툴(Procedural Foliage Tool) 의 작동 방식을 알아보겠습니다. 이 퀵스타트 튜토리얼 과정에서는 프로시저럴 폴리지 툴만으로 UE5 내에서 수많은 나무를 생성하고, 설정하고, 스폰하는 방법을 배울 수 있습니다. 또한 프로젝트의 필요에 맞게 버추얼 숲을 형성할 수 있도록 도와주는 핵심 프로퍼티와 세팅을 살펴볼 수 있습니다.
프로시저럴 폴리지 툴이 제대로 작동하고 원하는 결과를 구현하는 데 필요한 모든 에셋과 프로퍼티도 접하게 됩니다. 이 퀵스타트를 완료하면 위의 이미지와 비슷한 새로운 레벨을 보유하게 됩니다.
전제조건
프로젝트에서 프로시저럴 폴리지 툴을 사용하려면 먼저 다음과 같이 툴을 활성화해야 합니다.
메인 메뉴(Main Menu) 에서 편집(Edit) 메뉴를 열고 에디터 개인설정(Editor Preferences) 을 클릭합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
에디터 개인설정에서 실험단계 기능(Experimental) 섹션을 우클릭 합니다.
프로시저럴 폴리지(Procedural Foliage) 옆에 있는 체크박스를 클릭하여 프로시저럴 폴리지 옵션을 활성화합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
또한 언리얼 엔진 마켓플레이스 에서 오픈 월드 데모 컬렉션(Open World Demo Collection) 콘텐츠 팩을 다운로드해야 합니다. 다음 퀵스타트 과정에서 해당 컬렉션의 일부 콘텐츠가 사용되기 때문입니다. 오픈 월드 데모 컬렉션을 다운로드했다면 사용 중인 프로젝트에 추가하고 다음을 수행하여 이 퀵스타트 과정을 계속합니다.
에픽게임즈 런처의 마켓플레이스에서 오픈 월드 데모 컬렉션 을 찾아 다운로드합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
런처의 라이브러리(Library) 섹션으로 이동하여 보관함(Vault) 섹션에서 오픈 월드 데모 컬렉션을 찾습니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
프로젝트에 추가(Add to Project) 버튼을 클릭합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
그러면 이 컬렉션을 추가할 수 있는 프로젝트 목록이 나타납니다. 이 퀵스타트 과정을 계속하기 위해 사용 중인 프로젝트를 선택하고 프로젝트에 추가 버튼을 누릅니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
1 - 폴리지 타입 액터 생성하기
이 단계에서는 새로운 레벨, 랜드스케이프 지형, 그리고 프로시저럴 폴리지 툴에 필요한 모든 에셋을 생성합니다.
디폴트 템플릿(Default Template) 을 베이스로 사용해 새로운 레벨을 생성합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
새로운 랜드스케이프 액터(Landscape Actor) 를 레벨에 추가합니다. 먼저 모드(Modes) 드롭다운 메뉴에서 랜드스케이프(Landscape) 를 선택해 랜드스케이프 패널(Landscape Panel) 을 연 후 생성(Create) 버튼을 클릭해 랜드스케이프 액터를 레벨에 추가하면 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
랜드스케이프 지형 액터를 사용하면 숲을 스폰할 수 있는 매우 넓은 영역이 빠르게 제공됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
랜드스케이프 지형의 작동 방식에 익숙하지 않거나 관련 내용을 자세히 알아보려면 랜드스케이프 야외 지형을 참조하세요.
콘텐츠 브라우저(Content Browser) 에서 우클릭 하여 폴리지(Foliage) 섹션을 확장한 후 프로시저럴 폴리지 스포너(Procedural Foliage Spawner) 를 클릭하여 새로운 프로시저럴 폴리지 스포너를 생성합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
이 예제의 프로시저럴 폴리지 스포너를 PFS_Example 또는 그와 유사한 이름으로 명명합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
프로시저럴 폴리지 스포너를 콘텐츠 브라우저(Content Browser) 에서 드래그하여 레벨 중앙이나 X, Y, Z 축의 0,0,200 에 배치합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
프로시저럴 폴리지 스포너를 X, Y, Z 축의 100,100,10 으로 스케일 조절하여 숲을 스폰할 넓은 영역을 생성합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
이제 스포너가 있으니 스폰할 폴리지를 스포너에 제공해야 합니다. 이를 위해서는 콘텐츠 브라우저(Content Browser) 에서 우클릭 하여 폴리지(Foliage) 섹션을 확장한 후 스태틱 메시 폴리지(Static Mesh Foliage) 를 클릭합니다. 스태틱 메시 폴리지는 Tree_00 또는 그와 유사한 이름으로 명명합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
아직 작업과 레벨을 저장하지 않았다면 모두 저장(Save All) 버튼을 눌러 모든 콘텐츠를 저장하고 저장(Save) 버튼을 눌러 레벨을 저장합니다. 레벨 이름을 물으면 PFT_00 으로 지정합니다. 현재 시점에서는 다음 이미지와 비슷한 모습이 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
2 - 스포너에 무엇을 스폰할지 명령하기
다음 섹션에서는 프로시저럴 폴리지 스포너 작업을 위해 폴리지 타입 액터(Foliage Type Actor) 를 설정하는 방법을 다룹니다. 이때 이전 단계에서 생성한 PFT_00 레벨을 계속해서 사용하게 됩니다.
콘텐츠 브라우저(Content Browser)에서 프로시저럴 폴리지 스포너(Procedural Foliage Spawner) 를 더블클릭 하여 엽니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
폴리지 타입(Foliage Types) 메뉴 옵션 오른쪽에 있는 더하기 부호 아이콘을 클릭하여 폴리지 타입 배열에 새 아이템을 추가합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
콘텐츠 브라우저(Content Browser)에서 Tree_00 스태틱 메시 폴리지를 선택하고 폴리지 타입 오브젝트(Foliage Types Object) 에 드래그하거나, 화살표 아이콘을 눌러 선택한 스태틱 메시 폴리지를 프로시저럴 폴리지 스포너에 로드합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
콘텐츠 브라우저(Content Browser)에서 Tree_00 스태틱 메시 폴리지를 더블클릭 하여 엽니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
Tree_00 스태틱 메시 폴리지 상단에서 메시(Mesh) 섹션을 찾아 드롭다운 메뉴에서 없음(None) 을 클릭합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
오픈 월드 데모 컬렉션 에서 검색어로 'HillTree_02'를 입력하거나 목록을 스크롤하여 HillTree_02 스태틱 메시를 찾은 후 클릭하여 로드합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
뷰포트로 돌아가 레벨에 배치된 프로시저럴 폴리지 스포너(Procedural Foliage Spawner) 를 선택하고 디테일(Details) 패널의 프로시저럴 폴리지(Procedural Foliage) 섹션을 확장합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
프로시저럴 폴리지 섹션에서 다시 시뮬레이션(Resimulate) 버튼을 클릭하면 다음 이미지에서처럼 프로시저럴 폴리지 스포너에 나무가 빼곡하게 있는 것을 볼 수 있습니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
제대로 된 결과를 얻기 위해서는 프로시저럴 폴리지를 생성하거나 변경하기 위해 다시 시뮬레이션(Resimulate) 버튼을 누를 때마다 메인 툴바(Main Toolbar) 에서 빌드(Build) 를 클릭하여 라이팅을 리빌드해야 합니다. 이때 다수의 스태틱 메시를 처리하기 때문에 시간이 오래 걸릴 수 있습니다.
3 - 폴리지 타입 오브젝트 프로퍼티 미세조정하기
폴리지 타입 오브젝트 에는 조절할 수 있는 프로퍼티가 많이 있습니다. 스태틱 메시 폴리지와 액터 폴리지 모두 해당됩니다. 이런 프로퍼티를 조정하면 폴리지 타입 오브젝트를 다른 오브젝트나 레벨에 배치하는 방식부터, 폴리지 타입 오브젝트가 폴리지 스포너 전체에서 성장하고 확산되는 방식까지 모든 것을 제어할 수 있습니다. 다음 섹션에서는 폴리지 타입 오브젝트 에서 사용할 수 있는 프로퍼티를 살펴보고, 이런 프로퍼티를 조작하여 원하는 결과를 얻는 방법을 알아봅니다. 이때 이전 단계에서 사용한 PFT_00 레벨을 계속해서 사용하게 됩니다.
Tree_00 스태틱 메시 폴리지를 엽니다.
배치(Placement) 섹션을 확장하고 노멀에 정렬(Align to Normal) 과 랜덤 요(Random Yaw) 가 모두 활성화되어 있는지 확인합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
배치(Placement) 섹션에서는 폴리지 타입 오브젝트의 메시가 레벨의 오브젝트에 배치되는 방식을 조정할 수 있습니다.
스태틱 메시 폴리지의 프로시저럴(Procedural) 섹션에서 콜리전(Collision) 섹션을 확장하고 셰이드 반경(Shade Radius) 을 50 으로 설정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
콜리전(Collision) 섹션에서는 두 개의 폴리지 타입 오브젝트가 같은 스폰 위치나 상대 공간에 배치되려고 할 때 어느 쪽을 제거할지 결정합니다. 버추얼 시드(Virtual Seed)의 콜리전 반경이 기존에 있던 다른 폴리지 타입 오브젝트 버추얼 시드의 콜리전 또는 셰이드 반경과 겹치는 경우, 폴리지 타입 오브젝트의 우선순위에 따라 하나의 버추얼 시드는 대체되거나 제거됩니다.
레벨에 배치된 프로시저럴 폴리지 스포너를 선택하고, 프로시저럴 폴리지 섹션에서 다시 시뮬레이션(Resimulate) 버튼을 클릭합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
Tree_00 스태틱 메시 폴리지로 돌아가 콜리전(Collision) 섹션을 접고 클러스터링(Clustering) 섹션을 확장한 후 스텝 수(Num Steps) 를 0 으로 설정하여 크기와 나이가 모두 같은 나무를 얻든 다음 다시 시뮬레이션(Resimulate) 버튼을 누릅니다. 모두 완료하면 다음 이미지와 비슷한 모습이 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
클러스터링은 밀도, 나이, 근접성 등 여러 프로퍼티를 사용하여 지정한 폴리지 타입 오브젝트의 메시 인스턴스가 프로시저럴 폴리지 스포너 내에서 배치되고, 그룹화되고, 확산되는 방식을 결정합니다.
나무 사이에 공간이 있기는 하지만 전반적으로 밀도가 너무 높아 보입니다. 이를 수정하기 위해 초기 시드 밀도(Initial Seed Density) 를 0.25 로 설정하고 다시 시뮬레이션(Resimulate) 버튼을 클릭합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
보시는 바와 같이 초기 시드 밀도를 0.25로 설정하면 숲의 밀도가 크게 줄어듭니다. 나무를 1년 동안만 성장시키고 확산시키기 때문입니다. 이를 수정하기 위해 스텝 수(Num Steps) 를 다시 3 으로 설정하여 나무를 3년 동안 성장시키고 확산시키도록 한 후 다시 시뮬레이션(Resimulate) 버튼을 클릭합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
성장(Growth) 섹션을 확장하고 다음과 같이 파라미터 세팅을 설정합니다.
최대 수명(Max Age) : 20.0
최대 프로시저럴 스케일(Procedural Scale Max) : 10.0
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
성장(Growth) 섹션에서는 폴리지 타입 오브젝트의 메시 인스턴스가 시간이 지나면서 성장하고 더욱 커지는 방식을 조정할 수 있습니다.
마지막으로 인스턴스 세팅(Instance Settings) 의 컬 디스턴스(Cull Distance) 옵션에서 최대(Max) 값을 20,000 으로 설정한 후 다시 시뮬레이션(Resimulate) 버튼을 클릭합니다. 모두 완료하면 다음 이미지와 비슷한 모습이 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
인스턴스 세팅(Instance Settings)에서는 폴리지 타입 오브젝트의 메시 인스턴스가 레벨에 표시되는 방식을 조정할 수 있습니다. 인스턴스 세팅(Instance Settings) 내에서는 컬 디스턴스(Cull Distance), 섀도잉(Shadowing), 콜리전(Collision) 등의 여러 프로퍼티를 설정하거나 조정할 수 있습니다.
4 - 여러 개의 폴리지 타입 오브젝트 사용하기
버추얼 숲에 다른 종의 나무를 추가하면 사실성을 높이고 전반적인 룩 앤드 필을 향상하는 데 큰 도움이 됩니다. 프로시저럴 폴리지 스포너 를 사용하면 여러 개의 폴리지 타입 오브젝트 를 스폰하여 하나의 프로시저럴 폴리지 스포너 로 만들 수 있어 전체 숲에 다양한 나무를 대량으로 스폰할 수 있습니다. 다음 섹션에서는 여러 개의 폴리지 타입을 사용하기 위해 프로시저럴 폴리지 스포너를 설정하는 방법을 살펴봅니다. 이때 이전 단계에서 사용한 PFT_00 레벨을 계속해서 사용하게 됩니다.
콘텐츠 브라우저(Content Browser) 내에서 Tree_00 스태틱 메시 폴리지를 선택한 후 키보드의 Ctrl + W 를 눌러 Tree_01 이라는 이름으로 복제합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
새롭게 생성한 Tree_01 스태틱 메시 폴리지를 열고 메시(Mesh) 섹션에서 메시를 ScotsPineTall_01 스태틱 메시로 변경합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
콘텐츠 브라우저(Content Browser)에서 프로시저럴 폴리지 스포너를 열고 폴리지 타입(Foliage Types) 섹션을 확장합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
더하기 부호 아이콘을 클릭하여 다른 폴리지 타입 오브젝트를 입력하는 옵션을 추가합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
콘텐츠 브라우저(Content Browser)에서 Tree_01 스태틱 메시 폴리지를 선택하고 폴리지 타입 오브젝트(Foliage Types Object)에 드래그하거나, 화살표 아이콘을 눌러 선택한 스태틱 메시 폴리지를 프로시저럴 폴리지 스포너에 로드합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
레벨에 배치된 프로시저럴 폴리지 스포너를 선택하고 다시 시뮬레이션(Resimulate) 버튼을 클릭합니다. 모두 완료하면 다음 이미지와 비슷한 모습이 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
숲의 모습을 더 흥미롭게 연출하기 위해 Tree_01 스태틱 메시 폴리지를 열고 다음과 같이 파라미터 값을 조정합니다. 아래에 나열된 숫자와 옵션이 선택된 이유는 이미 사용 중인 스태틱 메시 폴리지 인스턴스로 흥미로운 클러스터링과 성장 인터랙션을 보여주는 숲을 생성할 수 있기 때문입니다. 그러나 이런 숫자와 세팅은 필요에 따라 얼마든지 변경할 수 있습니다.
스텝 수(Num Steps): 4
초기 시드 밀도(Initial Seed Density): 0.125
평균 스프레드 거리(Average Spread Distance): 100
셰이드 안에서 성장 가능(Can Grow in Shade): 활성화
셰이드에서 스폰(Spawns in Shade): 활성화
최대 수명(Max Age): 15
오버랩 우선순위(Overlap Priority): 1
프로시저럴 스케일(Procedural Scale): 최대 5.0
세팅이 조정되면 프로시저럴 폴리지 스포너에서 다시 시뮬레이션(Resimulate) 버튼을 클릭합니다. 그러면 다음 이미지와 비슷한 모습이 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
5 - 프로시저럴 폴리지 블로킹 볼륨 구현하기
프로시저럴 폴리지 블로킹 볼륨(Procedural Foliage Blocking Volume) 은 레벨에 배치 가능하고 원하는 크기로 스케일 조절 가능한 볼륨 액터로서, 프로시저럴 폴리지 스포너가 프로시저럴 폴리지 블로킹 볼륨 바운드 내에 폴리지 타입 오브젝트를 스폰하는 것을 막습니다. 다음 섹션에서는 프로시저럴 폴리지 블로킹 볼륨 을 레벨에 추가하는 방법과 이 액터를 사용해 폴리지 메시의 스폰을 막는 방법을 살펴보겠습니다. 이때 이전 단계에서 사용한 PFT_00 레벨을 계속해서 사용하게 됩니다.
먼저 액터 배치(Place Actors) 패널에서 Proc 를 검색어로 사용하여 프로시저럴 폴리지 블로킹 볼륨(Procedural Foliage Blocking Volume) 을 검색합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
프로시저럴 폴리지 블로킹 볼륨을 선택하고 액터 배치 패널에서 레벨로 드래그합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
프로시저럴 폴리지 스포너의 뒤쪽 부분에 폴리지 메시가 스폰되는 것을 중단하려면 다음 위치 및 스케일 값을 사용하여 프로시저럴 폴리지 블로킹 볼륨을 이동하고 스케일을 조정합니다.
위치 X: 5430.0cm
위치 Y: -3900.0cm
위치 Z: 200.0cm
스케일 Z: 41.75
스케일 Y: 65.5
스케일 Z: 41.75
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
이제 레벨에 있는 프로시저럴 폴리지 스포너를 선택하고 디테일(Details)에서 다시 시뮬레이션(Resimulate) 버튼을 클릭합니다. 다시 시뮬레이션(Resimulate) 작업이 완료되면 프로시저럴 폴리지 블로킹 볼륨과 교차하던 뒤쪽 부분의 나무가 모두 없어집니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
위의 이미지에서 전후 결과를 비교할 수 있습니다.
이미지 번호
결과
1:
프로시저럴 폴리지 블로킹 볼륨 추가 전
2:
프로시저럴 폴리지 블로킹 볼륨 추가 후
6 - 직접 해보기
지금까지 프로시저럴 폴리지 툴의 기능을 살펴보았습니다. 이제 프로시저럴 폴리지 툴에 관해 배운 내용을 바탕으로 아래 나열된 툴을 사용하여 다음 이미지와 비슷한 모습의 레벨을 만들어보세요.
스태틱 메시 폴리지 대신 폴리지 액터를 사용해보세요.
그래스 툴(Grass Tool)을 사용하여 풀, 꽃, 덤불이 무성하게 자란 랜드스케이프를 연출하세요.
랜드스케이프 스컬프팅(Landscape Sculpt) 툴을 사용하여 언덕, 산, 호수 등을 추가하면서 랜드스케이프 지형의 룩 앤드 필을 표현하세요.
랜드스케이프 머티리얼(Landscape Material)을 생성해 랜드스케이프 지형에 다양한 텍스처를 페인팅하여 랜드스케이프 표면에 시각적 다양성과 디테일을 가미하세요.
디렉셔널 라이트(Directional Light)를 조정하여 이른 아침이나 늦은 오후에 볼 수 있는 레벨 라이팅을 연출하세요.
레이 트레이스된 디스턴스 필드 소프트 섀도(Ray Traced Distance Field Soft Shadows)와 다이내믹 섀도를 활용하는 완전히 동적인 라이팅 솔루션을 사용하도록 레벨 라이팅을 설정하세요.
폴리지 시스템(Foliage System) 툴을 사용하여 프로시저럴 폴리지 툴로 배치된 폴리지 메시를 제거하거나 관련 배치, 회전, 스케일을 미세조정하여 의도한 모습을 정확하게 연출해보세요.
다른 사람에게 창작물을 선보이세요. 카메라(Camera)와 시퀀서(Sequencer)를 함께 사용하여 레벨의 비디오를 렌더링하고 사람들과 공유하면 됩니다.