Assembly 에디터
CAT Assembly 에셋을 열어 Part Model이나 다른 Assembly를 배치하고 연결해 재사용 가능한 구조를 만듭니다.
에디터 구성

- Outliner: 루트 Part, 자식 Part, Connector와 각 Relation을 확인합니다.
- Validation: Assembly를 저장하기 전에 구조 오류와 경고를 확인합니다.
- Viewport: Assembly를 미리 보고 Part나 Connector를 선택하거나 에디터 시뮬레이션을 실행합니다.
- Details: 선택한 Assembly, Part, Connector 또는 Relation을 수정합니다. Refresh와 Upload to Source Part도 여기서 사용할 수 있습니다.
- Asset Preview: 다음에 추가할 Part Model 또는 Assembly를 선택합니다.
Assembly 워크플로
- CAT Assembly 에셋을 만들거나 엽니다.
- Asset Preview에서 추가할 Part Model 또는 Assembly를 선택합니다.
- 뷰포트에서 호환되는 Connector를 클릭해 배치합니다.
- 필요한 만큼 반복한 뒤 Assembly를 저장합니다.
에셋을 선택하고 호환되는 Connector를 클릭하면 연결이 생성되고 Outliner에 반영됩니다.
Assembly Override
Part Model을 원본으로 유지하면서, 현재 Assembly에서만 특정 Part나 연결을 다르게 설정할 수 있습니다. Override가 없는 항목은 Source Part Model의 정의를 그대로 사용합니다.
Body Override
Body Override는 선택한 Part 인스턴스의 Source Body 정의를 현재 Assembly 안에서 대체합니다. Part를 선택한 뒤 Details의 Body Override에서 Override Source Body를 활성화해 설정합니다.
Mesh와 Material, 로컬 Transform, Physics Mode, Physical Material, Mass, Collision Profile 같은 Body 속성을 이 Assembly에서만 조정할 때 사용하세요. 같은 Part Model을 사용하는 다른 Assembly나 원본 Part Model에는 영향을 주지 않습니다.
언제 사용하나요?
같은 Part Model을 재사용하면서 특정 Assembly에서만 질량, Material 또는 물리 설정을 다르게 만들 때 적합합니다. 여러 Assembly에서 같은 변경이 필요하다면 Part Model을 직접 수정하거나 Upload to Source Part로 원본에 반영하는 편이 좋습니다.
Edge Override
Edge Override는 두 Part를 연결하는 Edge가 소유하는 배치 보정입니다. Outliner나 Viewport에서 연결 Relation을 선택한 뒤 Details의 Edge Override를 활성화해 Location과 Rotation을 조정합니다.
이 값은 연결된 두 Connector 중 기존 부모 Part 쪽인 Endpoint B Connector의 Body-local Frame을 현재 Assembly에서만 대체합니다. 따라서 Part Model의 Connector 위치를 수정하지 않고도 연결 위치와 방향을 미세 조정할 수 있습니다.
Edge Override는 Connector의 위치와 회전만 바꾸며, Scale이나 Constraint의 허용 자유도는 바꾸지 않습니다. 회전축과 이동 제한 같은 자유도는 계속 원본 Connector Profile이 정의합니다.
Override의 적용 범위
Body Override는 하나의 Part Node에 적용되고, Edge Override는 하나의 Part 연결에 적용됩니다. 둘 다 현재 Assembly에 저장되는 로컬 변경 사항입니다.
Damage와 Durability
Damage와 Durability는 Part 자체가 아니라 두 Part 사이의 연결 Relation에 적용됩니다. Outliner나 Viewport에서 연결 Relation을 선택한 뒤 Details의 Constraint Rule에서 설정하세요.
- Enable Damage: 이 연결이 내구도 피해를 받고 해체될 수 있도록 합니다.
- Durability: 연결의 최대 내구도, 즉 시작 HP입니다. 값이 클수록 더 많은 피해를 견딥니다.
런타임에서 피해가 적용되면 현재 Durability에서 Damage 값이 차감됩니다. 값이 0이 되면 CAT가 해당 Relation을 해체하며, 그 연결이 Assembly 그래프를 잇는 유일한 경로였다면 구조가 여러 Assembly로 분리될 수 있습니다.
피해 적용은 별도 Gameplay 로직입니다
Enable Damage를 켜도 충돌이나 발사체가 자동으로 피해를 주지는 않습니다. 서버 권한에서 대상 CAT Relation을 찾고 Apply Durability Damage를 호출해야 합니다. 발사체 Hit, 폭발 또는 Gameplay Behavior Feature에서 계산한 피해량을 이 함수에 전달하세요.
Grab 중인 Assembly
현재 Grab 중인 Assembly는 배치 Ghost로 취급되므로 내구도 피해가 적용되지 않습니다. Grab이 끝난 뒤 다시 피해를 적용해야 합니다.
Assembly와 Source Part 동기화

두 기능은 변경 사항을 반대 방향으로 전달합니다. 마지막으로 수정한 위치에 따라 사용할 기능을 선택하세요.
Refresh
반영 방향: Source Part Model → 현재 Assembly
Source Part Model을 수정한 뒤 Assembly에 반영하려면 Refresh를 사용하세요. CAT가 참조 중인 모든 Part Model을 다시 불러오고 Assembly 스냅샷과 노드 트랜스폼을 Source Connector 기준으로 재구성합니다.
Edge Override
Refresh는 현재 Assembly의 Edge Override를 모두 제거합니다. Override가 있으면 에디터가 먼저 확인합니다. 실행한 작업은 Ctrl+Z로 되돌릴 수 있습니다.
Upload to Source Part
반영 방향: 선택한 Assembly Part → Source Part Model → 선택한 참조 Assembly
Assembly에서 조정한 결과를 재사용 가능한 Part Model 정의로 만들려면 Upload to Source Part를 사용하세요. Part 또는 그 Part의 Connector를 선택한 뒤 버튼을 누릅니다. Source Part Model을 저장한 다음, 함께 갱신할 다른 참조 Assembly를 선택할 수 있습니다.
반영되는 항목
CAT는 선택한 Part의 로컬 Body, Actuator, Connector Transform Override를 Source Part Model에 반영합니다. 허용되는 자유도는 계속 Connector Profile이 정의합니다. 이후 갱신한 Assembly는 새 Source 데이터를 받고 이에 대응하는 로컬 Override를 제거합니다.