Auf dieser Seite

InstanceList QML Type

Ermöglicht die manuelle Festlegung der Instanzierung in QML. Mehr...

Import Statement: import QtQuick3D
Inherits:

Instancing

Eigenschaften

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.