BakedLightmap QML Type

指定模型的烘焙光贴图设置。更多

Import Statement: import QtQuick3D
Since: Qt 6.4
Inherits:

QtObject

属性

详细说明

BakedLightmap 对象可用于实现以下功能

  • 在烘焙过程中持久存储烘焙光贴图数据,或
  • 在运行时加载先前生成并存储的光贴图。

在烘焙光照贴图时,将usedInBakedLighting 设置为 true 的模型将被视为光线追踪场景的一部分,这意味着模型的几何体和材质有助于直接和间接光照。不过,这本身并不能生成光照贴图,包括对反弹间接光照的完整计算,以及最终保存模型的光照贴图。为此,还需要将模型与enabled BakedLightmap 对象关联起来,并设置一个唯一的键。

在正常模式下运行时,相同的 BakedLightmap 对象表示模型有光贴图数据,引擎应尝试加载这些数据(基于唯一密钥)并在渲染时使用。

有关如何烘焙光贴图的更多信息,请参阅Lightmapper 文档。

注: 截至 Qt 6.4,光贴图烘焙处于早期技术预览状态。在未来的版本中,功能、质量和 API 很可能会发生变化。

另请参阅 LightmapperModel::usedInBakedLighting

属性文档

enabled : bool

当为 false 时,即使key 被设置为非空值,在光贴图烘焙过程中也不会存储为模型生成的光贴图。

默认值为 true。


key : string

enabled 为非空且为 true 时,为模型生成的光贴图会在光贴图绘制过程中持续存储。该值应是一个唯一的字符串,适合包含在文件系统中的文件名中。场景中的其他模型不得使用相同的键。

默认值为空。

另请参阅 loadPrefix


loadPrefix : string

非空时,该值会在加载模型的光贴图时作为key 的路径预输入。这样就可以将生成的光贴图放到与写入位置不同的位置,例如通过 Qt 资源系统作为嵌入式资源。

例如,下面的示例可以为静态模型生成光贴图,在应用程序的烘焙和实际运行之间使用唯一密钥识别光贴图数据。烘焙完成后,生成的文件可以作为/lightmaps PREFIX 下的资源列在应用程序的 CMake 项目中,让构建过程获取该文件并将其包含在可执行文件中。

Model {
    source: "model.mesh"
    y: 10
    bakedLightmap: BakedLightmap {
        key: "model34156"
        loadPrefix: "qrc:/lightmaps"
        // will attempt to load from :/lightmaps/qlm_model34156.exr at run time
    }
}

默认值为空。

另请参阅 key


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