PCG 바이옴 코어(PCG Biome Core) 플러그인과 PCG 바이옴 샘플(PCG Biome Sample) 플러그인은 어트리뷰트 세트 테이블, 피드백 루프, 재귀 서브그래프 및 런타임 계층형 생성 등의 PCG 프레임워크 기능 사용법에 대한 예시입니다. 이 섹션에는 PCG 바이옴 코어 및 샘플 플러그인에 대한 정의와 툴 기능 목록, 향후 업데이트 및 알려진 문제 해결을 위해 할 일이 포함되어 있습니다.
프로시저럴 콘텐츠 생성(Procedural Content Generation, PCG) 프레임워크에 대한 자세한 내용은 PCG 프레임워크에서 확인할 수 있습니다.
PCG 바이옴 코어 정의
PCG 바이옴 코어는 네이티브 PCG 프레임워크 노드와 그래프, 데이터 에셋을 사용하여 만든 데이터 기반 바이옴 생성 툴입니다. 이 툴은 커스터마이징할 수 있는 단계를 통해 논리적 섹션으로 구성된 고정 파이프라인을 제공하는 체계적인 접근 방식으로 제작되었습니다.
PCG 바이옴 코어는 PCG 프레임워크에 대해 배울 수 있는 예시를 제공하며 어트리뷰트 세트 테이블, 피드백 루프, 재귀 서브그래프 및 런타임 계층형 생성 같은 기능을 활용합니다.
프로덕션에서 이 툴을 사용하여 월드 제작 툴세트를 시작하고 프로그래밍 지원을 전혀 받지 않거나 최소한의 지원만으로 특정 요건과 필요에 맞게 복사, 수정 또는 확장할 수 있습니다.
이 플러그인 자체는 실험단계로 분류되어 있으며, 베타 또는 프로덕션에 사용 가능 상태인 PCG 프레임워크와 표준 UE 기능에 의존하여 향후 업데이트를 통해 발전해 나갈 것입니다. 프로덕션에서 사용하는 경우, 향후 릴리즈에서 기존 콘텐츠가 손상되거나 결과가 변경되거나 제공된 콘텐츠에 이루어진 변경사항 때문에 호환성 문제가 발생하지 않도록 플러그인을 복사하여 사용하는 것이 좋습니다.
PCG 바이옴 코어 플러그인은 독립형 플러그인으로, 베이스 데이터 에셋, 구조체, 블루프린트 클래스 및 PCG 그래프 등, 툴 작동에 필요한 요소만 포함하고 있습니다. 언리얼 에디터에서 플러그인 매니저를 통해 프로젝트별로 활성화할 수 있습니다.
PCG 바이옴 샘플 정의
PCG 바이옴 샘플은 바이옴 코어 툴을 보여주는 콘텐츠 예시입니다. 이는 미리 환경설정된 바이옴 코어가 있는 월드인 BiomeSampleLevel, 해당 에셋이 있는 여러 바이옴, 그리고 바이옴 볼륨(Biome Volume), 바이옴 스플라인(Biome Spline), 바이옴 텍스처(Biome Texture) 및 기타 주입된 데이터(Injected Data) 등의 다양한 입력과 특정 CropField 제너레이터, 독립형 액터로 구성됩니다.
바이옴 샘플 플러그인은 플러그인 세팅을 통해 모든 프로젝트에서 활성화할 수 있으며, 바이옴 코어 플러그인 및 해당 콘텐츠에 따라 다릅니다. 바이옴 샘플은 개별 프로젝트를 로드하지 않고 바이옴 코어를 구성하는 방법에 대한 가이드이자 레퍼런스입니다.
기능 목록
PCG 바이옴 코어에서 사용할 수 있는 기능 목록입니다.
-
데이터 기반으로, 모든 프로덕션 필요에 맞게 복사, 수정 또는 확장 가능
-
PCG 네이티브 노드 전용, 커스텀 코드 없음, 커스텀 블루프린트 엘리먼트 없음
-
PCG 그래프 및 데이터 에셋을 사용하여 커스터마이징할 수 있는 단계를 통해 논리적 섹션으로 구성된 고정 파이프라인
-
무제한 사용자 정의 바이옴
-
즉시 사용할 수 있는 클래스, 구조체, 데이터 에셋, 그래프
-
모든 데이터 에셋 레퍼런스에서 동적으로 수집하고 빌드된 바이옴 에셋 프로퍼티를 포함하는 어트리뷰트 세트 테이블
-
3D 스페이스에서 바이옴 입력을 추상화하는 바이옴 캐시
-
바이옴은 볼륨, 스플라인 및/또는 텍스처를 통해 공간적으로 정의할 수 있음
-
바이옴 우선순위 정렬
-
바이옴 글로벌 블렌딩
-
제외 및 주입된 데이터를 통한 수동 또는 반수동 인터랙션 지원
-
메시, PCG 데이터 에셋/어셈블리 및 액터 스폰
-
커스텀 바운드 스케일링이 지원되는 메시의 포인트 바운드
-
제너레이터 우선순위와 정확한 바운드에 의해 관리되는 오버랩이 있는 생성된 포인트의 레이어링
-
바이옴 내에서 에셋 배포를 더 효과적으로 제어하도록 지원하는 여러 제너레이터 서브타입(예: 랜드스케이프 레이어 가중치 페인팅 사용)
-
커스터마이징할 수 있는 계산 및/또는 텍스처 투영 필터 그래프로부터 글로벌 루트 및 자손 포인트 필터링(높이, 밀도, 흐름 등)
-
재귀 레벨당 여러 자손을 지원하는 에셋별 재귀 계층형 트랜스폼 및 스폰
-
재귀 최대 깊이 및 비율 컨트롤
-
에셋 항목별 스태틱 메시 프로퍼티 오버라이드(그림자 드리우기, 콜리전 등)
-
에셋 항목별 트랜스폼 오프셋 및 스케일
-
랜드스케이프 및 메시에서 런타임 계층형 생성 디테일 스폰
할 일
바이옴별 블렌딩 범위: 각 바이옴 코어 액터에 대해 현재 글로벌 블렌딩 범위 대신 바이옴별 특정 블렌딩 범위를 허용합니다.
어셈블리 계층구조 및 태그 지원: 일렉트릭 드림즈 샘플에서 선보인 것과 비슷한 내부 계층구조 및 태그에서의 어셈블리 트랜스폼 및 필터링에 대한 고급 제어 기능을 추가합니다.
랜드스케이프 패치 워크플로: 랜드스케이프 패치 컴포넌트가 있는 액터를 스폰할 때 랜드스케이프 새로고침과 PCG 업데이트 사이에 발생할 수 있는 피드백 루프를 방지합니다.
알려진 문제
-
자손 에셋이 제외 및 바이옴 바운드를 존중하지 않는 문제
-
자손 에셋이 다른 계층구조 브랜치의 루트 및 자손 에셋과 오버랩되는 문제
-
제너레이터 우선순위에 따른 차이로 인해 사전 필터링이 발생하여 포인트가 선제적으로 제거되는 문제