创建发光和扩散效果

在Qt设计工作室中,您可以使用ExtendedSceneEnvironment组件(Qt 6.5及以后版本可用)向您的3D场景添加发光和扩散效果。使用此效果,例如,可以在光照区域(例如使用基于图像的照明时材质或天空盒)周围创建发光或添加环境光。使用发光效果是使场景更逼真的方法之一。

使用ExtendedSceneEnvironment创建项目

要使用ExtendedSceneEnvironment作为默认场景环境创建项目,请使用3D扩展项目预设。

有关创建项目的更多信息,请参阅创建项目

将ExtendedSceneEnvironment添加到现有项目

要将ExtendedSceneEnvironment添加到现有项目,请将ExtendedSceneEnvironment组件从组件拖到2D导航器视图。

启用发光效果

要启用发光效果,在导航器视图中选择场景环境,然后在属性视图中选择启用选项卡下的发光部分。

注意:设置或实验发光效果时,请使用替换混合模式以更清楚地查看效果。

手电筒示例项目

本文档中使用的手电筒示例项目可在Qt设计工作室欢迎使用页面的示例部分找到。

您可以使用项目来实验 Glow 属性。运行项目时,您可以使用界面控件控制大部分属性。另一种实验属性的方法是直接在 Qt Design Studio 的 Properties 视图中更改它们,并在 2D 视图中实时查看更改。

基本属性

通常,实现逼真的发光效果的最佳方法是调整 StrengthIntensityBloom 属性。

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许可证下可用。
了解更多。