实例化 QML 类型

实例表的基础类型。 更多...

导入语句import QtQuick3D
Qt 6.2
实例化 QQuick3DInstancing
继承自

Object3D

继承

FileInstancingInstanceListRandomInstancing

属性

方法

详细描述

实例渲染 允许以不同的方式复制模型。

实例化类型定义了一个表格,该表格指定了相对于基模型如何修改每个实例。此表条目对应于每个索引,包含一个转换矩阵、一个颜色和用于自定义材质的通用数据。要使用实例化,将模型的 instancing 属性设置为引用实例化对象。

应用程序可以手动在 C++ 中定义实例化对象,通过继承 QQuick3DInstancing,或者可以使用预定义的 QML 类型之一:InstanceListFileInstancingRandomInstancing。此外,还可以使用 粒子系统 通过 ModelParticle3D.instanceTable 属性定义实例化表格。

属性文档

depthSortingEnabled : bool

保留实例表的深度排序启用值。当启用时,实例将从相机最远的实例开始排序和渲染到最近的实例,即从后往前。如果禁用,这是默认值,实例将按照在实例表中指定的顺序进行渲染。

注意: 实例仅相互排序。实例不会与其他场景中的对象排序。

注意: 排序会增加帧准备时间,尤其是在实例数量较多时。


hasTransparency : bool

将此属性设置为true,如果实例表中包含了应该在模型渲染时使用的alpha值。此属性仅在模型不透明时才有区别:如果模型具有透明的 material,或者小于一的opacity,则无论此属性如何,都会使用表中的alpha值。

注意: 启用alpha混合可能会导致实例重叠时的渲染问题。有关详细信息,请参阅alpha blending and instancing文档。


instanceCountOverride : int

将此属性设置为限制实例数量,而无需重新生成或重新上传实例表。这允许非常便宜的实例数量动画渲染。


方法文档

[since 6.3] color instanceColor(int index)

返回索引为index的实例的颜色

此方法自Qt 6.3起引入。

也见 instancePositioninstanceScaleinstanceRotation、instanceColor和instanceCustomData


[since 6.3] vector3d instanceCustomData(int index)

返回索引为index的实例的自定义数据

此方法自Qt 6.3起引入。

也见 instancePositioninstanceScaleinstanceRotationinstanceColor和instanceCustomData。


[since 6.3] vector3d instancePosition(int index)

返回索引为index的实例的位置

此方法自Qt 6.3起引入。

也见 instanceScaleinstanceRotationinstanceColorinstanceCustomData


[since 6.3] quaternion instanceRotation(int index)

返回表示索引为index的实例旋转的四次元数

此方法自Qt 6.3起引入。

也见 instancePositioninstanceScale、instanceRotation、instanceColorinstanceCustomData


[since 6.3] vector3d instanceScale(int index)

返回索引为index的实例的缩放

此方法自Qt 6.3起引入。

也请参阅 instancePosition、instanceScale,instanceRotationinstanceColorinstanceCustomData


© 2024 Qt公司有限公司。本文件中包含的文档贡献者是各自所有者的版权所有。提供的文档是根据自由软件基金会发布的GNU自由文档许可协议版本1.3许可的。Qt及其相关标志是芬兰和/或其他国家/地区的Qt公司注册商标。所有其他商标均为各自所有者所有。