물리
CAT는 권한을 가진 Assembly State와 런타임 물리 표현을 분리합니다. Assembly Component는 구조와 Revision을 소유합니다. CAT Physics Execution은 Chaos 투영을 만들고 Actuator와 Simulation Feature를 연결하며 현재 네트워크 역할에 맞는 실행 경로를 선택합니다.
런타임 물리 흐름
구조가 바뀌면 Assembly State를 갱신한 뒤 물리 표현을 다시 만듭니다. Revision이 변경되면 캐시한 물리 참조와 Controller Actuator Handle을 다시 찾으세요.
제어 입력과 물리
Controller가 양력, 부력, 콜리전을 직접 시뮬레이션하지는 않습니다. Controller는 Input Action을 정규화된 Motor와 Fan 신호가 들어 있는 완전한 Control Frame으로 변환합니다.
실행 모드에 따라 CAT는 일반 Component 경로로 Control Frame을 적용하거나 Network Physics 예측 및 재시뮬레이션을 위해 입력을 전달합니다.
저작하는 물리 데이터
- Body: Mesh,
Dynamic또는Kinematic모드, 질량, Collision Profile, Physical Material, Local Transform - Connector와 Relation: 배치 Frame과 선택적 Constraint Profile. 어떤 투영 Body가 연결되고 어떻게 움직일 수 있는지를 결정합니다.
- Fan: 작성된 축을 따라 Force Application Point에 선형 힘을 적용합니다.
- Motor: 작성된 축을 중심으로 Torque를 적용합니다.
- Aerodynamic Feature: 작성된 Surface의 양력과 항력을 계산하고 그 결과 Force와 Moment를 적용합니다. 자세한 설정은 Aerodynamic Feature를 참고하세요.
- Buoyancy Feature: 작성된 Pontoon에서 지원되는 Unreal Water 표면을 샘플링하고 부력, Heave Damping, 선형·각 Drag, Slide Resistance를 적용합니다. 자세한 설정은 Buoyancy Feature를 참고하세요.
Simulation Feature와 Controller
두 계층은 함께 동작하지만 담당하는 역할이 다릅니다.
| 시스템 | 역할 |
|---|---|
| Aerodynamics | 현재 공기 흐름과 Surface 설정으로 양력과 항력을 생성합니다. |
| Buoyancy | Pontoon과 샘플링한 수면으로 부력과 물의 저항을 생성합니다. |
| Ground Drive Controller | 이동 의도를 차동 조향을 포함한 Motor 출력으로 변환합니다. |
| Aircraft Controller | Throttle과 Rotation Intent를 Fan과 Motor 출력으로 변환하며, 실제 양력과 항력은 Aerodynamics가 생성합니다. |
| Watercraft Controller | 이동 의도를 Fan과 Motor 출력으로 변환하고 샘플링한 수면 방향을 기준으로 자세를 안정화할 수 있습니다. 부력과 물의 저항은 Buoyancy가 생성합니다. |
물리 실행 모드
CAT는 권한, 소유권, 네트워크 설정을 기준으로 실제 실행 모드를 결정합니다.
Authority Simulation: 권한을 가진 Assembly를 시뮬레이션합니다.Owner Prediction: 조작 중인 Owner에서 Network Physics 입력 예측과 재시뮬레이션을 실행합니다.Remote Dynamic Simulation: 원격 Body를 Dynamic 상태로 유지하고 권한 Snapshot을 향해 보정합니다.Remote Snapshot Playback: 제어 Force를 독립적으로 시뮬레이션하지 않고 원격 Snapshot을 수동 표현으로 재생합니다.
원격 Simulation 동작을 변경하기 전에 네트워킹과 네트워크 설정을 확인하세요.
CAT Physics 설정
프로젝트 전체 보호 설정은 Project Settings > CAT Physics에서 구성합니다.
- Velocity Limit: 과도한 선형·각속도를 제한하는 선택적 Soft Limit와 Emergency Limit
- Actuator Output: 설정된 속도 제한에 가까워질 때 Fan과 Motor 출력을 선택적으로 감소
- Post-Attach Collision Recovery: 런타임 연결로 생긴 겹침을 처리하는 Teleport Correction과 제한된 Smooth Separation
- Diagnostics: Physics Assist 디버그 드로와 Report 설정
이 설정은 수치 안정성을 보호하고 예외 상태를 복구하기 위한 것입니다. 잘못된 질량, Collision, Connector Frame, Actuator 축, Controller 튜닝을 대신해서는 안 됩니다.
진단
개발 빌드에서 Physics Assist Debug Draw, Assembly 실행 Report, Console Command, NetworkPerf 도구를 사용해 문제를 조사할 수 있습니다. 이러한 기능은 진단 도구이며 출시용 Gameplay API가 아닙니다.
먼저 Assembly Revision, Body Transform과 Velocity, 현재 Execution Mode, Actuator 출력을 확인하세요. 검증된 네트워크 또는 성능 정책에 다른 Snapshot Tier가 필요할 때만 Set Physics Sync Tier를 변경하고, 자세한 설정은 Network Settings를 참고하세요.
튜닝 순서
- Body Mesh, Collision, Physics Mode, 질량, Transform을 확인합니다.
- Connector Frame과 Constraint Profile을 확인합니다.
- Controller 보정이 결과를 가리지 않는 상태에서 Aerodynamic 또는 Buoyancy Feature를 튜닝합니다.
- Motor와 Fan의 축, 적용 위치, Force, Torque를 확인합니다.
- Ground Drive, Aircraft, Watercraft 또는 Custom Controller를 튜닝합니다.
- 저작 설정이 올바르게 동작한 뒤 CAT Physics 보호 설정을 활성화하거나 강화합니다.