Signal
Signal(신호)은 런타임 이벤트를 Response Rule로 전달하는 데이터입니다. Signal Name이 Rule과 일치하고, 해당 Rule이 대상 Module을 지원할 때 효과가 시작됩니다.
일반 Signal 노드
| 노드 | 사용할 때 |
|---|---|
Submit OverAnim Signal |
완성된 FOverAnimSignal 구조체를 직접 제출할 때 |
Submit Named OverAnim Signal |
이름, Magnitude, Direction, Origin만 있는 일반 Pulse를 보낼 때 |
Submit Named OverAnim Signal From Owner |
Owner 기준 방향으로 간단한 Signal을 보낼 때 |
Submit OverAnim Impact Signal |
Contact Point/Normal을 직접 포함한 충돌 Signal을 보낼 때 |
Submit OverAnim Signal은 빈 Signal Name, 음수 또는 NaN Magnitude를 거부합니다. Direction은 내부에서 정규화됩니다. Submit Named OverAnim Signal From Owner는 Owner Velocity가 0일 때 안전하게 World Up을 사용합니다.
Signal Source와 Lifecycle
FOverAnimSignal에는 다음 정보가 들어갈 수 있습니다.
Source:Manual,MotionAnalyzer,AnimNotify,GameplayEventLifecycle:Pulse,StateUpdate,StateEndMagnitude,DirectionWS,OriginWSSourceRegionName,SourceId- 선택적인
ContactPointWS,ContactNormalWS,ContactBoneName
Pulse는 한 번의 타격·점프·가속 반응에 적합합니다. 지속 효과 또는 활성 창을 다룰 때는 Response Rule의 Sustained, Notify Activation Channel, State Update/End를 조합하세요.
큐와 실패 처리
Component가 아직 설치되지 않은 상태에서 Signal을 전송하면 필요 시 Apply OverAnim을 시도합니다. Instance Manager가 준비되기 전에는 최대 Max Pending Signals만 큐잉되고, 초과하면 오래된 Signal부터 버려집니다.
따라서 Signal 노드의 반환값을 확인하세요.
false: Effects가 비활성, 입력 값 오류, 설치/계약 실패, 또는 접촉 조건 미충족일 수 있습니다.true: Signal이 즉시 처리되었거나 준비 큐에 수락되었습니다.
접촉 기반 Module의 입력은 Hit · Collision · Damage를 참고하세요.