사용자 정의 모듈은 입력 네임스페이스와 출력 위치를 분리한다
입력은 조절 가능한 값으로 열고, 출력은 어떤 파티클 속성을 언제 덮어쓰는지 명확히 정해야 한다.
| 구분 | 예시 | 좋은 설계 | 피해야 할 상태 |
|---|---|---|---|
| User 입력 | User.Color, User.Strength | 시스템 외부에서 조정할 값만 노출 | 필요 없는 값까지 모두 공개 |
| Emitter 입력 | Emitter.SpawnRate | 이미터 범위의 기준값 읽기 | 다른 이미터 값과 혼동 |
| Particle 입력 | Particle.Position, Particle.Age | 현재 파티클 상태를 계산 재료로 사용 | 쓰기 전후 순서 불명확 |
| Local 값 | 중간 계산 결과 | 모듈 내부에서만 사용 | 이름이 공개 값처럼 보임 |
| Output | Particle.Color, Particle.Velocity | 최종 쓰기 속성과 순서 명시 | 다른 모듈이 다시 덮어씀 |
모듈 입출력은 그래프를 열지 않아도 어떤 값이 들어와 무엇을 바꾸는지 읽혀야 한다.