InstanceList QML Type
Ermöglicht die manuelle Festlegung der Instanzierung in QML. Mehr...
| Import Statement: | import QtQuick3D |
| Inherits: |
Eigenschaften
- instanceCount : int
(since 6.3) - instances : List<QtQuick3D::InstanceListEntry>
Ausführliche Beschreibung
Der Typ „InstanceList“ ermöglicht es, eine Instanztabelle in QML manuell zu definieren.
Das folgende Beispiel erstellt eine Instanztabelle mit zwei Elementen:
InstanceList {
id: manualInstancing
instances: [
InstanceListEntry {
position: Qt.vector3d(0, 0, -60)
eulerRotation: Qt.vector3d(-10, 0, 30)
color: "red"
},
InstanceListEntry {
position: Qt.vector3d(50, 10, 100)
eulerRotation: Qt.vector3d(0, 180, 0)
color: "green"
}
]
}Es ist auch möglich, die Eigenschaft „instances“ zu füllen, indem man einfach untergeordnete Elemente zur `InstanceList` hinzufügt. Das folgende Beispiel entspricht dem vorherigen:
InstanceList {
id: manualInstancing
InstanceListEntry {
position: Qt.vector3d(0, 0, -60)
eulerRotation: Qt.vector3d(-10, 0, 30)
color: "red"
}
InstanceListEntry {
position: Qt.vector3d(50, 10, 100)
eulerRotation: Qt.vector3d(0, 180, 0)
color: "green"
}
}Jede „ InstanceListEntry “ ist ein Objekt, das Eigenschaftsbindungen und Animationen enthalten kann. Dies bietet große Flexibilität, verursacht jedoch auch einen Speicher-Overhead. Daher wird davon abgeraten, `InstanceList` für prozedural generierte Tabellen zu verwenden, die Tausende (oder Millionen) von Instanzen enthalten. Zudem führt jede Änderung einer Eigenschaft eines Eintrags dazu, dass die gesamte Instanztabelle neu berechnet und auf die GPU geladen wird.
Siehe auch „ RandomInstancing “ und „ QQuick3DInstancing “.
Dokumentation zu Eigenschaften
instanceCount : int [since 6.3]
Diese schreibgeschützte Eigenschaft enthält die Anzahl der Instanzen in der Liste.
Diese Eigenschaft wurde in Qt 6.3 eingeführt.
instances : List<QtQuick3D::InstanceListEntry> [default]
Diese Eigenschaft enthält die Liste der Instanzdefinitionen. Eine Änderung dieser Liste oder eines ihrer Elemente führt dazu, dass die Instanztabelle aktualisiert wird.
© 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.