InstanceList QML Type
Permite especificar manualmente la instanciación en QML. Más...
| Import Statement: | import QtQuick3D |
| Inherits: |
Propiedades
- instanceCount : int
(since 6.3) - instances : List<QtQuick3D::InstanceListEntry>
Descripción detallada
El tipo InstanceList permite definir manualmente una tabla de instancias en QML.
El siguiente ejemplo crea una tabla de instancias con dos elementos:
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" } ] }
También es posible rellenar la propiedad instances simplemente añadiendo hijos a la InstanceList. El siguiente ejemplo es equivalente al anterior:
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" } }
Cada InstanceListEntry es un objeto que puede tener propiedades y animaciones. Esto proporciona una gran flexibilidad, pero también provoca una sobrecarga de memoria. Por lo tanto, no se recomienda utilizar InstanceList para tablas generadas procedimentalmente que contengan miles (o millones) de instancias. Además, cualquier cambio de propiedad en una entrada hará que toda la tabla de instancias sea recalculada y cargada en la GPU.
Véase también RandomInstancing y QQuick3DInstancing.
Documentación de propiedades
instanceCount : int [since 6.3]
Esta propiedad de sólo lectura contiene el número de instancias de la lista.
Esta propiedad se introdujo en Qt 6.3.
instances : List<QtQuick3D::InstanceListEntry> [default]
Esta propiedad contiene la lista de definiciones de instancia. La modificación de esta lista, o de cualquiera de sus elementos, provocará la actualización de la tabla de instancias.
© 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.