Qt Quick 파티클 시스템 사용

모든 파티클 시스템 유형에 대한 문서는 QtQuick.Particles 모듈 페이지에서 확인할 수 있습니다.

파티클 모듈에서 유형을 사용하려면 다음 줄과 함께 모듈을 임포트합니다:

import QtQuick.Particles

파티클 시스템

이 파티클 시스템에는 네 가지 주요 유형의 QML 유형이 포함되어 있습니다: ParticleSystem, 페인터, 이미터 및 이펙터입니다.

ParticleSystem 유형은 다른 모든 유형을 하나로 묶고 공유 타임라인을 관리합니다. 페인터, 이미터 및 이펙터는 모두 동일한 ParticleSystem 을 가져야 서로 상호 작용할 수 있습니다.

이 제약 조건에 따라 파티클 시스템을 원하는 만큼 가질 수 있으므로 상호 작용하려는 모든 유형에 대해 하나의 ParticleSystem 를 갖거나 유형 수가 적고 쉽게 제어할 수 있는 경우 하나만 갖는 것이 논리적으로 분리하는 것입니다.

논리적 파티클

모든 파티클 시스템 유형은 "논리적 파티클"에서 작동합니다. 모든 파티클은 파티클 시스템 내부에 논리적인 표현을 가지고 있으며, 유형은 이를 기반으로 작동합니다. 모든 논리적 파티클이 시각화될 필요는 없으며, 일부 논리적 파티클은 화면에 여러 개의 시각적 파티클이 그려질 수 있습니다.

파티클 그룹

모든 논리적 입자는 입자 그룹의 구성원이며, 각 그룹은 이름으로 식별됩니다. 다른 그룹이 지정되지 않은 경우 논리 입자는 ""(빈 문자열)이라는 이름을 가진 그룹에 속하며, 다른 그룹과 동일하게 작동합니다. 그룹은 파티클을 제어하고 확률적 상태 전환이 가능하기 때문에 두 가지 용도로 사용됩니다.

파티클 시스템 유형으로는 개별 파티클에 접근할 수 없으므로 그룹은 파티클을 제어합니다. 모든 유형은 그룹 전체에 작용하므로 일반적인 확률 파라미터 변동을 제외하고 서로 다르게 동작해야 하는 파티클은 서로 다른 그룹에 속해야 합니다.

파티클은 동적으로 그룹을 변경할 수도 있습니다. 이 경우 파티클 궤적은 변경되지 않지만 다른 파티클페인터 또는 어펙터에 의해 작동할 수 있습니다. 파티클은 어펙터에 의해 그룹이 변경되거나 ParticleGroup 유형으로 확률론적 상태 전환을 정의할 수 있습니다.

일반적으로 그룹은 스토캐스틱 상태 전환이 필요한 경우에만 ParticleGroup 유형으로 정의해야 합니다. 그렇지 않은 경우에는 해당 유형의 파티클/입자 프로퍼티에 사용된 스트링으로 그룹을 정의하는 것으로 충분합니다.

이미터

이미터는 논리적 파티클을 시스템으로 방출합니다. 이러한 파티클에는 궤적과 수명이 있지만 시각화는 없습니다. 이러한 파티클은 이미터의 위치에서 방출됩니다.

트레일 이미터는 다른 논리 파티클의 위치에서 파티클을 방출하는 특수한 유형의 이미터입니다. TrailEmitter 의 범위 내에 다음 유형의 논리적 파티클이 있으면 마치 TrailEmitter 과 동일한 프로퍼티를 가진 이미터가 있는 것처럼 해당 위치에서 파티클을 방출합니다.

파티클 페인터

페인터는 논리적 파티클을 시각화하는 유형입니다. 할당된 그룹에 있는 각 논리적 파티클에 대해 그 범위 내에 있는 경우(또는 유형에 클립 속성을 설정하지 않은 경우 외부에 있는 경우) ParticlePainter 의 유형에 따라 시각화됩니다. ParticlePainter 의 기본 유형은 아무것도 그리지 않습니다. ImageParticle 는 파티클 위치에 이미지를 렌더링합니다. ItemParticle 는 임의의 QML 델리게이트를 사용하여 논리적 파티클을 시각화할 수 있게 해줍니다. ModelParticle도 비슷하지만 뷰 클래스와 비슷한 방식으로 델리게이트 간에 모델 데이터를 조정합니다.

ParticlePainter 는 씬의 파티클을 시각화하는 QML 유형이므로 파티클을 시각적으로 다른 유형보다 위나 아래에 배치하려고 할 때 중요한 것은 Z 값입니다.

어펙터

이펙터는 파티클 시스템의 선택적 구성 요소입니다. 파티클의 궤적을 변경하거나 시뮬레이션에서 파티클의 수명을 조기에 종료하는 등 시뮬레이션에 다양한 조작을 수행할 수 있습니다. 성능상의 이유로 대용량 파티클 시스템에서는 어펙터를 사용하지 않는 것이 좋습니다.

스토캐스틱 파라미터

파티클 시스템은 많은 수의 인스턴스에서 파라미터를 확률적으로 제어할 때 이점이 있으므로 파티클 시스템에서는 여러 가지 확률적 헬퍼 유형을 사용합니다. 이러한 파라미터에 확률적 변동을 원하지 않는 경우 이러한 유형에 변동을 지정하지 마십시오.

방향

방향은 각도와 크기 또는 x 및 y 구성 요소로 지정할 수 있습니다. 어느 방법으로든 모든 방향을 지정할 수 있지만, x 및 y 성분을 변경하는 것과 각도와 크기를 변경하는 것에는 상당한 차이가 있습니다. x 및 y 구성 요소를 변경하면 지정된 점을 중심으로 직사각형 영역이 만들어지고, 각도를 변경하면 지정된 점을 중심으로 호가 만들어집니다.

셰이프

파티클 시스템에는 도형을 나타내는 여러 유형이 있습니다. 이러한 유형은 도형을 시각화하지 않으며 도형 내에서 임의의 점을 선택하기 위한 목적으로 사용됩니다. 무작위성이 없는 특정 점을 원한다면 기본값인 너비 0, 높이 0 도형을 사용합니다. 그렇지 않으면 도형 유형을 사용하여 영역을 지정하면 해당 영역에서 선택된 임의의 점을 결과로 사용할 수 있습니다.

Qt Quick Particles 예제 - 이미터, 예제 이펙터, 예제 이미지 파티클예제 이펙터 - 시스템도참조하세요 .

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.