PCG 에디터 툴 모드는 스플라인, 표면, 페인팅 및 볼륨을 포함하여 레벨에서 PCG 콘텐츠를 배치할 때 사용할 수 있는 기능입니다. PCG 프레임워크를 활용하는 프리셋을 만들기 위한 커스터마이저블 툴 라이브러리를 사용하며, 각각에는 관련 PCG 그래프 및 파라미터가 있습니다.
PCG 에디터 모드에 액세스하려면 모드(Modes) 드롭다운 메뉴를 열고 PCG를 선택합니다.
이 모드는 첫 번째 버전이지만 지속적으로 향상하여 디폴트 그래프와 액터를 구성하고 배치하는 것 외에도 사용할 수 있는 툴을 확장할 수 있도록 유연하게 만들어 나갈 예정입니다.
PCG 모드 툴
툴 중 하나를 선택하면 적절한 액터를 선택했는지 여부에 따라 결과가 달라집니다.
액터를 선택하면 필요에 따라 PCG 컴포넌트를 액터에 추가하고, 존재하지 않는 경우 새 툴 데이터 에셋을 생성합니다.
선택된 액터가 없는 경우, 선택한 그래프 또는 프리셋에 따라 변경되는 오퍼레이션을 수행할 액터가 생성됩니다.
올바른 액터 클래스가 아니거나 그래프를 제대로 실행하는 데 적합한 컴포넌트가 없는 액터를 선택하면 툴 버튼이 비활성화됩니다. 마찬가지로, 선택한 액터와 호환되지 않는 프리셋은 표시되지 않습니다.
툴을 사용하기 시작하려면 툴 버튼을 클릭합니다. 그러면 적용(Apply) 및 취소(Cancel) 버튼과 프리셋에 대한 보조 버튼 행이 표시됩니다.
프리셋은 툴 프리셋으로 표시되는 그래프 및 인스턴스입니다. 드롭다운 메뉴를 사용하지 않고도 그래프를 빠르게 선택할 수 있습니다. 프리셋을 사용하는 것은 드롭다운 메뉴에서 그래프를 선택하는 것과 기능적으로 동일합니다.
툴 인스턴스 세팅
툴을 선택하면 패널에 PCG 컴포넌트에서 직접 액세스할 수 있는 인스턴스 세팅이 표시되며, 이를 통해 툴과 인터랙션하면서 세팅을 변경할 수 있습니다.
| 인스턴스 세팅 | 설명 |
|---|---|
툴 그래프(Tool Graph) | 이 그래프는 PCG 컴포넌트에서 설정됩니다. 사용 가능한 파라미터를 결정하며, 새 액터를 생성할 때 액터 클래스를 선택하는 데 사용할 수 있습니다. |
파라미터 오버라이드(Parameter Overrides) | 그래프에 노출된 모든 그래프 파라미터는 여기서 사용할 수 있습니다. |
데이터 인스턴스(Data Instance) | 툴이 쓸 '데이터 인스턴스'를 정의합니다. 스플라인이나 볼륨에서는 제한적으로 사용되지만, 페인팅 툴에서는 다른 레이어에 쓸 수 있는 방법을 제공하며, 레이어마다 다른 처리를 수행할 수 있습니다. 키보드 단축키(1, 2, …)로 레이어를 변경할 수 있습니다. |
액터 라벨(Actor Label) | 스폰된 액터가 선택되지 않은 경우의 라벨입니다. 여기서 라벨을 변경하면 액터의 이름이 변경됩니다. 디폴트 값은 그래프의 툴 세팅에서 가져옵니다. |
컴포넌트 이름(Component Name) | 액터에 추가된 컴포넌트의 이름입니다(기존 컴포넌트를 사용하지 않는 경우). |
스폰할 액터 클래스(Actor Class to Spawn) | 선택 없이 툴을 시작할 때 스폰되는 액터의 클래스입니다. 툴이 액터 자체를 스폰한 경우에만 변경할 수 있으며, 클래스를 변경하면 툴 데이터가 손실됩니다. 하지만 보다 복잡한 구성을 위해 BP 액터를 생성할 수 있습니다. 이 필드는 기존 액터에서 툴을 시작할 때는 표시되지 않습니다. 해당 상태에서는 액터의 클래스를 변경할 수 없기 때문입니다. |
PCG 모드 툴
스플라인 그리기
스플라인 그리기(Draw Spline) 모드를 사용하여 환경에 투영된 '스플라인에' 오브젝트를 배치할 수 있습니다. 예를 들어 울타리나 도로 등이 있으며, 열린 스플라인 및 닫힌 스플라인과 함께 작동합니다. PCG에 맞춰져 있다는 점을 제외하면 다른 스플라인 생성 모드와 유사합니다. 이 툴을 지원하는 그래프의 프로퍼티에는 SplineTool 툴 태그가 있습니다.
스플라인 표면 그리기
스플라인 표면 그리기(Draw Spline Surface) 모드를 사용하여 스플라인에 바인딩된 닫힌 영역을 정의할 수 있으며, 해당 영역 안에서 PCG 그래프가 내부를 채울 수 있습니다. 예를 들어 들판, 옥수수 밭, 그래스 등이 있습니다. 이 툴은 SplineSurfaceTool 툴 태그를 사용합니다.
페인트
페인트(Paint) 툴을 사용하면 콜리전을 기반으로 월드 또는 선택한 액터에 페인팅할 수 있으며, 폴리지 모드와 유사합니다.
이렇게 하면 레이캐스트가 물리적 오브젝트에 히트되는 위치에 포인트가 생성됩니다. Shift를 길게 눌러 포인트를 제거할 수도 있습니다(브러시가 빨간색으로 바뀜). 이 툴은 PaintTool 툴 태그를 사용합니다.
볼륨
볼륨 툴을 사용하면 먼저 풋프린트를 드래그한 다음 박스의 높이를 드래그하여 새 PCG 볼륨을 생성할 수 있습니다. 액터가 볼륨이거나 박스 컴포넌트가 없는 경우 이 툴은 비활성화됩니다. 이 툴은 VolumeTool 툴 태그를 사용합니다.
툴 전용 컨트롤
스플라인 컨트롤
그리기 모드는 툴과의 인터랙션 방식을 제어하며, 다른 스플라인 툴과 유사합니다.
레이캐스트 규칙
레이캐스트 규칙은 여러 툴이 월드와 인터랙션하는 방식을 제어합니다. 활성화한 경우, 각 규칙이 프로젝트와의 특정 인터랙션을 정의합니다.
| 레이캐스트 규칙 | 설명 |
|---|---|
랜드스케이프(Landscape) | 랜드스케이프에서 인터랙션을 허용합니다. |
메시(Meshes) | 메시와의 인터랙션을 허용합니다(예: 콜리전이 있는 액터). |
PCG 컴포넌트 무시(Ignore PCG Components) | PCG에서 생성한 컴포넌트의 인터랙션을 거부합니다. |
허용할 클래스(Allowed Classes) | 목록에 있거나 목록의 부모 클래스에서 파생된 액터 클래스에 대해서만 인터랙션을 허용합니다. |
액터로 제한(Constrain to Actor) | 선택한 액터의 인터랙션만 허용합니다. |
툴 그래프 구성하기
툴 그래프를 구성하려면 툴 데이터(Tool Data) 섹션의 PCG 그래프 세팅에서 새 툴 그래프에 맞게 값을 설정합니다.
| 툴 데이터 그래프 세팅 | 설명 |
|---|---|
표시명(Display Name) | 툴 프리셋 버튼에 표시되는 이름을 정의합니다. |
툴팁(Tooltip) | 툴 프리셋 버튼 위로 마우스 커서를 가져갔을 때 표시되는 툴팁을 정의합니다. |
호환 툴 태그(Compatible Tool Tags) | 이 그래프와 함께 사용할 수 있는 호환 태그를 나열합니다. 그래프가 일치하는 툴의 그래프 드롭다운에 나타나도록 하려면 이 값을 설정해야 합니다. 현재 유효한 값은 다음과 같습니다.
|
스폰할 초기 액터 클래스(Initial Actor Class To Spawn) | 이 세팅은 선택 없이 툴을 시작할 때 스폰할 액터 클래스를 정의하며, 이 그래프와 일치하는 액터 클래스를 제한하는 역할을 합니다. 예를 들어 이 세팅이 PCG 볼륨으로 설정된 경우, 선택 항목이 PCG 볼륨이 아니면 그래프가 툴 그래프 드롭다운에 표시되지 않습니다. |
새 액터 라벨(New Actor Label) | 액터를 스폰할 때 사용되는 디폴트 액터 라벨을 정의합니다. |
프리셋 여부(Is Preset) | 그래프를 툴 프리셋 버튼으로 표시할지 여부를 제어합니다. 인스턴스에서 오버라이드할 수 있습니다. |
인스턴스를 프리셋으로 구성하기
툴 그래프와 비슷하게 그래프 인스턴스에는 툴 데이터 오버라이드(Tool Data Override) 섹션이 있습니다.
| 툴 데이터 오버라이드 | 설명 |
|---|---|
표시명(Display Name) | 그래프와 동일합니다. |
툴팁(Tooltip) | 그래프와 동일합니다. |
프리셋 여부(Is Preset) | 원본 그래프의 값과 관계없이 이 인스턴스가 프리셋인지 여부를 정의합니다. |
PCG 에디터 모드 세팅
PCG 에디터 모드 세팅(PCG Editor Mode Settings)은 PCG 툴 모드의 비헤이비어를 제어하며, 에디터 개인설정(Editor Preferences) > PCG 에디터 모드 세팅에 있습니다.
| PCG 에디터 모드 세팅 | 설명 |
|---|---|
그래프 주사율(Graph Refresh Rate) | PCG가 포착하는 변경사항의 전파 속도를 정의합니다. 생성 속도가 매우 느린 경우 이 값을 높일 수 있습니다. |
활성 툴 동안 툴 버튼 숨기기(Hide Tool Buttons During Active Tool) | 활성화한 경우, 툴을 입력할 때 UI가 툴 행을 숨기고 프리셋만 표시합니다. |
툴 오류 시 에디터 토스트 표시(Show Editor Toast on Tool Errors) | 오류를 알림에 표시할지 또는 툴 창에만 표시할지 여부를 제어합니다. |
인터랙티브 툴 세팅(Interactive Tool Settings) | 표시할 툴 컨트롤과 디폴트를 정의합니다. 이 목록이 비어 있으면 '디폴트로 리셋(Reset To Defaults)'으로 채워집니다. 이 목록에는 다음 쌍이 포함됩니다.
디폴트 그래프는 디폴트로 액터 클래스에서 작동하며, 그렇지 않은 경우 툴이 항상 열리지 않습니다. |
디폴트 새 액터 이름(Default New Actor Name) | 액터의 이름이 그래프에 제공되지 않으면 이 값을 대신 사용합니다. |
디폴트 새 PCG 컴포넌트 이름(Default New PCG Component Name) | PCG 컴포넌트의 이름이 그래프에 제공되지 않으면 이 값을 대신 사용합니다. |
디폴트 새 스플라인 컴포넌트 이름(Default New Spline Component Name) | 스플라인 컴포넌트의 이름이 그래프에 제공되지 않으면 이 값을 대신 사용합니다. |