Gameplay Interaction

게임플레이 반응 방식

Niagara가 플레이어 행동과 월드 상태에 반응하려면 Blueprint가 값을 밀어 넣을지, Data Interface가 게임 데이터를 직접 읽을지, Activate와 Spawn으로 상태를 바꿀지 먼저 정해야 한다.

Set Niagara Variable

계산된 값을 밀어 넣기

`User.HealthRatio`, `User.WindStrength`처럼 이미 계산된 게임 값을 색상, 스폰율, 크기 모듈로 전달한다.

Data Interface

월드 데이터를 직접 읽기

Actor, Skeletal Mesh, Static Mesh, Spline, Collision Query에서 위치와 표면 정보를 가져온다.

Spawn / Attached

필요한 순간 생성하기

파괴 잔해, 총알 충격, 발자국처럼 짧은 이펙트는 위치와 파라미터를 넣어 한 번 스폰한다.

Activate / Finish

상태 전환에 맞추기

영역 진입은 Activate, 이탈은 Deactivate, 완료 후 로직은 OnNiagaraSystemFinished로 이어간다.

Actor

대상 위치 추적

적, 플레이어, 목표 지점의 위치와 속도를 읽는다.

Skeletal Mesh

본과 소켓

애니메이션되는 본, 소켓, 표면에서 파티클을 낸다.

Static Mesh

정적 표면

메시 표면, 정점, 삼각형을 따라 먼지나 물방울을 배치한다.

Spline

경로 기반 흐름

도로, 궤적, 마법진 선을 따라 움직이는 흐름에 맞다.

Collision

내부 충돌 질의

파티클이 특정 채널과 상호작용해야 할 때만 사용한다.

성능 판단

Tick으로 계속 넣어야 하는 값인지, 이벤트에서 한 번 넘기면 되는 값인지, Data Interface가 직접 읽는 편이 나은지 먼저 나누면 불필요한 업데이트와 Attach 비용을 줄일 수 있다.