ParticleEmitter3D QML Type
論理パーティクルのエミッター。詳細...
Import Statement: | import QtQuick3D.Particles3D |
Since: | Qt 6.2 |
Inherits: | |
Inherited By: |
プロパティ
- depthBias : real
- emitBursts : List<EmitBurst3D>
- emitRate : real
- enabled : bool
- lifeSpan : int
- lifeSpanVariation : int
- particle : Particle3D
- particleEndScale : real
- particleEndScaleVariation : real
- particleRotation : vector3d
- particleRotationVariation : vector3d
- particleRotationVelocity : vector3d
- particleRotationVelocityVariation : vector3d
- particleScale : real
- particleScaleVariation : real
- shape : ParticleAbstractShape3D
- system : ParticleSystem3D
- velocity : Direction3D
方法
- vector3d burst(int count)
- vector3d burst(int count, int duration)
- vector3d burst(int count, int duration, vector3d position)
詳細説明
この要素はParticleSystem3D に論理パーティクルを放出します。
ParticleSystem3D にパーティクルを放出するには、少なくとも1つのエミッタが必要です。放出量をコントロールするには、いくつかの方法があります:
- 毎秒何個のパーティクルが連続的に放出されるかをコントロールするemitRate を設定します。
- emitBursts プロパティにEmitBurst3D 要素を追加して、宣言的にバーストを放出します。
- burst() メソッドのいずれかを呼び出して、バーストを即座に放出する。
プロパティの説明
depthBias : real |
エミッタの深度バイアスを保持します。深度バイアスは、オブジェクトをソートするときにカメラからのオブジェクトの距離に追加されます。これは、異なるフレームで異なる順序でレンダリングされるかもしれない、互いに近いオブジェクト間のレンダリング順序を強制するために使用することができます。負の値はソート値をカメラに近づけ、正の値はカメラから遠ざけます。
emitBursts : List<EmitBurst3D> |
このプロパティは、バーストを宣言的に定義するために、EmitBurst3D 要素のリストを取ります。バーストの開始時間、量、継続時間があらかじめわかっている場合は、Timer でburst() を呼び出すなどするよりも、このプロパティを使用する方がよいでしょう。
例えば、開始時に100個のパーティクルを放出し、2秒後に50個のパーティクルを放出します:
ParticleEmitter3D { emitBursts: [ EmitBurst3D { time: 0 amount: 100 }, EmitBurst3D { time: 2000 amount: 50 } ] }
burst()も参照してください 。
emitRate : real |
このプロパティは、1秒あたりのパーティクルの放出率を定義します。例えば、emitRate が 120 で、システムが毎秒 60 フレームでアニメートする場合、毎フレームで 2 つの新しいパーティクルが放出されます。
デフォルト値は0
です。
enabled : bool |
enabled をfalse
に設定すると、このエミッタはパーティクルを放出しません。通常、これは条件付きでエミッタのオン/オフを切り替えるために使用します。バーストを放出し続けたい場合は、false
に切り替えるのではなく、emitRate を 0 のままにしてください。
デフォルト値はtrue
です。
lifeSpan : int |
lifeSpanVariation : int |
このプロパティは、単一のパーティクルの寿命の変化をミリ秒単位で定義します。
例えば、3 秒から 4 秒の間に存在するパーティクルを放出します:
ParticleEmitter3D { ... lifeSpan: 3500 lifeSpanVariation: 500 }
デフォルト値は0
です。
lifeSpanも参照してください 。
particle : Particle3D |
このプロパティは、このエミッタが放出する論理パーティクルを定義します。エミッタにはパーティクルが定義されていなければなりません。パーティクルはSpriteParticle3D またはModelParticle3D のいずれかです。
particleEndScale : real |
このプロパティは、パーティクルlifeSpan の最後にあるパーティクルのスケール倍率を定義します。パーティクルの端のサイズにバリエーションを持たせるには、particleEndScaleVariation を使用します。値が負の場合、終了時のスケールはparticleScale と同じになるため、パーティクルlifeSpan の間、スケールは変化しません。
デフォルト値は-1.0
です。
particleScale およびparticleScaleVariationも参照して ください。
particleEndScaleVariation : real |
このプロパティは終了時のパーティクルのスケール変化を定義します。値が負の場合、particleScaleVariation は終了時のスケールにも使用されます。例えば、スケール0.5 - 1.5で開始し、スケール1.0 - 5.0で終了するパーティクルを放出します:
ParticleEmitter3D { ... particleScale: 1.0 particleScaleVariation: 0.5 particleEndScale: 3.0 particleEndScaleVariation: 2.0 }
デフォルト値は-1.0
です。
particleEndScaleも参照してください 。
particleRotation : vector3d |
このプロパティは、開始時のパーティクルの回転を定義します。回転はオイラー角で度として定義されます。
particleRotationVariation も参照して ください。
particleRotationVariation : vector3d |
このプロパティはパーティクルの回転の変化を定義します。回転の変化はオイラー角の度数で定義されます。
例えば、完全にランダムな回転でパーティクルを放出する場合:
ParticleEmitter3D { ... particleRotationVariation: Qt.vector3d(180, 180, 180) }
particleRotationも参照してください 。
particleRotationVelocity : vector3d |
このプロパティはパーティクルの回転速度を定義します。回転速度はオイラー角で1秒あたりの度数で定義します。
particleRotationVelocityVariation も参照して ください。
particleRotationVelocityVariation : vector3d |
このプロパティはパーティクルの回転速度の変化を定義します。回転速度の変化はオイラー角で毎秒の度数で定義されます。
例えば、回転速度が毎秒-100度から100度の間のランダムな回転のパーティクルを任意の方向に放出します:
ParticleEmitter3D { ... particleRotationVariation: Qt.vector3d(180, 180, 180) particleRotationVelocityVariation: Qt.vector3d(100, 100, 100) }
particleRotationVelocityも参照してください 。
particleScale : real |
このプロパティは、最初のパーティクルのスケール倍率を定義します。パーティクルのサイズにバリエーションを持たせるには、particleScaleVariation を使います。
デフォルト値は1.0
です。
particleEndScale およびparticleScaleVariation も参照して ください。
particleScaleVariation : real |
このプロパティはパーティクルのスケール倍率を定義します。例えば、スケール 0.5 - 1.5 でパーティクルを放出します:
ParticleEmitter3D { ... particleScale: 1.0 particleScaleVariation: 0.5 }
デフォルト値は0.0
です。
particleScale およびparticleEndScaleVariation も参照して ください。
shape : ParticleAbstractShape3D |
このプロパティは、放出領域の任意の形状を定義します。ParticleShape3D ParticleModelShape3DShape は、エミッタ・ノード・プロパティに基づいてスケール、位置、回転されます。Shapefill プロパティが false に設定されている場合、エミッティングはシェイプの表面からのみ行われます。
シェイプが定義されていない場合、エミッタノードの中心点からエミッティングが行われます。
system : ParticleSystem3D |
このプロパティは、エミッタのParticleSystem3D を定義します。システムがエミッタの直接の親である場合、このプロパティを定義する必要はありません。
velocity : Direction3D |
このプロパティを使用して、エミッタパーティクルの開始速度を設定できます。velocityが設定されていない場合、パーティクルは動かず、affectors (使用されている場合)から速度が得られます。
メソッドの説明
このメソッドは次のduration ミリ秒の間にこのエミッタからcount の量のパーティクルを放出します。パーティクルは、エミッタがposition にあるかのように放出されますが、他のプロパティはすべて同じです。
© 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.