ReflectionProbe QML Type

定义场景中的反射探针。更多

Import Statement: import QtQuick3D
Inherits:

Node

属性

方法

详细说明

反射探针用于为对象提供当前场景的反射。探针向运行时提供属性,然后运行时使用这些属性将场景渲染为立方体贴图。立方体贴图随后被用作反射物体的反射信息。

另请参阅 Qt Quick 3D - 反射探针示例

属性文档

boxOffset : vector3d

方框偏移用于相对于反射探针位置移动方框。由于探针从其位置捕捉环境,因此可以使用该属性移动方框,而不会影响探针捕捉环境的位置。该属性和ReflectionProbe::boxSize 将用于确定落在方框内的物体。打开ReflectionProbe::parallaxCorrection 后,该属性可用于定位方框,以获得更精确的反射。

另请参阅 parallaxCorrection


boxSize : vector3d

方框大小用于确定哪些物体可以从ReflectionProbe 中获得反射。在方框内的物体受该ReflectionProbe 的影响。如果一个物体同时位于多个反射探头内,则该物体会被视为位于最近的反射探头内。打开ReflectionProbe::parallaxCorrection 后,尺寸也将用于计算立方体地图中的反射距离。

另请参阅 parallaxCorrection


clearColor : Color

清除颜色(Clear color)是用于在渲染场景之前清除立方体贴图的颜色。


debugView : bool [since 6.4]

如果将此属性设置为 true,则会渲染一个线框,使反射探测框可视化。

此属性在 Qt 6.4 中引入。


parallaxCorrection : bool

默认情况下,反射探针提供的反射被假定为来自无限远处,类似于天空盒。这对于环境反射效果很好,但对于狭小空间,会导致反射的透视误差。为了解决这个问题,可以开启视差校正。反射的距离由ReflectionProbe::boxSize 属性决定。

另请参阅 boxSize


quality : enumeration

质量决定立方体贴图的分辨率。

可能的值有

常数说明
ReflectionProbe.VeryLow使用 128x128 纹理渲染反射贴图。
ReflectionProbe.Low使用 256x256 纹理渲染反射贴图。
ReflectionProbe.Medium使用 512x512 纹理渲染反射贴图。
ReflectionProbe.High使用 1024x1024 纹理渲染反射贴图。
ReflectionProbe.VeryHigh使用 2048x2048 纹理渲染反射贴图。

默认值为ReflectionProbe.Low


refreshMode : enumeration

刷新模式(Refresh mode):告诉运行时立方体贴图的更新频率。

可能的值有

常量说明
ReflectionProbe.FirstFrame在第一帧渲染场景。
ReflectionProbe.EveryFrame每帧渲染一次场景。

默认值为ReflectionProbe.EveryFrame

注: 使用ReflectionProbe.FirstFrame 可提高性能。


texture : CubeMapTexture [since 6.5]

该立方体贴图纹理不用于渲染场景,而是用于显示受该反射探针影响的对象的反射。

此属性在 Qt 6.5 中引入。

另请参阅 CubeMapTexture


timeSlicing : enumeration

时间片决定立方体贴图渲染的计时方式。

可能的值有

常量说明
ReflectionProbe.None在一帧内渲染和预过滤立方体贴图的所有面。
ReflectionProbe.AllFacesAtOnce所有面都在一帧内渲染,但预过滤被划分到多个帧内,每个 mip 层在各自的帧内处理。因此,粗糙表面的反射每六帧刷新一次,而光滑表面的反射则每帧刷新一次。
ReflectionProbe.IndividualFaces每个面都在单独的帧中进行渲染和预过滤。因此所有的反射都是每六帧刷新一次。

默认值为ReflectionProbe.None

注: 使用ReflectionProbe.AllFacesAtOnceReflectionProbe.IndividualFaces 可提高性能。


方法文档

scheduleUpdate()

ReflectionProbe::refreshMode 设置为ReflectionProbe.FirstFrame 时调用此方法,会更新反射探针渲染。


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