이미터 업데이트 그룹

이 문서에서는 나이아가라 이미터의 이미터 업데이트 모듈에 대한 레퍼런스 정보를 제공합니다.

Windows
MacOS
Linux

이미터 업데이트(Emitter Update) 모듈은 CPU에서 이미터 틱이 발생할 때마다 발생합니다. 이 그룹의 모듈은 해당 프레임에서 파티클 스폰이나 업데이트 파라미터 값을 계산해야 합니다. 모듈은 스택의 위에서 아래 순서로 실행됩니다.

이 문서에는 이미터 업데이트 그룹의 각 모듈 유형별 섹션이 준비되어 있으며, 해당 모듈 유형에서 사용할 수 있는 기본 옵션의 목록과 설명을 포함한 표도 준비되어 있습니다. 나이아가라 이미터의 어느 부분에 대해서든 커스텀 모듈을 생성할 수 있다는 점을 잊지 마세요. 여기에 나열된 모듈은 언리얼 엔진 4에 자동으로 포함되어 있는 모듈로 한정됩니다.

빔 모듈

모듈

설명

Beam Emitter Setup(빔 이미터 구성)

이 모듈은 빔 이미터의 시작점, 끝점, 탄젠트를 구성 및 관리합니다.

카오스 모듈

모듈

설명

Spawn from Chaos(카오스에서 스폰)

이 모듈은 파티클이 카오스 이벤트에 반응하여 스폰되도록 합니다.

이미터 상태

파라미터

설명

라이프 사이클 모드(Life Cycle Mode)

이 세팅은 라이프 사이클 (루프, 수명 및 소멸)이 이미터 자체에 의해 관리될지 아니면 이미터를 소유한 시스템에 의해 관리될지 여부를 결정합니다. 다음과 같은 세팅이 있습니다.

  • 시스템(System): 이 옵션을 선택하면 소유 시스템이 모든 라이프 사이클 함수를 계산합니다. 대부분의 경우 시스템에서 라이프 사이클을 계산하게 하면 최적화 수준이 높아집니다. 이 옵션을 선택하면 다른 영역이 숨겨집니다.

  • 셀프(Self): 이 옵션을 선택하면 이미터가 모든 라이프 사이클 함수를 계산합니다. 이 옵션을 선택하면 아래와 같은 다른 세팅을 사용할 수 있게 됩니다.

비활성 반응(Inactive Response)

이 세팅은 이미터가 비활성 상태에 진입했을 때 어떤 일이 발생할지 결정합니다. 비활성이란 이미터가 휴면 상태에 들어가 더 이상 파티클을 스폰하거나 관리하지 못하는 상태를 말합니다. 다음과 같은 옵션이 있습니다.

  • 완료(Complete): 파티클이 완료된 다음 이미터가 소멸됩니다.

  • 소멸(Kill): 이미터와 파티클이 둘 다 즉시 소멸됩니다.

  • 계속(Continue): 이미터는 비활성화되지만 시스템이 소멸되기 전까지는 소멸되지 않습니다.

루프 비헤이비어(Loop Behavior)

이미터의 비헤이비어를 결정합니다. 다음 중에서 선택할 수 있습니다.

  • 한 번(Once): 애니메이션을 한 번만 재생합니다.

  • 여러 번(Multiple): 지정된 횟수만큼 애니메이션을 재생합니다.

  • 무한(Infinite): 애니메이션을 계속 재생합니다.

루프 기간(Loop Duration)

루프가 얼마나 오랫동안 지속될지 결정합니다.

루프 기간 모드(Loop Duration Mode)

루프의 유한 또는 무한 여부를 결정합니다.

루프 딜레이(Loop Delay)

지정한 값만큼 다음 루프를 지연하는 세팅입니다.

엔진 퀄리티

엔진 퀄리티 모드(Scalability Mode)

이미터가 시스템으로부터 엔진 퀄리티 세팅을 취할지 아니면 자체의 고유한 엔진 퀄리티 세팅을 사용할지 결정합니다. 다음 중에서 선택할 수 있습니다.

  • 시스템(System): 이 옵션을 선택하면 소유 시스템이 모든 라이프 사이클 함수를 계산합니다. 대부분의 경우 시스템에서 라이프 사이클을 계산하게 하면 최적화 수준이 높아집니다. 이 옵션을 선택하면 다른 영역이 숨겨집니다.

  • 셀프(Self): 이 옵션을 선택하면 이미터가 모든 라이프 사이클 함수를 계산합니다. 이 옵션을 선택하면 아래와 같은 다른 세팅을 사용할 수 있게 됩니다.

디스턴스 컬링 활성화(Enable Distance Culling)

이 박스를 체크해 활성화합니다. 카메라와 이미터의 거리를 기반으로 이미터 컬링을 활성화합니다. 이미터는 카메라에서 특정 거리에 떨어져 있을 때 대기, 재활성화, 소멸 등이 가능합니다.

비저빌리티 컬링 활성화(Enable Visibility Culling)

이 박스를 체크해 활성화합니다. 카메라에 대한 시각화 여부를 기반으로 이미터 컬링을 활성화합니다. 이미터는 온스크린이나 오프스크린 여부에 따라 대기, 재활성화, 소멸 등이 가능합니다.

재활성화 시 수명 초기화(Reset Age on Awaken)

이 박스를 체크해 활성화합니다. 이미터가 엔진 퀄리티 세팅에 의해 대기 상태에 들어간 후 이 이미터가 재활성화될 때 이 세팅이 이미터의 수명을 초기화합니다. 즉, 스폰 버스트가 재발동되면 이미터의 수명이 다시 시작됩니다.

위치 모듈

모듈

설명

그리드에 파티클 스폰(Spawn Particles in Grid)

사용자가 정의한 그리드 해상도 세팅을 기반으로 파티클을 스폰합니다.

최대 스크립트 모듈

모듈

설명

최대 스크립트 버텍스 애니메이션 툴 모프 타깃 스폰(Spawn MS Vertex Animation Tools Morph Target)

버텍스 애니메이션 툴로 생성된 모프 타깃 텍스처를 스폰 및 샘플링합니다. 버텍스 애니메이션 툴은 모프 타깃 블렌드 형태를 나타내는 텍스처를 생성합니다. 이 모듈은 툴에서 캡처한 모든 버텍스마다 파티클을 하나씩 스폰합니다. 최대 스크립트 버텍스 애니메이션 툴 모프 타깃 업데이트(Update MS Vertex Animation Tools Morph Target) 모듈과 함께 사용됩니다.

모듈 스폰

모듈

설명

즉시 스폰 버스트(Spawn Burst Instantaneous)

이 모듈은 파티클 버스트를 즉시 스폰합니다.

프레임당 스폰(Spawn Per Frame)

이 모듈은 매 프레임마다 파티클 버스트를 스폰합니다.

유닛별 스폰(Spawn Per Unit)

언리얼 단위의 이동 거리를 기반으로 파티클을 스폰합니다.

스폰 속도(Spawn Rate)

특정한 속도로 꾸준히 파티클을 스폰합니다.

유틸리티 모듈

모듈

설명

이미터 프레임 카운터(Emitter Frame Counter)

이 모듈에서 증가 카운터를 활성화하면 이미터의 애니메이션 프레임별로 카운터가 증가합니다.

새 스크래치 패드 모듈

추가(Add) (더하기 기호) 메뉴에서 이 항목을 선택하면 스크래치 패드(Scratch Pad) 패널(기본 설정 상 시스템 개요(System Overview) 옆에 도킹되어 있음)이 실행되어 스크래치 패드 모듈(Scratch Pad module)선택(Selection) 패널에 배치합니다. 창(Windows) > 스크래치 패드(Scratch Pad) 로도 스크래치 패드 패널을 실행할 수 있습니다. 하지만 스택에 스크래치 패드 모듈을 배치할 경우, 스크래치 패드에서 생성한 모든 모듈이나 동적 입력은 스크립트에 자동으로 연결됩니다. 창 메뉴로 스크래치 패드를 실행할 경우, 스크래치 패드에서 생성한 모든 항목은 스크립트에 직접 추가해줘야 합니다.

신규 또는 기존 값 직접 설정

추가(Add) 메뉴에서 이 항목을 선택하면 파라미터 설정(Set Parameter) 모듈을 선택(Selection) 패널에 배치합니다. 더하기(Plus sign) (+) 아이콘을 클릭해 파라미터 추가(Add Parameter)새 파라미터 생성(Create New Parameter) 을 선택합니다.

파라미터 추가

파라미터 추가(Add Parameter) 를 선택하면 나열된 파라미터 목록에서 선택하게 됩니다. 그러면 이미터 업데이트 그룹의 파라미터 설정(Set Parameter) 모듈에 해당 파라미터가 추가됩니다.

이 중 일부 파라미터는 다른 모듈에서 설정하거나 편집할 수 있습니다. 일부는 파라미터 설정 모듈만 사용해 설정할 수 있습니다.

파라미터

설명

Emitter.Age

이미터의 수명을 정의합니다.

Emitter.CurrentLoopDelay

이미터의 현재 루프를 반복하기 전에 딜레이의 양을 정의합니다.

Emitter.CurrentLoopDuration

현재 이미터 루프의 기간을 정의합니다.

Emitter.ExecutionState

이미터의 상태에 영향을 줍니다. 유효한 값 선택은 다음과 같습니다.

  • 활성(Active)

  • 비활성(Inactive)

  • 비활성 초기화(InactiveClear)

  • 완료(Complete)

Emitter.ExecutionStateSource

실행 상태 세팅의 소스를 보여줍니다. 엔진 퀄리티가 상태를 변경할 수 있게 해주지만, 해당 상태가 더 높은 우선 순위로 정의되지 않은 경우에만 사용됩니다.

Emitter.LocalSpace

파티클의 위치가 월드 원점인지, 자체 나이아가라 컴포넌트의 위치인지 정의합니다.

  • False: 파티클 위치는 WorldSpace 내부이며, 월드 원점을 기준으로 합니다. 0,0,0 위치의 파티클은 월드 원점에 렌더링됩니다.

  • True: 파티클 위치는 LocalSpace 내부이며, 자체 나이아가라 컴포넌트의 위치를 기준으로 합니다. 0,0,0 위치의 파티클은 자체 나이아가라 컴포넌트의 위치에 렌더링됩니다.

Emitter.LoopCount

이미터의 루프 반복 횟수를 정의합니다.

Emitter.LoopedAge

현재 루프와 관련된 이미터의 수명을 계산합니다. 예를 들어 이미터가 8초 동안 활성화 되었고 매 5초마다 루프한다면, 이미터의 LoopedAge는 3초 가 됩니다. LoopedAge 는 이미터가 루프할 때마다 0을 반환합니다.

Emitter.NormalizedLoopAge

현재 루프와 관련된 이미터의 수명을 계산하며, 0 에서 1 까지 정규화됩니다. NormalizedLoopAge는 CurrentLoopDuration 으로 나눈 LoopedAge 로 표시됩니다. 이미터가 8초 동안 활성화 되었고 매 5초마다 루프한다면, 이미터의 LoopedAge는 3 이 됩니다. 이미터의 NormalizedLoopAge는 0.6 이 됩니다.

System.ExecutionState

시스템의 상태에 영향을 줍니다. 유효한 값 선택은 활성(Active), 비활성(Inactive), 비활성 초기화(InactiveClear), 완료(Complete), 비활성화됨(Disabled), 숫자(Num) 입니다.

System.ExecutionStateSource

시스템 실행 상태 세팅의 소스를 보여줍니다. 엔진 퀄리티가 상태를 변경할 수 있게 해주지만, 해당 상태가 더 높은 우선 순위로 정의되지 않은 경우에만 사용됩니다.

새 파라미터 생성

새 파라미터 생성(Create New Parameter) 을 선택하면 나열된 파라미터 목록에서 선택하게 됩니다. 파라미터 설정(Set Parameter) 모듈을 이미터 업데이트 그룹에 추가합니다.

파라미터

유형

설명

오디오 오실로스코프(Audio Oscilloscope)

데이터 인터페이스(Data interface)

이미터에 신규 오디오 오실로스코프 데이터 인터페이스 모듈을 추가합니다. 오디오 오실로스코프 모듈은 오디오 신호의 웨이브폼 데이터에 직접 액세스할 수 있습니다.

오디오 스펙트럼(Audio Spectrum)

데이터 인터페이스(Data interface)

이미터에 신규 오디오 스펙트럼 데이터 인터페이스 모듈을 추가합니다. 오디오 스펙트럼 모듈은 특정 주파수에서의 오디오 음량을 기반으로 시각화를 구동할 수 있습니다.

부울(Bool)

프리미티브(Primitive)

True/False 체크박스가 있는 변수 설정 모듈을 추가합니다.

카메라 쿼리(Camera Query)

데이터 인터페이스(Data Interface)

이미터에 신규 카메라 쿼리 데이터 인터페이스 모듈을 추가합니다. 이 데이터 인터페이스는 특정 컨트롤러 인덱스에 대한 카메라 정보 (카메라 위치, 회전, FOV 등)를 얻는 데 사용할 수 있습니다.

콜리전 쿼리(Collision Query)

데이터 인터페이스(Data Interface)

이미터 스택에 콜리전 데이터 인터페이스를 추가합니다. 보통 콜리전 모듈과 조합하여 사용됩니다.

컬 노이즈(Curl Noise)

데이터 인터페이스(Data Interface)

이미터 스택에 컬 노이즈 데이터 인터페이스를 추가합니다. 컬 노이즈 포스 모듈과 함께 사용할 경우, 이 데이터 인터페이스는 시뮬레이션에 다른 유형의 노이즈를 주입합니다.

컬러 커브 (Curve for Colors)

데이터 인터페이스(Data Interface)

시뮬레이션에 4채널 컬러 커브 데이터 인터페이스를 추가합니다. 이 커브는 동적 입력이나 다른 모듈에 의해 샘플링되어 시간에 따라 다양한 컬러를 생성할 수 있습니다.

플로트 커브(Curve for Floats)

데이터 인터페이스(Data Interface)

시뮬레이션에 단일 채널 커브 데이터 인터페이스를 추가합니다. 이 커브는 동적 입력이나 다른 모듈에 의해 샘플링되어 시간에 따라 다양한 플로트 값을 생성할 수 있습니다.

벡터 2D 커브(Curve for Vector 2Ds)

데이터 인터페이스(Data Interface)

시뮬레이션에 2채널 커브 데이터 인터페이스를 추가합니다. 이 커브는 동적 입력이나 다른 모듈에 의해 샘플링되어 시간에 따라 다양한 플로트 쌍을 생성할 수 있습니다.

벡터 3 커브(Curve for Vector 3s)

데이터 인터페이스(Data Interface)

시뮬레이션에 3채널 커브 데이터 인터페이스를 추가합니다. 이 커브는 동적 입력이나 다른 모듈에 의해 샘플링되어 시간에 따라 다양한 플로트 세트를 생성할 수 있습니다.

벡터 4 커브(Curve for Vector 4s)

데이터 인터페이스(Data Interface)

시뮬레이션에 4채널 커브 데이터 인터페이스를 추가합니다. 이 커브는 동적 입력이나 다른 모듈에 의해 샘플링되어 시간에 따라 다양한 플로트 세트를 생성할 수 있습니다.

ENiagaraBooleanLogicOps

열거형(Enum)

다양한 모듈 및 동적 입력에 의해 사용되는 열거형으로서 다음과 같은 부울 로직을 사용해 테스트합니다.

  • Greater Than

  • Greater Than Or Equal To

  • Equal To

  • Not Equal To

ENiagaraCoordinateSpace

열거형(Enum)

다양한 모듈 및 동적 입력에 의해 사용되는 열거형으로서 좌표 공간을 서로 구별합니다:

  • 시뮬레이션(Simulation): 이미터가 로컬로 설정되어 있는 경우 로컬을 사용합니다. 그렇지 않은 경우에는 월드를 사용합니다.

  • 월드(World): 게임의 월드 스페이스입니다.

  • 로컬(Local): 자체 컴포넌트의 좌표 공간입니다.

ENiagaraExecutionState

열거형(Enum)

Emitter.ExecutionStateSystem.ExecutionState 같이 시스템을 관리하거나 이미터 실행 상태를 관리하는 파라미터에 의해 사용되는 열거형입니다.

ENiagaraExecutionStateSource

열거형(Enum)

실행 상태 세팅의 소스를 보여줍니다. 엔진 퀄리티가 상태를 변경할 수 있게 해주지만, 해당 상태가 더 높은 우선 순위로 정의되지 않은 경우에만 사용됩니다.

ENiagara ExpansionMode

열거형(Enum)

위치 모듈에서 사용되는 열거로서, 다음과 같은 확장의 원점을 확인합니다.

  • 내부(Inside)

  • 중앙(Centered)

  • 외부(Outside)

ENiagaraOrientationAxis

열거형(Enum)

다양한 모듈에서 사용되는 열거로서 다음을 사용해 계산할 축을 결정합니다.

  • X축(X Axis)

  • Y축(Y Axis)

  • Z축(Z Axis)

ENiagaraRandomnessMode

열거형(Enum)

해당 이미터에서 사용할 랜덤 수 생성 유형을 설정합니다. 유효한 선택은 다음과 같습니다.

  • 시뮬레이션 디폴트(Simulation Defaults)

  • 결정론적(Deterministic)

  • 비결정론적(Non-Deterministic)

플로트(Float)

프리미티브(Primitive)

플로트 값 변수를 생성합니다.

그리드 2D 컬렉션(Grid2D Collection)

데이터 인터페이스(Data Interface)

시뮬레이션 단계에서 사용됩니다. 사용자가 데이터의 2D 배열을 읽거나 쓰고, 시뮬레이션 단계에서 그리드의 각 픽셀에 반복처리할 수 있도록 해줍니다.

Int32

프리미티브(Primitive)

인티저 값 변수를 생성합니다.

선형 컬러(Linear Color)

프리미티브(Primitive)

색 선택 툴로 표시되는 RGBA 컬러 변수를 생성합니다.

매트릭스(Matrix)

프리미티브(Primitive)

4x4 매트릭스 변수를 생성합니다.

메시 트라이앵글 좌표(Mesh Tri Coordinate)

구조체(Struct)

트라이앵글 인덱스와 함께 해당 삼각형 면의 중심 좌표를 포함하는 단순한 구조체입니다.

이웃 그리드 3D(Neighbor Grid 3D)

데이터 인터페이스(Data Interface)

시뮬레이션 단계에서 사용됩니다. 사용자가 데이터의 3D 배열을 읽거나 쓰고, 시뮬레이션 단계에서 볼륨의 각 픽셀에 반복처리할 수 있도록 해줍니다.

나이아가라 ID(Niagara ID)

구조체(Struct)

파티클 트래킹에 쓰이는 구조체로서 두 부분으로 구성됩니다. 이 파티클의 인디렉션 테이블 인덱스입니다. 이 파티클의 데이터에 빠르게 액세스할 수 있게 해줍니다. 현재 살아있는 파티클에서는 항상 고유하지만, 파티클이 소멸한 후에는 재사용됩니다. AcquireTag 는 해당 ID의 획득 시간을 나타내는 고유 태그입니다. 이를 통해 특정 파티클이 소멸하고 다른 파티클이 소멸한 파티클의 인덱스를 재사용할 때 각 파티클을 구별할 수 있습니다.

오클루전 쿼리(Occlusion Query)

데이터 인터페이스(Data Interface)

이미터에 신규 오클루전 쿼리 데이터 인터페이스 모듈을 추가합니다. 이 데이터 인터페이스는 뎁스 버퍼 오클루전 정보를 읽는 데 사용됩니다.

GPU 이미터와만 사용할 수 있습니다.

파티클 어트리뷰트 리더(Particle Attribute Reader)

데이터 인터페이스(Data interface)

이미터에 신규 파티클 어트리뷰트 리더 데이터 인터페이스를 추가합니다. 이 데이터 인터페이스는 다른 이미터의 파티클 페이로드 값을 쿼리하는 데 사용할 수 있으며, 일부의 경우에는 이벤트를 사용하는 것보다 더 쉬울 수 있습니다.

쿼트(Quat)

프리미티브(Primitive)

회전을 표시하는 데 사용되는 쿼터니언 변수를 생성합니다.

심플 카운터(Simple Counter)

데이터 인터페이스(Data Interface)

이미터에 신규 심플 카운터 데이터 인터페이스 모듈을 추가합니다. 이 데이터 인터페이스로는 스레드 세이프 카운터를 증가시킬 수 있습니다.

CPU 이미터와만 사용할 수 있습니다.

스켈레탈 메시(Skeletal Mesh)

데이터 인터페이스(Data Interface)

스켈레탈 메시의 본이나 소켓과 스킨 지오메트와에 상호작용할 수 있는 함수가 포함된 데이터 인터페이스입니다.

스폰 정보(Spawn Info)

구조체(Struct)

생성할 파티클의 수(Count)를 지정하는 스폰에 사용되는 구조체로서 InterpStartDt 나 현재 프레임의 오프셋은 스폰 시간을 시작하고, IntervalDt 는 각 파티클이 스폰되는 시간차를 정의하며, SpawnGroup 은 스폰된 파티클이 각각 다른 카테고리에 속할 수 있도록 합니다.

스플라인(Spline)

데이터 인터페이스(Data Interface)

스플라인 애셋과 상호작용하는 데이터 인터페이스입니다.

스태틱 메시(Static Mesh)

데이터 인터페이스(Data Interface)

스태틱 메시의 표면과 상호작용할 수 있는 함수가 포함된 데이터 인터페이스입니다.

텍스처 샘플(Texture Sample)

데이터 인터페이스(Data Interface)

GPU의 텍스처와 상호작용할 수 있는 함수가 포함된 데이터 인터페이스입니다.

벡터(Vector)

프리미티브(Primitive)

플로트 3채널 세트를 생성합니다.

벡터 2D(Vector 2D)

프리미티브(Primitive)

플로트 2채널 세트를 생성합니다.

벡터 4(Vector 4)

프리미티브(Primitive)

플로트 4채널 세트를 생성합니다.

벡터 필드(Vector Field)

데이터 인터페이스(Data Interface)

벡터 필드를 쿼리할 수 있는 함수가 포함된 데이터 인터페이스입니다.

볼륨 텍스처 샘플(Volume Texture Sample)

데이터 인터페이스(Data interface)

이미터에 신규 볼륨 텍스처 데이터 인터페이스 모듈을 추가합니다. 이를 사용해 볼륨 텍스처를 샘플링할 수 있습니다.

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback