ModelBlendParticle3D QML Type

Mischt den Partikeleffekt mit einem 3D-Modell. Mehr...

Import Statement: import QtQuick3D.Particles3D
Inherits:

Particle3D

Eigenschaften

Detaillierte Beschreibung

Dieser Typ bietet eine Möglichkeit, Partikeleffekte mit einem 3D-Modell zu mischen. Das bereitgestellte Modell muss auf Dreiecken basieren. Jedes Dreieck im Modell wird in ein Partikel umgewandelt, das dann vom Emitter verwendet wird. Anstelle des Partikel-Shaders wird das Modell mit Hilfe der im Modell angegebenen material schattiert. Die Art und Weise, wie der Effekt überblendet wird, wird durch die modelBlendMode bestimmt.

Die möglichen Modi sind:

  • Konstruieren, wobei das Modell aus den Partikeln aufgebaut wird.
  • Explodieren, bei dem das Modell in Partikel umgewandelt wird.
  • Transfer, bei dem Konstruieren und Explodieren kombiniert werden, um einen Effekt zu erzeugen, bei dem das Modell von einem Ort zum anderen übertragen wird.

Standardmäßig werden die Partikel in der Reihenfolge emittiert, in der sie im Modell angegeben sind, es sei denn, emitMode ist auf Random oder emitMode ist auf Activation und activationNode gesetzt.

Einige in der Basisklasse und den Emittern definierte Funktionen sind bei diesem Typ nicht funktionsfähig:

  • Particle3D::alignMode ist nicht funktionsfähig, da die Partikel im Modell eine beliebige Ausrichtung haben können.
  • Particle3D::sortMode ist nicht funktionsfähig, da die Partikel immer in der Reihenfolge gerendert werden, in der die Primitive im Modell angegeben sind.
  • ParticleEmitter3D::depthBias ist nicht funktionsfähig, da stattdessen die Tiefenverzerrung des Modells verwendet wird.

Hinweis: Die Standardwerte fadeInEffect und fadeOutEffect sind Particle3D.FadeNone.

Eigenschaft Dokumentation

ModelBlendEmitMode : enumeration

Legt den Emissionsmodus der Partikel fest

KonstanteBeschreibung
ModelBlendParticle3D.SequentialDie Partikel werden in der Reihenfolge emittiert, in der sie im Modell definiert sind.
ModelBlendParticle3D.RandomDie Partikel werden in zufälliger Reihenfolge emittiert.
ModelBlendParticle3D.ActivationDie Partikel werden emittiert, wenn sie durch die activationNode aktiviert werden.

ModelBlendMode : enumeration

Definiert den Überblendungsmodus für den Partikeleffekt.

KonstanteBeschreibung
ModelBlendParticle3D.ExplodeDas Modell wird explodiert, d. h. die Partikel werden von der Position des Modells aus emittiert.
ModelBlendParticle3D.ConstructDas Modell wird aufgebaut, d.h. die Partikel fliegen vom Emitter aus und bauen am Ende das Modell auf.
ModelBlendParticle3D.TransferKombiniert Explodieren und Übertragen für dasselbe Modell.

activationNode : Node

Diese Eigenschaft enthält einen Knoten, der Partikel aktiviert und die eigentliche Emitter-Routine außer Kraft setzt. Der Aktivierungsknoten kann verwendet werden, um zu steuern, wie die Partikel räumlich emittiert werden, wenn das Modell aus den Partikeln explodiert/konstruiert wird. Der Aktivierungsknoten emittiert ein Partikel, wenn der Mittelpunkt dieses Partikels auf der positiven Hälfte der z-Achse des Aktivierungsknotens liegt. Wenn der Aktivierungsknoten animiert wird, sich durch das Modell zu bewegen, werden die Partikel nacheinander entlang des Pfades, auf dem sich der Aktivierungsknoten bewegt, emittiert.


delegate : Component

Der Delegierte stellt eine Vorlage zur Verfügung, die das Modell für die ModelBlendParticle3D definiert.

Beispiel: Das Standard-Kugelmodell mit dem Standardmaterial

Component {
    id: modelComponent
    Model {
        source: "#Sphere"
        scale: Qt.vector3d(0.5, 0.5, 0.5)
        materials: DefaultMaterial { diffuseColor: "red" }
    }
}

ModelBlendParticle3D {
    id: particleRedSphere
    delegate: modelComponent
}

emitMode : bool

Diese Eigenschaft enthält den Emissionsmodus der Partikel.


endNode : Node

Diese Eigenschaft enthält den Knoten, der die Transformation für das Modell am Ende des Partikeleffekts angibt. Sie definiert die Größe, Position und Drehung, in der das Modell konstruiert wird, wenn die Mischmodi ModelBlendParticle3D.Construct und ModelBlendParticle3D.Transfer verwendet werden.


endTime : int

Diese Eigenschaft enthält die Endzeit des Partikels in Millisekunden. Die Endzeit wird während der Konstruktion verwendet und definiert die Dauer der Partikellebensdauer am Ende, wo der Effekt mit den Modellpositionen gemischt wird. Vor der Endzeit werden die Partikelpositionen nur durch den Partikeleffekt definiert, aber während der Endzeit wird die Partikelposition linear mit der Endposition des Modells überlagert.


modelBlendMode : ModelBlendMode

Diese Eigenschaft enthält den Überblendungsmodus für den Partikeleffekt.


© 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.