Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

3D 입자 시스템 속성

방출기 속성

../../../_images/particle_props_emitter.webp

Emitting 속성 옆의 확인란은 입자 시스템을 활성화 및 비활성화합니다. 상자가 선택된 경우에만 파티클이 처리되고 렌더링됩니다. 입자 시스템을 동적으로 활성화하거나 비활성화하려는 경우 런타임에 이 속성을 설정할 수 있습니다.

Amount 속성은 주어진 시간에 표시되는 최대 입자 수를 제어합니다. 성능을 희생하면서 더 많은 입자를 생성하려면 값을 늘리십시오.

Amount Ratio 속성은 방출되는 양에 대한 입자의 비율입니다. 1.0``보다 작을 경우 수명 동안 방출되는 입자의 양은 ``Amount * ``Amount Ratio``가 됩니다. 방출되는 동안 이 값을 변경해도 이미 생성된 입자에는 영향을 미치지 않으며 입자 시스템이 다시 시작되지 않습니다. 방출된 입자 수가 시간에 따라 변하는 효과를 만드는 데 유용합니다.

다른 입자 노드를 ``Sub Emitter``로 설정할 수 있으며, 이는 각 입자의 하위로 생성됩니다. 입자 시스템에 하위 이미터를 추가하는 방법에 대한 자세한 설명은 이 매뉴얼의 Sub-emitters 섹션을 참조하십시오.

노드 속성

../../../_images/particle_props_time.webp

Lifetime 속성은 각 입자가 다시 사라지기 전에 존재하는 시간을 제어합니다. 초 단위로 측정됩니다. 많은 입자 속성을 입자의 수명에 따라 변경하고 한 값에서 다른 값으로 부드럽게 혼합하도록 설정할 수 있습니다.

Lifetime``Amount``는 관련되어 있습니다. 파티클 시스템의 방출 속도를 결정합니다. 초당 생성되는 입자 수를 알고 싶을 때마다 다음 공식을 사용합니다.

\[초당 입자 수 = \frac{Amount}{Lifetime}\]

예: 각각 4초의 수명을 가진 32개의 입자를 방출한다는 것은 시스템이 초당 8개의 입자를 방출한다는 것을 의미합니다.

Interp to End 속성은 노드의 모든 입자가 수명이 끝날 무렵 보간되도록 합니다.

One Shot 속성 옆의 확인란을 선택하면 입자 시스템이 amount 입자를 방출한 다음 자체적으로 비활성화됩니다. 한 번만 "실행"됩니다. 이 속성은 기본적으로 선택되어 있지 않으므로 시스템은 수동으로 비활성화하거나 파괴할 때까지 파티클을 계속 방출합니다. 일회성 입자는 아이템 픽업이나 총알이 벽에 부딪힐 때 터지는 파편과 같은 단일 이벤트에 반응하는 효과에 적합합니다.

Preprocess 속성은 파티클 시스템 수명의 중간 지점으로 빨리 감고 거기서부터 렌더링을 시작하는 방법입니다. 초 단위로 측정됩니다. 1 값은 파티클 시스템이 시작될 때 이미 1초 동안 실행된 것처럼 보인다는 것을 의미합니다.

이는 파티클 시스템이 방금 씬에 로드되었음에도 불구하고 한동안 활성화된 것처럼 보이도록 하려는 경우 유용할 수 있습니다. 아래 예를 고려하십시오. 두 입자 시스템 모두 해당 영역에서 날아다니는 먼지를 시뮬레이션합니다. ``0``의 전처리 값을 사용하면 시스템이 효과를 눈에 띄게 할 만큼 충분한 입자를 아직 방출하지 않았기 때문에 처음 몇 초 동안 먼지가 발생하지 않습니다. 이는 왼쪽 영상에서 확인할 수 있다. 입자 시스템이 ``4``초 동안 전처리되는 오른쪽 비디오와 비교해 보세요. "설정" 시간의 처음 4초를 건너뛰었기 때문에 처음부터 먼지가 완전히 보입니다.

../../../_images/particle_preprocess.webp

전처리 없음(왼쪽) 대 전처리 4초(오른쪽)

Speed Scale 속성을 사용하여 입자 시스템의 속도를 늦추거나 높일 수 있습니다. 이는 데이터 처리뿐만 아니라 입자 렌더링에도 적용됩니다. 입자 시스템을 완전히 일시 중지하려면 ``0``로 설정하고 두 배 빠르게 움직이게 하려면 ``2``와 같은 것으로 설정합니다.

../../../_images/particle_speed_scale.webp

다양한 속도 배율 값: 0.1(왼쪽), 0.5(가운데), 1.0(오른쪽)

Explosiveness 속성은 입자가 순차적으로 방출되는지 아니면 동시에 방출되는지를 제어합니다. 0 값은 입자가 차례로 방출됨을 의미합니다. 1 값은 모든 amount 입자가 동시에 방출되어 효과가 더욱 "폭발적인" 모양으로 나타남을 의미합니다.

Randomness 속성은 입자 방출 타이밍에 임의성을 추가합니다. 0``로 설정하면 임의성이 전혀 없으며 입자 방출과 다음 입자 방출 사이의 간격은 항상 동일합니다. 입자는 *정기적인* 간격으로 방출됩니다. ``1``의 ``Randomness 값은 간격을 완전히 무작위로 만듭니다. 이 속성을 사용하여 효과의 균일성을 일부 깨뜨릴 수 있습니다. ``Explosiveness``가 ``1``로 설정된 경우 이 속성은 적용되지 않습니다.

낮은 FPS에서 실행되는 입자

보간 꺼짐(왼쪽) 및 켜짐(오른쪽)

Fixed FPS 속성은 입자 시스템이 처리되는 빈도를 제한합니다. This includes property updates as well as collision and attractors. 이는 특히 입자 충돌을 많이 사용하는 장면에서 성능을 크게 향상시킬 수 있습니다. 입자가 이동하거나 회전하는 속도는 변경되지 않습니다. 이를 위해 Speed Scale 속성을 사용합니다.

Fixed FPS``를 매우 낮은 값으로 설정하면 입자 애니메이션이 고르지 않게 보이기 시작하는 것을 있습니다. 아트 방향에 맞으면 이것이 바람직할 수도 있지만 대부분의 경우 파티클 시스템이 원활하게 애니메이션화되기를 원할 것입니다. 이것이 바로 ``Interpolate 속성이 하는 일입니다. 10 FPS에서 실행되는 파티클 시스템조차 ``60``에서 실행되는 것처럼 부드럽게 나타나도록 업데이트 간에 파티클 속성을 혼합합니다.

참고

:ref:`particle conflict <doc_3d_particles_collision>`을 사용할 때 입자가 빠르게 움직이고 충돌체가 얇으면 터널링이 발생할 수 있습니다. 이 문제는 ``Fixed FPS``를 늘리면 해결될 수 있습니다(성능 비용이 발생함).

콜리전 속성

더 보기

입자 충돌을 설정하려면 :ref:`doc_3d_particles_collision`에 설명된 추가 단계를 따라야 합니다.

Base Size 속성은 각 입자의 기본 충돌 크기를 정의하며, 이는 입자가 현재 환경과 충돌하는지 확인하는 데 사용됩니다. 일반적으로 이것이 입자와 거의 같은 크기가 되기를 원할 것입니다. 충돌 형상을 통해 잘리는 것을 방지하기 위해 매우 작고 매우 빠르게 움직이는 입자에 대해 이 값을 늘리는 것이 합리적일 수 있습니다.

노드 속성

노드 속성

Visibility AABB 속성은 입자 시스템의 원점 주위에 상자를 정의합니다. 이 상자의 일부가 카메라의 시야에 있는 한 입자 시스템이 표시됩니다. 카메라의 시야를 벗어나자마자 파티클 시스템의 렌더링이 전혀 중단됩니다. 이 속성을 사용하면 상자를 가능한 한 작게 유지하여 성능을 높일 수 있습니다.

Visibility AABB``의 크기를 설정할 명심해야 가지는 경계 외부에 있는 입자가 카메라의 시야를 벗어나면 즉시 사라진다는 것입니다. ``Visibility AABB 외부에서도 입자 충돌이 발생하지 않습니다. 기술적으로 버그는 아니지만 시각적 경험에 부정적인 영향을 미칠 수 있습니다.

Local Coords 속성을 선택하면 모든 입자 계산은 로컬 좌표계를 사용하여 위아래, 중력, 이동 방향 등을 결정합니다. 예를 들어 위쪽 및 아래쪽은 입자 시스템 또는 해당 상위 노드의 회전을 따릅니다. 속성을 선택 취소하면 글로벌 월드 공간이 이러한 계산에 사용됩니다. Down은 파티클 시스템의 회전에 관계없이 월드 공간에서 항상 -Y입니다.

../../../_images/particle_coords.webp

로컬 공간 좌표(왼쪽)와 월드 공간 좌표(오른쪽)

Draw Order 속성은 개별 입자가 그려지는 순서를 제어합니다. Index``는 방출 순서대로 그려진다는 것을 의미합니다. 나중에 생성된 입자는 이전 입자 위에 그려집니다. ``Lifetime``는 남은 수명 순서대로 추첨된다는 의미입니다. ``Reverse Lifetime``는 ``Lifetime 그리기 순서를 반대로 합니다. ``View Depth``는 카메라로부터의 거리에 따라 파티클이 그려지는 것을 의미합니다. 카메라에 더 가까운 파티클은 더 먼 파티클 위에 표시됩니다.

Transform Align 속성은 입자의 기본 회전을 제어합니다. Disabled``는 특정 방식으로 정렬되지 않음을 의미합니다. 대신, 회전은 가공 재료에 설정된 값에 따라 결정됩니다. ``Z-Billboard``는 입자가 항상 카메라를 향한다는 것을 의미합니다. 이는 :ref:`Standard Material <doc_standard_material_3d>`의 ``Billboard 속성과 유사합니다. ``Y to Velocity``는 각 입자의 Y축이 이동 방향과 일치함을 의미합니다. 이는 입자가 항상 "앞"을 가리키도록 하는 총알이나 화살표와 같은 작업에 유용할 수 있습니다. ``Z-Billboard + Y to Velocity``는 이전 두 가지 모드를 결합합니다. 각 입자의 Z축은 카메라를 향하고 Y축은 속도에 맞춰 정렬됩니다.

노드 속성

입자 트레일

노드 속성

Enabled 속성은 입자가 트레일로 렌더링되는지 여부를 제어합니다. 입자 흔적을 활용하려면 확인란을 선택해야 합니다.

Length Secs 속성은 트레일을 내보내야 하는 기간을 제어합니다. 이 기간이 길어질수록 트레일도 길어집니다.

입자 트레일의 작동 방식과 설정 방법에 대한 자세한 설명은 이 매뉴얼의 Particle trails 섹션을 참조하세요.