NIAGARA VERSIONING

Niagara 버전 관리

Niagara 시스템은 텍스트 diff만으로 변경 의미를 읽기 어렵다. uasset 잠금, emitter 의존성, user parameter 호환성, 렌더러 변경, 시각 캡처 비교가 같이 있어야 팀 작업에서 효과가 조용히 깨지는 일을 줄일 수 있다.

01

잠금과 소유자

동시에 편집하기 어려운 uasset은 lock을 걸고 변경 의도를 작업자에게 표시한다.

merge 불가 asset은 충돌 전에 조율한다
02

의존 asset 묶기

system만이 아니라 emitter, material, texture, mesh, module script 변경을 같은 리뷰 단위로 본다.

효과 하나가 여러 asset에 퍼져 있다
03

파라미터 호환

User Parameter 이름, 타입, 기본값 변경이 블루프린트와 C++ 호출을 깨지 않는지 확인한다.

이름 변경은 런타임 무반응으로 보일 수 있다
04

시각 회귀 캡처

고정 카메라, 고정 시간, 대표 배경에서 전후 프레임을 비교한다.

diff가 어려우면 캡처가 리뷰 언어가 된다
05

성능 기록

spawn count, particle count, GPU time, bounds를 변경 전후로 남긴다.

좋아진 모양이 성능 예산을 넘을 수 있다
Lock
동시 편집 방지 binary asset 충돌을 merge 시점이 아니라 편집 시점에 막는다.
작은 변경도 소유자를 남긴다
Dependency
연쇄 변경 Emitter와 Material, Texture가 함께 바뀌었는지 리뷰한다.
system 파일만 보면 원인을 놓친다
Parameter
호출 호환성 Blueprint와 C++에서 넘기는 user parameter 이름과 타입이 유지되는지 본다.
기본값 변경도 게임플레이에 영향을 준다
Capture
시각 회귀 전후 이미지를 같은 조건에서 저장해 리뷰와 QA 기준으로 쓴다.
말로만 예뻐졌다는 설명은 부족하다

리뷰 확인

의존성 목록 효과 변경에 포함된 system, emitter, material, texture를 모두 적는다.
캡처 비교 고정 시간대의 전후 프레임과 particle count를 함께 비교한다.
호출 테스트 블루프린트나 C++에서 parameter를 바꾸는 지점이 그대로 동작하는지 확인한다.