Custom DI

Custom Data Interface 도입 판단 기준

사용자 정의 데이터 인터페이스는 기본 인터페이스로 표현하기 어려운 게임 고유 데이터를 C++로 나이아가라에 노출하는 고급 확장입니다.

만들기 전에 묻기

구현 비용이 크므로 기존 Data Interface, User Parameter, Blueprint 바인딩으로 해결할 수 없는지 먼저 확인해야 합니다.

01

Need

고유 데이터 요구

외부 물리, AI 상태, 날씨, 파일 데이터처럼 나이아가라 기본 함수로 읽을 수 없는 값인지 확인합니다.

02

C++ Layer

클래스와 함수 구현

UNiagaraDataInterface 기반 클래스로 읽기 함수와 VM/GPU 지원 범위를 정의합니다.

03

Expose

스크립트에서 호출 가능하게

모듈 그래프가 사용할 입력 핀과 함수 시그니처를 명확히 노출합니다.

04

Test

CPU/GPU와 에디터 검증

실행 위치, 기본값, 실패 시 대체값, 성능 비용을 별도로 테스트합니다.

대체 가능성

User Parameter나 기존 Data Interface 조합으로 충분하면 커스텀 구현을 피합니다.

실행 경로

GPU 파티클에서 필요한 함수가 실제로 지원되는지 확인합니다.

유지보수

데이터 구조가 바뀔 때 모듈과 C++ 코드가 함께 깨지지 않도록 계약을 작게 둡니다.