ReflectionProbe QML 类型
在场景中定义一个反射探针。更多信息...
导入语句 | import QtQuick3D |
继承 |
属性
- boxOffset : vector3d
- boxSize : vector3d
- clearColor : Color
- debugView : bool
(自 6.4)
- parallaxCorrection : bool
- quality : enumeration
- refreshMode : enumeration
- texture : CubeMapTexture
(自 6.5)
- timeSlicing : enumeration
方法
详细描述
反射探针用于将当前场景的反射提供给对象。探针向运行时提供属性,然后使用这些属性将场景渲染到立方图中。然后将立方图用作反射对象的反射信息。
另请参阅 Qt Quick 3D - 反射探针示例.
属性文档
boxOffset : vector3d |
盒子偏移用于将盒子相对于反射探针位置移动。由于探针从其位置捕获环境,因此可以使用此属性在没有影响探针捕获环境位置的情况下在盒子周围移动。此属性与 ReflectionProbe::boxSize 一起使用,以确定盒子内的对象。当启用 ReflectionProbe::parallaxCorrection 时,可以使用此属性将盒子置于以获得更精确的反射的位置。
另请参阅 parallaxCorrection.
boxSize : vector3d |
盒子大小用于确定哪些对象从本ReflectionProbe获取反射。盒子内的对象受到本ReflectionProbe的影响。如果一个对象同时位于多个反射探针内,该对象被认为是最近的反射探针内。当开启ReflectionProbe::parallaxCorrection时,大小也被用于计算立方体贴图内反射的距离。
另请参阅 parallaxCorrection.
clearColor : Color |
清色是在渲染场景之前清除立方体贴图所使用的颜色。
debugView : bool |
如果此属性设置为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 |
刷新模式告诉运行时立方体贴图应该更新多久一次。
可能的值有
常量 | 描述 |
---|---|
ReflectionProbe.FirstFrame | 在第一帧渲染场景。 |
ReflectionProbe.EveryFrame | 每帧渲染场景。 |
默认值是 ReflectionProbe.EveryFrame
注意: 使用 ReflectionProbe.FirstFrame
以提高性能。
texture : CubeMapTexture |
timeSlicing : enumeration |
时间切片确定如何定时立方体贴图渲染。
可能的值有
常量 | 描述 |
---|---|
ReflectionProbe.None | 在一次帧中渲染和预过滤立方体贴图的全部面。 |
ReflectionProbe.AllFacesAtOnce | 在一次帧中渲染全部面,但预过滤被分到后续的帧中,每一级Mip单独处理一帧。因此,粗糙表面的反射每六帧刷新一次,而平滑表面的反射则每帧刷新。 |
ReflectionProbe.IndividualFaces | 在单独的帧中渲染和预过滤每个面。因此,所有反射每六帧刷新一次。 |
默认值是 ReflectionProbe.None
注意: 使用 ReflectionProbe.AllFacesAtOnce
或 ReflectionProbe.IndividualFaces
以提高性能。
方法文档
scheduleUpdate() |
当调用时,如果ReflectionProbe::refreshMode设置为ReflectionProbe.FirstFrame
,则更新反射探针的渲染。
© 2024 The Qt Company Ltd. 本文档中包含的文档贡献的版权归属各自所有者。本提供的文档受GNU自由文档许可证版本1.3的约束,该许可证由自由软件基金会发布。Qt及其相关标志是The Qt Company Ltd在芬兰和其他国家/地区的商标。所有其他商标均为其各自所有者的财产。