创建发光和扩散效果
在Qt设计工作室中,您可以使用ExtendedSceneEnvironment组件(Qt 6.5及以后版本可用)向您的3D场景添加发光和扩散效果。使用此效果,例如,可以在光照区域(例如使用基于图像的照明时材质或天空盒)周围创建发光或添加环境光。使用发光效果是使场景更逼真的方法之一。
使用ExtendedSceneEnvironment创建项目
要使用ExtendedSceneEnvironment作为默认场景环境创建项目,请使用3D扩展项目预设。
有关创建项目的更多信息,请参阅创建项目。
将ExtendedSceneEnvironment添加到现有项目
要将ExtendedSceneEnvironment添加到现有项目,请将ExtendedSceneEnvironment组件从组件拖到2D或导航器视图。
启用发光效果
要启用发光效果,在导航器视图中选择场景环境,然后在属性视图中选择启用选项卡下的发光部分。
注意:设置或实验发光效果时,请使用替换混合模式以更清楚地查看效果。
手电筒示例项目
本文档中使用的手电筒示例项目可在Qt设计工作室欢迎使用页面的示例部分找到。
您可以使用项目来实验 Glow 属性。运行项目时,您可以使用界面控件控制大部分属性。另一种实验属性的方法是直接在 Qt Design Studio 的 Properties 视图中更改它们,并在 2D 视图中实时查看更改。
基本属性
通常,实现逼真的发光效果的最佳方法是调整 Strength、Intensity 和 Bloom 属性。
Strength
设置发光强度。如果此属性的值为 0,则禁用发光效果。强度是每个级别应用的缩放因子(乘数)。这意味着在 模糊级别 中启用更多级别时,较大的 强度 值具有更明显的影响。
Intensity
设置发光强度。强度实际上是累积发光颜色(包括所有级别)的缩放因子(乘数)。
Bloom
设置整个场景的整体照明。
下限阈值
设置发光的最小亮度级别。
上限阈值
设置发光的最大亮度级别。
HDR 缩放
设置发光在场景中明亮区域边界的渗透(或扩展)程度。此属性的值范围为 0-8。如下面的示例图片所示,高值产生非常微妙的渗透,而低数值则产生更明显的渗透。
HDR 缩放 | 示例 |
---|---|
禁用 Bloom | |
8 | |
1 |
模糊级别
设置应用于发光效果的模糊级别。
级别越高,发光效果在光源周围扩散得越广,发光越柔和。
如下面的示例图片所示,较低的模糊级别在限制区域内产生强烈的发光,而较高的模糊级别在更广泛的区域内产生柔和的发光。结合模糊级别以获得期望的结果。
模糊级别 | 示例 |
---|---|
1, 2, 3 | |
5, 6, 7 | |
1, 2, 3, 4, 5, 6, 7 |
混合模式
以下混合模式可用
混合模式 | 描述 | 示例 |
---|---|---|
加法 | 常用于有可见天空或太阳的户外场景。 | |
屏幕 | 类似于 加法,但结果亮度较低。 | |
软光 | 常用于室内环境。 | |
替换 | 不执行任何混合,但仅显示发光效果会与实际内容混合的贡献。在实际操作中,这在设置发光效果时进行实验和故障排除时很有用。 |
改进属性
高质量 和 双线性插值上采样 属性通过上采样提高了发光模糊的质量。使用这些属性可能会降低应用程序的性能。您还可以尝试在 sceneEnvironment 中使用 抖动 属性。在某些情况下,抖动 可以为类似的结果提供更低的成本。
高质量
在降采样时增加用于发光的样本,以改善发光效果的质量。
双三次上采样
减少发光效果中的混叠伪影和方块。
示例
这些示例显示了每个效果的放大图像
效果 | 示例 |
---|---|
无效果 | |
高品质 | |
双三次上采样 |
在某些Qt许可证下可用。
了解更多。