Qt Quick 3D - Baked Lightmap Example
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick3D
import QtQuick3D.Helpers
Window {
width: 1280
height: 720
title: "Qt Quick 3D Baked Lightmap Example"
visible: true
View3D {
id: root
anchors.fill: parent
environment: SceneEnvironment {
backgroundMode: SceneEnvironment.Color
clearColor: "black"
}
PerspectiveCamera {
id: camera
z: 300
y: 100
}
property bool lmEnabled: lmToggle.checked
property int lightBakeMode: lmToggle.checked ? Light.BakeModeAll : Light.BakeModeDisabled
PointLight {
bakeMode: root.lightBakeMode
y: 190
brightness: 5
castsShadow: true
shadowFactor: 75
}
Box {
usedInBakedLighting: true
lightmapBaseResolution: 256
bakedLightmap: BakedLightmap {
enabled: root.lmEnabled
key: "box"
loadPrefix: ":/"
}
scale: Qt.vector3d(100, 100, 100)
}
Rectangle {
color: "lightGray"
width: 300
height: 80
ColumnLayout {
anchors.centerIn: parent
CheckBox {
id: lmToggle
text: "Use lightmaps\n(fully baked direct+indirect)"
checked: true
focusPolicy: Qt.NoFocus
}
Text {
text: "Run with --bake-lightmaps to rebake"
}
}