TECHARTNOMAD | TECHARTFLOWIO.COM

TECH.ART.FLOW.IO

[번역]테크니컬 아트 노트 | 언리얼 5 프로시저럴 제너레이션 프레임워크의 기본에 대한 가이드.

jplee 2024. 5. 14. 23:15

역자의 말.

2015년 넷이즈 항저우 연구센터에 합류 했을 때 2016년 기술 촉진 계획에 후디니와 절차적 생성이라는 주제를 넣고 발표 한 적이 있는데요... 그 당시에는 엔진센터 센터장의 의견에 따라 2016년 기술 촉진 목표에 넣을 수 없었습니다. 이유는 아티스트에게 거부감이 큰 프로세스 같이 보인다고요. 그래서 결국 게임 제작 프로세스에 넣지 못했는데요. 당시 자체 엔진으로 프로젝트를 진행 하던 터라서 케나다에 본사를 둔 SIDEFX 프러적트 메니저도 미국 센프란시스코에서 만나고 그랬지만 결국 자체 엔진에 후디니 PCG 모듈을 통합 할 기회는 사라졌지요. 2018년 겨울 즈음 부터 중국에 PCG 바람이 솔솔 불어왔는데요. UBISOFT 가 중국에 진출 한 것이 20년도 넘었었기 때문에 중국 게임 개발자들은 UBISOFT 의 차세대 기술을 맹신? 하는 경향이 있었습니다. UBISOFT SHANGHAI 는 프랑스 UBISOFT 가 글로벌 스튜디오를 초창기 설립 할 때 함께 오픈 한 역사가 깊은 스튜디오 중의 하나이기 때문이고 그곳에서 근무 했던 중국 엔지니어 분들이 지금도 중국 게임 개발 업계에서 맹활약을 하고 있기 때문이기도 하구요. 텐센트에 주로 그 핵심 맴버들이 높은 고위직에 많이 포진하고 있답니다. 아무튼... UBISOFT 파리 스튜디오 알엔디팀의 오픈월드 개발을 위한 절차적 생성은 실무에 많이 적용 되었고 중국 엔지니어 및 아티스트에게 많은 영감을 주게 되었구요~ 2019년 부터 본격적으로 테크아트 롤에 PCG 가 깊이 들어오기 시작했습니다. 지금도 그 연장선상에서 다양한 기사들이 지후에 올라오곤 하는데요. 매우 기본적인 것을 다루는 기사가 있어서 번역해서 올려봅니다.

다만 최근 중국 게임아트 커뮤니티(제가 운영하는.. ) 에서 최근 중국에서 가장 유행하는 기술이 무엇인가? 라는 질문을 했을 때 PCG 이야기가 나왔습니다만... 중국 아티스트 여러분들이 말 하길 실제 게임 개발과 좀 동떨어 진 유행 이라고들 하구요. PCG 를 도입하고 훈력 하고 연구 할 만큼 장기적이고 대규모 프로젝트 자체가 거의 없기 때문에 유용하게 사용 될지 아닐지에 대한 것은 회의적(懷疑的)이라고 하더군요. 굳이 배우지 않아도 된다는 현실적인 의견도 많았습니다.


저자 : 유이지

키워드: 언리얼 엔진; 프로시저럴 생성 프로시저럴 생성(PCG); 지형 랜드스케이프 랜드스케이프; 식생 폴리지; 테크니컬 아트 테크아트;

인용: "언리얼 엔진 5용 프로시저럴 콘텐츠 생성 프레임워크(PCG)는 언리얼 엔진 내에서 자신만의 프로시저럴 콘텐츠를 제작할 수 있는 툴세트입니다. 아티스트와 디자이너는 PCG를 사용하여 건물이나 그룹 시스템 생성 등 에셋 툴부터 전체 월드에 이르기까지 임의의 복잡도를 가진 반복적인 툴을 빠르게 제작할 수 있습니다. 이 글에서는 이 PCG 프레임워크의 기본 사용법을 소개합니다. 이 글의 예제에 사용된 언리얼 엔진 5 버전은 5.3.2이며, 기본적인 언리얼 5 인터페이스 조작에 익숙해야 합니다."

01 사전 작업

프로그래매틱 콘텐츠 생성 프레임워크 플러그인(PCG 플러그인) 활성화하기

지형 생성 또는 임포트(Landscape)

랜스케이프 모드로 전환한 다음 빈 평면 지형을 새로 만들거나 높이 맵을 임포트하여 지형을 만듭니다.

절차적 생성을 위한 아트 에셋 준비

절차적 생성을 시작하기 전에 지형 머티리얼과 식생의 모델을 준비해야 합니다.

  •  
  • 지형 머티리얼은 언리얼 몰 에셋을 사용하거나 직접 제작할 수 있으며, 지형 머티리얼 제작 방법은 다른 문서를 참조하세요:
  • 식생 모델은 퀵셀 브리지에서 무료로 다운로드할 수 있으며(에픽 계정은 로그인 후 다운로드 가능), 마음에 드는 식생 모델을 개별적으로 다운로드하거나 비슷한 지리적 환경의 식생 중에서 선택할 수 있습니다. 식생을 선택하는 과정에서 식생의 성장과 분포 패턴에 대해 생각하고 연구하며 다양한 식생 유형과 크기를 선택할 수 있습니다. 다운로드한 후에는 '추가' 버튼을 사용하여 현재 프로젝트에 에셋을 추가해야 합니다.

새롭게 프로그래밍된 노드 그래프(PCG 그래프)

콘텐츠 브라우저의 우클릭 메뉴에서 새 PCG 그래프를 생성하고 레벨에 드래그한 다음 생성하려는 영역의 크기에 따라 PCG의 크기를 조정합니다.

02 기본 조작

기본 원칙에 대한 설명

공간의 표면이나 물체의 표면에서 데이터를 수집하고 샘플러를 통해 포인트 데이터로 변환한 다음, 포인트 데이터를 적용 및 필터링하고 분포와 변환을 조정한 다음 프로그래밍된 대로 사용하여 특정 물체에 대한 위치 데이터를 생성할 수 있습니다. 동시에 각 포인트는 가변 데이터를 저장하는 컨테이너로도 사용할 수 있으므로 보다 고급스럽고 복잡한 기능을 구현할 수 있습니다.

베이스 노드

  • 입력 및 출력 노드(입력 및 출력 노드)

입력 및 출력 노드 이름에서 알 수 있듯이 입력 노드는 공간 또는 오브젝트 데이터를 PCG 그래프로 전송하고, 출력 노드는 PCG 그래프에서 생성된 콘텐츠를 씬이나 블루프린트에서 불러올 수 있는 데이터로 출력합니다. 레벨의 랜드스케이프를 데이터 입력 소스로 사용하려면, 입력 노드를 확장하여 랜드스케이프 포트를 찾아 다음 작업의 데이터로 사용해야 합니다. 이 포트의 데이터는 바로 사용할 수 없으며, 아래의 샘플러 노드를 통해 사용 가능한 포인트 데이터로 변환해야 합니다. 이 노드의 입력 및 출력 포트는 모두 여러 데이터에 대한 동시 액세스를 지원합니다.

  • 표면 샘플러 노드(Surface Sampler Node)

이 노드는 공간 평면 데이터를 포인트 데이터로 변환합니다. 이 노드를 선택하면 오른쪽 패널에서 조정할 수 있는 주요 매개변수인 평방미터당 포인트 수를 위에서 아래로 볼 수 있습니다.(Points Per Squared Meter),포인트 범위(Point Extents),느슨함(Looseness),무작위 시드(Seed)。이러한 매개변수의 의미는 디버그 모드에서 시각화 지점을 확인하여 테스트할 수 있습니다. 이 노드의 입력 및 출력 포트는 모두 여러 데이터에 대한 동시 액세스를 지원합니다.

  • 밀도 필터 노드(Density Filter Node)

이 노드는 각 포인트에 포함된 밀도 데이터(밀도)를 기준으로 모든 포인트를 필터링할 수 있습니다. 기본 서피스 샘플러에서 생성된 각 포인트는 0-1 사이의 임의의 밀도 값을 무작위로 포함합니다. 디버그 모드에서 밀도가 0인 포인트는 검은색, 밀도가 1인 포인트는 흰색, 나머지 밀도 값은 포인트의 회색 값에 해당하는 것을 볼 수 있습니다. 반면 밀도 필터 노드는 최소 및 최대 범위를 조정하여 포인트의 일부를 필터링할 수 있습니다. 이 노드의 입력 및 출력 포트는 모두 여러 데이터에 대한 동시 액세스를 지원합니다.

  • 포인트 변환 노드(Transform Point Node)

때로는 포인트의 크기가 생성하려는 최종 오브젝트의 크기와 일치하지 않고 최종 오브젝트의 임의 변환을 수행하여 다양성을 얻으려면 노드 설정에서 입력 포인트를 기반으로 임의 위치 오프셋 범위, 임의 회전 범위 및 임의 크기 범위를 수행하도록 설정할 수있는 트랜스폼 포인트 노드 (Transform Point) 노드를 사용해야합니다. 이 노드는 생성된 오브젝트의 크기가 작을 때 원래 크기를 조정하는 데 사용할 수 있습니다. 이 노드의 입력 및 출력 포트는 여러 데이터에 대한 동시 액세스를 지원합니다.

  • 스태틱 메시 바디 생성 노드(Static Mesh Spawner)

이 노드는 입력 포인트 데이터를 사용하여 포인트 위치에 다양한 스태틱 메시를 생성할 수 있습니다. 이 노드의 설정에서 스태틱 메시의 유형과 각 유형에 대한 생성 가중치를 설정하여 각 유형이 생성될 확률을 결정할 수 있습니다. 이 노드 설정의 메시 항목 배열에 여러 항목을 추가하고 다른 스태틱 메시 모델을 할당하고 머티리얼을 재정의합니다. 오버라이드 머티리얼 옵션을 사용하면 다양한 색상의 식물을 생성하고 동일한 모델에 다른 오버라이드 머티리얼을 사용하여 다른 색상이 나타날 확률을 제어할 수 있습니다. 노드의 입력 및 출력 포트는 모두 여러 데이터에 대한 동시 액세스를 지원합니다.

일반적인 단축키

  • 디버깅 바로 가기(Debug Shotcut)

PCG 차트에서 노드를 선택하고 키보드의 "D" 키를 누르면 레벨에 노드 데이터가 시각적으로 표시됩니다. 예를 들어 디버깅이 활성화된 표면 샘플러는 포인트의 분포와 밀도를 PCG 차트에 포함된 지형에서 다양한 그레이 스케일 색상의 사각형으로 표현할 수 있습니다. 노드를 디버그 노드에 연결하여 동일한 작업을 수행할 수 있습니다.

  • 바로 가기 활성화(Enable Shotcut)

PCG 다이어그램에서 노드를 선택하고 키보드 "E" 키를 눌러 트리거하면 노드를 활성화 또는 비활성화할 수 있으며, 노드가 많은 경우 이 기능을 사용하여 노드를 비교하고 디버깅하는 데 편리합니다.

  • 데이터 바로 가기 보기 (Inspect Shotcut)

PCG 다이어그램에서 노드를 선택하고 키보드 "A" 키 트리거를 누르면 속성 창(속성 창)에서 노드에 포함된 속성 데이터(속성 데이터)를 볼 수 있습니다.

03 텍스트에 있는 예제의 최종 효과 및 노드 스크린샷


원문

 

技术美术笔记 | 虚幻5程序化生成框架的基础操作指南

关键词:虚幻引擎 Unreal Engine;程序化生成 Procedural Generation(PCG);地形景观 Lanscape;植被 Foliage;技术美术 TechArt; 引语: “虚幻引擎5的程序化内容生成框架(Procedural Content Generation Fram…

zhuanlan.zhihu.com