Auf dieser Seite

Instancing QML Type (Uncreatable)

Basistyp für Instanztabellen. Mehr...

Import Statement: import QtQuick3D
Since: Qt 6.2
In C++: QQuick3DInstancing
Inherits:

Object3D

Inherited By:

FileInstancing, InstanceList, and RandomInstancing

Hinweis: Dies ist ein nicht erstellbarer Typ. Er kann in QML nicht instanziiert werden.

Eigenschaften

Methoden

Ausführliche Beschreibung

Das Instanz-Rendering ermöglicht das Duplizieren eines Modells mit Variationen.

Der Instancing-Typ definiert eine Tabelle, die festlegt, wie jede Instanz relativ zum Basismodell modifiziert wird. Die Tabelle enthält für jeden Index einen Eintrag mit einer Transformationsmatrix, einer Farbe und generischen Daten zur Verwendung durch benutzerdefinierte Materialien. Um Instancing zu verwenden, setzen Sie die Eigenschaft „ instancing “ eines Modells so, dass sie auf ein Instancing-Objekt verweist.

Eine Anwendung kann ein Instancing-Objekt in C++ definieren, indem sie eine Unterklasse von ` QQuick3DInstancing` erstellt, oder sie kann einen der vordefinierten QML-Typen verwenden: ` InstanceList `, ` FileInstancing` oder ` RandomInstancing`. Darüber hinaus ist es möglich, ein ` particle system ` zu verwenden, um mithilfe der Eigenschaft ` ModelParticle3D.instanceTable ` eine Instanzierungstabelle zu definieren.

Dokumentation zu den Eigenschaften

depthSortingEnabled : bool

Speichert den Wert für die aktivierte Tiefensortierung der Instanztabelle. Wenn diese Option aktiviert ist, werden die Instanzen von der am weitesten von der Kamera entfernten Instanz zur nächstgelegenen sortiert und gerendert, d. h. von hinten nach vorne. Ist die Option deaktiviert (Standardeinstellung), werden die Instanzen in der Reihenfolge gerendert, in der sie in der Instanztabelle angegeben sind.

Hinweis: Die Instanzen werden nur untereinander sortiert. Sie werden nicht im Vergleich zu anderen Objekten in der Szene sortiert.

Hinweis: Die Sortierung erhöht die Vorbereitungszeit pro Bild, insbesondere bei einer großen Anzahl von Instanzen.

hasTransparency : bool

Setzen Sie diese Eigenschaft auf „true“, wenn die Instanzierungstabelle Alpha-Werte enthält, die beim Rendern des Modells verwendet werden sollen. Diese Eigenschaft hat nur dann Auswirkungen, wenn das Modell undurchsichtig ist: Wenn das Modell einen transparenten „ material “ oder einen „ opacity “-Wert kleiner als eins aufweist, wird unabhängig davon der Alpha-Wert aus der Tabelle verwendet.

Hinweis: Das Aktivieren des Alpha-Blendings kann zu Darstellungsproblemen führen, wenn sich Instanzen überlappen. Weitere Informationen finden Sie in der Dokumentation zu Alpha-Blending und Instanzierung.

instanceCountOverride : int

Legen Sie diese Eigenschaft fest, um die Anzahl der Instanzen zu begrenzen, ohne die Instanztabelle neu zu generieren oder erneut hochzuladen. Dies ermöglicht eine sehr ressourcenschonende Animation der Anzahl der gerenderten Instanzen.

shadowBoundsMaximum : vector3d

Legt die maximalen Grenzen fest, die bei der Berechnung der Schattenkartengrenzen der Modelle in der Instanztabelle verwendet werden.

Standardwert: (-1, -1, -1)

Hinweis: Diese Eigenschaft ist nur aktiviert, wenn die entsprechenden Komponenten von „ Instancing::shadowBoundsMinimum “ kleiner sind als die in „Instancing::shadowBoundsMaximum“. Andernfalls werden die Begrenzungen automatisch berechnet.

Siehe auch „ shadowBoundsMinimum “.

shadowBoundsMinimum : vector3d

Legt die Mindestgrenzen fest, die bei der Berechnung der Schattenkartengrenzen der Modelle in der Instanztabelle verwendet werden.

Standardwert: (1, 1, 1)

Hinweis: Diese Eigenschaft ist nur aktiviert, wenn die entsprechenden Komponenten von `Instancing::shadowBoundsMinimum` kleiner sind als die in ` Instancing::shadowBoundsMaximum`. Andernfalls werden die Begrenzungen automatisch berechnet.

Siehe auch „ shadowBoundsMaximum “.

Methodendokumentation

[since 6.3] color instanceColor(int index)

Gibt die Farbe der Instanz an der Position index

Diese Methode wurde in Qt 6.3 eingeführt.

Siehe auch „ instancePosition“ , „ instanceScale “, „ instanceRotation “, „instanceColor“ und „ instanceCustomData “.

[since 6.3] vector3d instanceCustomData(int index)

Gibt die benutzerdefinierten Daten für die Instanz unter index

Diese Methode wurde in Qt 6.3 eingeführt.

Siehe auch „ instancePosition“ , „ instanceScale “, „ instanceRotation “, „ instanceColor “ und „instanceCustomData“.

[since 6.3] vector3d instancePosition(int index)

Gibt die Position der Instanz an index

Diese Methode wurde in Qt 6.3 eingeführt.

Siehe auch instanceScale, instanceRotation, instanceColor und instanceCustomData.

[since 6.3] quaternion instanceRotation(int index)

Gibt ein Quaternion zurück, das die Drehung der Instanz um index

Diese Methode wurde in Qt 6.3 eingeführt.

Siehe auch instancePosition, instanceScale, instanceRotation, instanceColor und instanceCustomData.

[since 6.3] vector3d instanceScale(int index)

Gibt den Skalierungsfaktor der Instanz zurück unter index

Diese Methode wurde in Qt 6.3 eingeführt.

Siehe auch instancePosition, instanceScale, instanceRotation, instanceColor sowie instanceCustomData.

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