안녕하세요 에픽게임즈 코리아 권호찬입니다.
이번 에픽 라이브에서는 언열 엔진 5.7에서 추가된 나나이트 폴리즈와 프로시저럴 베지테이션 에디터를 이용해서 이 식생 베리에이션을 만들어 보고자 합니다.
나나이트 폴리즈와 프로시저럴 베지테이션 에디터에 대한 자세한 내용은
에픽게임즈 코리아 유튜브 채널에서 저희가 얼마 전에 진행했던
언리얼 엔진 5.7 출시 웨비나를 통해서 설명하고 있으니까요.
이 영상을 참고하시면 좋을 것 같습니다.
나나이트 폴리지를 사용하기 위해서는 몇 가지 사전 세팅이 필요한데요.
우선 프로젝트 세팅으로 가셔서 나나이트로 검색하면 나오는 나나이트 폴리지 옵션을 활성화해야 합니다.
또한 플러그인 창을 열고 나나이트로 검색해서
이 프로시저럴 베지테이션 에디터와 다이내믹 윈드도 활성화해 주겠습니다.
그리고 프리셋을 얻기 위해서는
팹에서 퀵셀 메가 플랜츠 애셋들을 다운받아야 합니다.
메가 플랜츠는 PVE를 통해서 특정 종의 식생을 구성하는 데 필요한
어떤 모든 애셋과 데이터 세트의 패키지인데요.
팹에서 메가 플랜츠로 검색하면 현재 8종을 다운받으실 수 있습니다.
이렇게 클릭하고 프로젝트에 추가 누르면 자신의 프로젝트에 추가할 수 있는데요.
참고로 저희는 팹을 통해서 100여종 이상의 다양한 식생군에 대한 메가플랜츠를 지속적으로 업데이트할 계획입니다.
오늘 세션에서 제가 소개하는 프리셋을 변형하는 방식만으로도 대부분의 프로젝트에서 필요한 모든 식생을 여러분들이 만들고 관리하실 수 있습니다.
물론 유니크한 식생이 필요한 경우에는 추후에 해당 기능이 추가되면 여러분들이 DCC에서 모델링을 한다든지 하는 어떤 비싼 과정 없이도
PV에서 완전히 절차적으로 처음부터 제작하실 수도 있고요.
이번 시연에서는 알렉포 소나무를 이용해 볼 건데요.
메가플랜츠를 추가하면 보시는 대로 폴리지 인스턴스 컴포넌트를 위한 나나이트 메시들이 있고요.
또 머트리얼과 텍스트 폴더에는 나무줄기와 잎을 위한 재질들이 제공됩니다.
그리고 Tree 언더바, Rf 언더바, Pine 언더바, 01 폴더를 보면
Procedural Vegetation Asset과 Preset Data, Variation Skeletal Mesh들, 그리고 Skeleton Asset들이 있습니다.
우선 Procedural Vegetation Asset을 다른 폴더에 복사하고요.
헛갈리지 않게 이름을 변경하고 열어보겠습니다.
프로시저럴 베지테이션 에셋을 처음부터 생성해도 되는데요.
보통은 지금 한 것처럼 만들고자 하는 종과 형태의 가장 유사한 프로시저럴 베지테이션 에셋을 여러분들이 이렇게 복사해서 사용하시는 것이 훨씬 효과적입니다.
지금 보시는 것이 바로 프로시저럴 베지테이션 에디터 즉 PVE입니다.
왼쪽은 말 그대로 이 결과물을 확인하는 뷰포트고요.
오른쪽에 있는 것이 바로 노드를 구성하는 그래프,
그리고 그 아래에 있는 것이 이렇게 그래프에서 선택한 노드의 파라미터를 조절할 수 있는 디테일 창입니다.
우선 작업을 시작하기에 앞서서 작업에 도움될 만한 팁을 몇 가지 알려드릴 텐데요.
첫 번째로 지금 뷰포트를 움직여 보면 소나무같이 이렇게 잎이 극단적으로 얇고 가는 경우에는
지금 훨씬 가까운 거리에서도 잎이 사라져서 작업하기가 불편하죠.
이런 경우에는 폴리지 팔레트라는 노드를 선택하시면요.
현재 식생에서 사용되고 있는 전체 폴리지 메시를 확인할 수 있는데요.
모두 선택하고 이렇게 다수의 에셋 옵션을 선택할 때
마우스 오른 버튼 클릭하고
에셋 액션 프로퍼티 매트릭스에서 선택 편집을 선택한 다음에요.
이렇게 열리는 창에서 매트릭스 창에서
오른쪽 나나이트 세팅 탭에서
쉐이프 보존 옵션을 복셀라이즈로 변경하고 저장해서
선택된 모든 에셋들에 일괄적으로 적용해줍니다.
다시 이제 PV로 돌아가서 뷰포트를 움직여 보면
아까하고 달리 잎이 거리가 멀어져도 볼륨을 잘 유지하고 있는 것을 확인할 수 있습니다.
또한 PV에는 지금 만들고 있는 나무의 크기를 정확히 가늠하기가 어렵기 때문에
뷰포트 오른쪽에 톱니바퀴 모양의 아이콘을 누르고요.
마네킹 옵션을 활성화해 놓으면 이렇게 마네킹이 나와서
상대적인 크기를 파악하기가 굉장히 편합니다.
마지막으로 이렇게 노드를 선택해 보면
이렇게 자동으로 노드에 맞는 뷰포트 모드가 변하는데요.
작업하다 보면 이 뒤쪽 노드를 보면서
앞쪽 노드를 수정해야 될 경우도 있습니다.
그때는 뷰포트에 표시되길 원하는 노드를 선택하고
Ctrl L 을 누르면 됩니다.
우선 어떻게 베리에이션을 만들지를 먼저 결정해야겠죠
이 세션에서는 지금 여기 보이는 이 A 베리에이션을 가지고
현재는 이제 전체적으로 나무가 너무 동그란 모양이니까요
가지도 좀 섞어내고
또 전체적으로 실루엣이 좀 더 납작하면서
이 큰 가지 부분들이 좀 더 분리되어 있게 만들어 보겠습니다
따라서 프리셋 노드의 이 A에 연결된 노드들을
모두 이렇게 선택하고
Ctrl-C, Ctrl-V를 복사하고 다시 프리셋 노드의 A출력편에 연결해줍니다.
기존 노드를 수정하지 않고 이렇게 복제하는 이유는요.
당연히 지금 남아있는 기존 노드로 제작된 이 식생도 계속 유지하고 관리하기 위해서입니다.
우선 가지를 솎아내기 위해서는 Remove Branch 노드를 사용해야 되는데요.
이 빈 곳에 오르몬 클릭하고 스페이셜 탭을 보면 형태를 변경하기 위한 노드들이 있습니다.
여기서 Remove Branch Node 선택해주고요.
참고로 이렇게 줄기와 가지의 형태를 변형하는 노드들은
입출력 핀이 모두 하얀색이고요.
보시는 대로 이렇게 Mesh Builder라는 노드 앞에 모두 연결해주어야 됩니다.
노드를 선택하면 뷰포트의 포인트들이 보이게 되는데요.
이게 바로 프리셋 베리에이션의 줄기와 가지가 가지는 구조입니다.
사실 이 상태에서는 나무의 실제 모습을 확인하기가 굉장히 어려우니까요.
아까 알려드린 대로 이렇게 아웃풋 노드 선택하고 컨트롤에 눌러서 프리뷰를 고정하겠습니다. 그리고 다시 리무브 브랜치 노드로 와서 디테일 창을 보면요. 어떤 기준으로 가지를 쳐낼 건지 또 얼마나 쳐낼 건지를 결정할 수 있습니다.
랭스는 말 그대로 가지의 길이를 기준으로 하고요.
또 라디어스는 반지름을 기준으로 한계치 이하의 값을 가진 가지들을 모두 제거해 버립니다.
라이트는 식생이 자라면서 빛을 받은 양을 시뮬레이션해서요.
그 양을 기준으로 가지를 제거합니다.
라이트를 선택하고 조정해주겠습니다.
이렇게 적당한 수치를 움직이면서 확인하면 됩니다.
그리고 만약에 필요하다면 당연히 이 노드를 하나 더 추가해서
이런 다양한 옵션들을 중복해서 적용할 수도 있습니다.
다음으로 좀 더 넓고 납작하게 만들기 위해서
그래비티 노드를 사용할 건데요.
오른번트 클릭해서 그래비티 노드 추가하고
하얀색 라인에 이렇게 연결해 줍니다.
그리고 그래비티의 수치를 높이면요.
Z축 아래로 가지가 처지는 걸 볼 수 있는데요.
이 상태에서 가지 끝부분이 너무 많이 처지면 안 되니까요.
가지 끝부분을 다시 위로 올려주기 위해서
그래비티 노드를 이렇게 하나 더 추가하고
이번에는 이 그래비티 노드의 Z축 방향을 위로 향하도록
이 값을 1로 바꾸고요.
그래비티 값을 준 다음에
아래쪽에 앵글 컬렉션 수치를 조금 높여서
가지의 말단 부분만 위로 향하도록 해주겠습니다.
지금 보시는 것처럼 이렇게 같은 그래비티 노드를 복합적으로 활용하면
다양한 형태를 만들 수 있습니다.
참고로 이렇게 그래비티 노드의 모드를 보면
포토트로픽 옵션이 있는데요.
이거는 빛의 반응에서 가지가 위쪽으로 휘는 현상을 제안합니다.
Z축으로 그래비티를 하는 것보다
이게 좀 더 자연스럽고 좀 더 비정형적으로 위를 향하게 해주니까요.
이 옵션을 선택하셔도 좋습니다.
그리고 지금 나무줄기가 너무 높잖아요. 나무줄기를 좀 짧게 만들건데요. 이렇게 줄기나 가지의 일부분을 잘라내는 기능이 지금 보시는 커브입니다.
추가하고 줄기의 높이를 줄이기 위해서는 From Bottom 옵션 선택하고 수치를 조절하면 이렇게 밑둥에서부터 줄기가 줄어들게 됩니다.
참고로 length from root는 나무 밑등으로부터의 거리를 기준으로
끝 말단의 가지들을 잘라내고요
z-position은 나무의 절대 높이를 기준으로 잘라냅니다
때문에 이 옵션들을 잘 활용하면
관상목 같은 종에서 조경작업을 한 것 같은 효과를 줄 수도 있습니다
그리고 나무의 형태를 변형하기 위해서 기울기 노드를 추가하겠습니다
원래 이 노드는 이렇게 기울어진 땅에서 식생이 자랄 때
이렇게 휘는 모양을 반영해서 보여주는 노드인데요
이렇게 나무 형태 자체를 변형하는 데도 사용 가능합니다
슬로프 앵글과 슬로프 디렉션을 적당히 수정하면서
마음에 드는 형태를 찾으시면 됩니다
마지막으로 전체적인 크기를 조절하려면요
스케일 노드를 사용하면 됩니다
지금 나무가 생각보다 조금 커졌으니까요
저는 0.9 정도로 조금 줄여 주도록 하겠습니다.
자 이렇게 몇 가지 스페이셜 로드를 가지고 이 소나무의 줄기와 같이 형태를 수정해 봤는데요.
이렇게 만들어진 포인트 구조를 가지고 실제 지오메트리 메쉬로 변형해주는 노드가 바로 이 메쉬빌더입니다.
우선 머테리얼에서는요. 머테리얼 자체를 바꿀 수도 있지만
기본 제공되는 머테리얼에서도 나무 껍질의 모양을 변경할 수 있습니다.
기본 이제 인덱스가 4개가 있는데요.
줄기가 가지와 생성될 때 이렇게 생성 레벨에 따라서
인덱스 0부터 순차적으로 적용되고요.
각 인덱스에 여기 있는 X레인지 값을 조절하면요.
예를 들면은 인덱스 0의 경우에는 X레인지가 0에서 0.5까지 돼 있는데요.
어트리얼을 열어보면은 해당 인덱스는 여기서 중간까지 영역을 사용하게 되는 거죠.
물론 뭐 대부분의 경우에는 이걸 수정하실 필요는 없긴 합니다.
자 다음으로 메시 세팅을 보면요.
포인트 리무벌과 세그먼트 리무벌이 있는데
사실 뭐 나나이트 폴리지를 사용하는 경우에는
거의 수정하실 필요는 없고요.
그 아래에 있는 및 맥스 디비전은
가장 얇은 가지와 가장 굵은 가지가 몇 개의 면으로 나눠지는지
지정하는 값입니다.
뷰포트에서 뷰 모드를 라이팅 포함 와이어 프레임으로 선택하고
예를 들어서 여기 맥스 값이 64인데요.
이렇게 30으로 하면 뷰포트에서 면이 반으로 줄어드는 걸 볼 수 있습니다.
다시 돌려놓겠습니다
아래쪽에 있는 프로필은
줄기의 전반적인 두께를 조절할 수 있는데요
프로필 폴어프 그래프를 보면
이미 기본값이 오른쪽이 밑둥이인데
오른쪽으로 그래프가 쫙 올라가죠
그래서 이렇게 나무가 아래쪽으로 내려갈수록 굵어지는 겁니다
당연히 여러분들이 그래프를 수정하면
전반적인 두께를 조절 가능합니다
예를 들면 적당한 곳에서
오른 버튼 클릭해서 키를 추가하고요
이렇게 움직여서 나무의 줄기의 어떤 부분 정도인지 확인해서
두께 비율을 조절하고
아래쪽에 있는 프로필 스케일로 전체적인 두께도 조절 가능합니다.
마지막으로 디스플레이스먼트 세팅은
말 그대로 설정되어 있는 디스플레이스먼트 텍스처를 이용해서
줄기의 표면에 굴곡을 추가하는 기능인데요.
이 줄기의 표면을 좀 더 울퉁불퉁하게 하고 싶으시면
스케일과 바이어스 등을 조절하시면 됩니다.
메시 빌더 뒤에 있는 이 본 리덕션 노드는
자동으로 생성되는 본의 수를 최적화해주는 노드입니다.
선택해보면 현재 본이 한 2천여 개 정도가 생성되고 세팅되어 있는데요.
이 값을 이렇게 조정해보면 500여 개까지 줄어드는 것을 볼 수 있습니다.
당연히 본 수치야 적을수록 성능이 유리하긴 한데요.
그렇다고 지금 단계에서 무작정 줄일 필요는 없고
추후에 다수 배치해보시고 성능에 이슈가 생기면
그때 줄여도 충분합니다.
실제로 저희가 SOU에서 공개한
더위처4 어니얼 엔진 5 테크 데모 경우를 보면요.
평균적으로 한 화면에
한 20여만 그루 이상의 나무가 동시에 렌더링되면서
프레임마다 13만 개 이상의 본을 처리하고 있는데요.
노말 플레이스테이션5에서 0.1ms 이하였습니다. 이 폴리지 팔레트는 줄기가 가지에 지정된 위치에 어떤 메시드를 어태치할지 지정하는 노드입니다.
뒤에 연결된 폴리지 디스트리뷰터라는 폴리지 분포 방식을 결정하는 노드와 함께
이 식생의 모양에 가장 큰 영향을 미칩니다.
예를 들면 이 폴리지 팔레트와 폴리지 디스트리뷰터 노드를 선택하고요.
Ctrl-C, Ctrl-V로 복제한 다음에 폴리지 팔레트에서 메시를 지금 있는 소나무가 아니라 노르웨이 메이플의 어떤 인스턴스 메시들을 교체하게 되면요.
지금 보시는 것처럼 같은 형태지만 전혀 다른 식생이 되어버립니다.
폴리지 디스트리뷰터를 살펴보면요. 우선은 애틀렌 한 개치 옵션이 있는데요.
에틸렌은 실제 식생에서 잎이나 줄기가 늙거나 시들고 떨어지는데 영향을 미치는 호르몬 명칭인데요.
이 옵션을 조절하면 가지 전체에서 폴리지가 풍성하게 달리거나
또 가지 시작 부분부터 잎이 떨어져가는 형태를 보여주게 됩니다.
그 아래에 있는 분포 오버라이드는 기존의 프리셋 베리에이션의 기본값을 그대로 사용할 건지
아니면 이제 이 노드 파라미터를 통해서 덮어 씌울지를 결정하는 옵션입니다.
이 옵션을 변경할 때 좀 주의점이 있는데요.
생각보다 원래 식생과 많이 달라 보이는 경우가 있는데요.
이런 경우에 완벽하게 원하는 대로 수정하는 것이 아직은 어렵습니다.
그래도 이번 세션에서 일단 부포 오버라이드를 활성화하고
파라미터들을 좀 수정해 보도록 하겠습니다.
가장 먼저 확인해야 될 것은 바로 이 폴리지 팔레트에서 지정된 폴리지 메시의 형태입니다.
참고로 저는 이런 인덱스 배치 상황을 디버깅하기 위해서 별도의 폴리지 팔레트에 지금 보시는 큐브 메시와 서로 다른 색상들을 지정해놓고 이렇게 디버깅용으로 사용하고 있습니다.
이 폴리지 팔레트의 디버깅용을 디스트리뷰터와 연결해서 확인해 보면요.
빨간색과 파란색, 즉 인덱스 0과 4를 가지 끝단의 잎으로 사용하고 있고
또 잎이 없는 죽은 형태의 1, 2, 3 인덱스의 폴리지는 그냥 중앙부에 모아놓은 걸 알 수 있습니다.
여기에 폴리지 디스트리뷰터 노드의 분포 오버라이드 옵션을 활성화해 버리면요.
전체 폴리지 인덱스를 그냥 랜덤하게 섞어버리기 때문에 모양의 이질감을 주게 됩니다.
이런 이질감을 줄이려면요. 인덱스 1, 2, 3도 지금 0이나 4와 같이 잎을 가진 메시로 바꿔서 서로 뒤섞여 있어도 티가 안나게 하면 되겠죠.
여기서는 그냥 인덱스 0, 4의 메시들을 1, 2, 3에도 적당히 이렇게 지정해 주겠습니다.
이 에틸렌 한계치를 조금 낮춰서 폴리지가 끝부분에 집중되도록 해주겠습니다.
다음으로 인스턴스 간격을 0.4 정도로 낮춰서
전체적인 가지의 밀도를 조금 조절하고요
추가로 가지 위치에 따라 끝부분에 조금 잎이 더 풍성해 보이도록요
인스턴스 커브도 조금 조절해 주겠습니다
커브는 오른쪽으로 갈수록 가지 끝입니다
스케일 세팅에서는 잎이 전반적으로 좀 커 보이니까요
0.85 정도로 좀 줄여주고요
마무리로 지금 잎이 너무 균일하니까요
랜덤 스케일 최소 최대를 0.8에서 1.1 정도로
홀리지 크기의 랜덤 크기를 조금 적용하겠습니다
다음은 이제 벡터 세팅인데요
우선 입 겨드랑이 각도는 가지와 폴리지가 서로 가지는 각도값입니다.
오버라이드를 끄면 이게 완전 그냥 무작위라서 여기서는 오버라이드를 켜고요.
램프 이펙트를 1로 해서 램프값을 100% 반영하도록 하고
램프 그래프를 지금 보시는 것처럼 오른쪽으로 갈수록 1로 커지게 해서
중앙까지는 폴리지가 거의 평행하게 나오지만
끝으로 갈수록 가지가 지정된 F상한값으로 이렇게 펴지는 모양으로 만들어주겠습니다.
마지막은 입 차례인데요.
이 옵션은 이 이미지에 보면 아시겠지만 가지에 입이 나는 규칙을 설정합니다.
대표적으로는 이 얼터나이트가 어긋나기, 어포짓이 마주나기,
잎이 마주보거나 하는 거죠. 그리고 필드가 돌려나기입니다.
여기서는 이 소나무 형태인 돌려나기를 골라봤습니다.
이번 세션에서는 제가 이렇게 시간 관계상 적당히 옵션과 수치를 그냥 지정하고 넘어가지만
여러분들이 직접 작업하실 때는 이 파라미터들을 왔다 갔다 하면서 계속 수정해서
보다 자연스러운 느낌을 주는 식생을 이렇게 만들어 보셔야 됩니다.
이렇게 만든 식생을 최종적으로 출력하기 위해서 필요한 노드가 바로 아웃풋 노드인데요
사용법은 아주 간단합니다
노드 추가하거나 이렇게 복사해서 마지막에 연결하고요
저장될 폴더 선택 그리고 저장될 메시 이름만 지정하면 되고요
그 다음 옵션들은 스테팅 메시, 스켈레타 메시 선택하거나
쉐이프 보존 방식 결정하거나 콜리전, 다이나믹 윈드 세팅 등이 있는데요
이건 다 그냥 기본값으로 두시면 됩니다
그리고 이렇게 출력할 아웃풋들을 여러분들이 선택하고 이 툴바에 Export 누른 다음에요.
여기 Export Selected Type 메뉴에서 Export 누르시거나 아니면 이렇게 배치 Export 타입으로 바꿔서
이 그래프에 있는 전체 아웃풋 노드를 대상으로 여러분들이 원하는 것을 지정해서 Export 하시면 됩니다.
TV를 이용하면 이렇게 쉽고 간단하게 식상의 베리에이션을 만들 수도 있고요.
또 이렇게 추가로 다양한 베리에이션들을 복제해서 더 많이 늘리고 관리할 수도 있습니다.
예를 들면 방금 만든 노드들을 통째로 Ctrl-C, Ctrl-V 하고
지금 보면 프리셋 베리에이션, 여기서는 이번엔 B에 연결해 볼텐데요.
B에 연결한 뒤에 아웃풋 노드 메시 이름 변경하고
그 다음에 리무브 브랜치 노드 같은 거 키보드의 E키를 눌러서 비활성화 하거나 활성화하고 기타 그래비티 라든지 기울기 라든지 줄기나 가지를 구성하는 다양한 스페이셜 노드들을 수정해 보고요
또 폴리지 디스트리뷰터 가서 다양한 파라미터들을 좀 조절해 보고 인스턴스 강경도 줄여 보고 이런 것들을 하면서
마지막으로 이제 Output Node 선택해서 Export만 하면요.
바로 베리에이션들이 확장돼서 추가될 수 있습니다.
그리고 이렇게 만들어진 다양한 베리에이션들은
하나의 프로시저를 Vegetation 에셋에서 통합해서 관리할 수 있게 되는 거죠.
또한 당연하지만 이 Workflow는 사실 극사실적인 식생뿐만이 아니라
NPR 스타일의 식생에도 적용이 가능합니다.
제가 지금 복사해서 붙여 놓는 이 노드들은요.
미리 폴리지 메시라든지 줄기 머트리얼들을 제가 툰 스타일로 교체했고요.
또 파라미터들을 조금 수정한 노드들인데요.
그냥 지금 보시는 것처럼 프리셋에 연결만 해도
바로 툰 스타일의 식생 베리에이션들을 만들어서 활용할 수 있습니다.
메시랑 모터리얼 그리고 몇가지 파라미터만 수정했는데도 생각보다 툰 느낌, 스타일라이즈드 느낌의 나무가 잘 만들어지는 걸 볼 수 있습니다.
이렇게 생성한 식생들을 PCG로 레벨에 배치하는 방법도 간단히 소개해드리겠습니다.
주의하실 점은 이 부분은 여러분들한테 이해시키거나 하는게 아니라요.
앞에서 만든 나나이트 폴리지를 레벨에 한번 대량으로 배치해보는게 목적입니다.
PCG를 처음 다루신다면 당연히 이해 못하는 거고요
그러니까 어렵다고 너무 좌절하지 마시고
차근차근 따라해 보시면 배치해 보시는 것은 전혀 문제가 없으실 겁니다
우선은 기본 레벨 하나 여시고요
그 다음에 이렇게 새로 추가된 PCG 모드로 변경하면요
이렇게 PCG를 여러분들이 툴처럼 사용할 수 있게 됩니다
스플라인 탭에서 Draw Spline Surface를 선택하면
아래쪽에 에어리어 툴 PCG가 있는데요.
보시는 것처럼 이 PCG는 현재 스태팅 메시나 액터만 추가할 수 있게 되어 있습니다.
여기에 나나이트 폴리지를 적용할 수 있도록 PCG를 한번 수정해 보도록 하겠습니다.
제공되는 에어리어 툴을 이렇게 찾아서요.
적당한 폴더에 복사하고 이름을 변경해 줍니다.
주의하실 점은 엔진 폴더에 있는 파일들은 웬만하면 직접 수정하거나 이동하면 안 되고요.
이렇게 복제해서 사용하셔야 합니다.
더블클릭해서 파일을 여신 다음에
그래프 세팅 활성화되어 있는 상태에서
디테일 창에 툴 데이터의 디스플레이 네임을 수정해 줍니다.
여기 입력된 이름이 바로 PCG 모드에서
여러분들한테 노출되는 툴의 이름이 됩니다.
적당히 고치고 저장하고 레벨로 돌아가서
옆에 있는 탭 눌렀다가 다시 돌아와 보면요.
방금 수정한 PCG의 Display Name이 보이게 됩니다
다시 PCG로 돌아가서요
그래프 파라미터에서 Spawn Actors의 VL 값을 참으로 변경해 주고요
그 밑에 있는 Actor Classes 배열에 이 꺽쇠 아이콘을 누르고
파라미터의 Type을 Skeleton Mesh Object Reference로 변경해 주고요
Property 이름은 Tris로 변경합니다
Ctrl F 눌러서 검색창 열고요.
Match로 검색하면 Match and Set Attribute 노드가 나오는데요.
이 노드에서 Match Weight Attribute 옵션을 비활성화합니다.
마지막으로 그래프 맨 뒤로 가서 빈 곳에 오른 번트 클릭하고
Instance로 검색해서 Instanced Skined Mesh Spawner 추가하고요.
Spawn Actor 대신 연결합니다.
그리고 이 모드에서 메시지 어트리뷰트를
아까 프로퍼티 이름 저희가 바꿨던 트리스
트리스로 고쳐주고요
아래의 트랜스폰 프로바이더에
윈드 트랜스폰 프로바이더 선택해주고 저장하면 됩니다
다시 레벨 에디터로 나와서요
패시지 모드에서 툴 선택된 채로
레벨에 이렇게 드래그해서 스플라인 그려주고
그리고 나서 이제 트리스에
나나이트 폴리지 식생들을 이렇게 배열에다가 계속 추가해 주시면 됩니다.
많이 추가하시면 그것들이 섞여서 배치가 되고요.
그리고 지금 나무 밀도가 너무 높으니까
위쪽 샘플링에 포인츠 퍼 스퀘어드 값을 0.1에서 0.01 정도로 낮추고
글로벌 트랜스폰에서 앱솔루트 글로벌 로테이션을 활성화해서
나무가 항상 Z축을 위를 향하게 하고요.
그 다음 랜덤 로테이션 맥스 값에 Z축을 360도 입력해서 0에서 360도 사이에 랜덤하게 배치되게 하고
랜덤 스케일 팩터에 민 X축은 0.8, 맥스 X축은 1.1을 넣어서 랜덤하게 사이즈를 가지도록 합니다.
마지막으로 스냅 투 서피스 활성화하고요.
아래쪽에 맥스 디스턴스를 충분하게 10만 정도 입력해 줍니다.
이렇게 하면 고조차가 있는 땅에서도 나무들이 잘 배치됩니다.
그리고 마지막으로 수락을 누르면 지금 보시는 것처럼 레벨에 나나이트 폴리지가 대량으로 배치되는 걸 볼 수 있습니다.
PCG에 대한 학습과 활용 방법은 이후에 기회가 된다면 제가 별도의 세션을 통해서 한 번 더 진행해 보도록 하겠습니다.
지금까지 나나이트 폴리지와 프로시저럴 베지테이션 에디터를 이용해서 식생들을 만들었고요.
또 엔진에서 제공되는 PCG를 수정해서 레벨에 배치도 해봤습니다.
이를 통해서 여러분들의 프로젝트와 작업이 더 매력적이고 더 높은 경쟁력을 가졌는데
저희가 도움이 되었기를 바라면서 이번 에픽 라이브는 마치도록 하겠습니다.
감사합니다.