aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick3d/qquick3dsceneenvironment_p.h
diff options
context:
space:
mode:
authorLaszlo Agocs <[email protected]>2022-04-05 17:08:39 +0200
committerLaszlo Agocs <[email protected]>2022-05-27 10:28:48 +0200
commitb726a5bf8221513d19e93f85ddf7909ad6931d62 (patch)
tree7df458d8af3b514e7f6f0c32864875a8464ff6f1 /src/quick3d/qquick3dsceneenvironment_p.h
parentb5deeddb37613a1f9c9fabd0c243cfa74e2a4430 (diff)
Add basic baked lightmap support
Task-number: QTBUG-103340 Change-Id: Ic9b959d1f9ae050e26ffbc8842f63935c9bb62a7 Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Andy Nichols <[email protected]>
Diffstat (limited to 'src/quick3d/qquick3dsceneenvironment_p.h')
-rw-r--r--src/quick3d/qquick3dsceneenvironment_p.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/quick3d/qquick3dsceneenvironment_p.h b/src/quick3d/qquick3dsceneenvironment_p.h
index 2004bc07..d53357d6 100644
--- a/src/quick3d/qquick3dsceneenvironment_p.h
+++ b/src/quick3d/qquick3dsceneenvironment_p.h
@@ -51,6 +51,7 @@
#include <QtQml/QQmlListProperty>
#include <QtQuick3D/private/qquick3deffect_p.h>
+#include <QtQuick3D/private/qquick3dlightmapper_p.h>
QT_BEGIN_NAMESPACE
@@ -87,6 +88,8 @@ class Q_QUICK3D_EXPORT QQuick3DSceneEnvironment : public QQuick3DObject
Q_PROPERTY(float skyboxBlurAmount READ skyboxBlurAmount WRITE setSkyboxBlurAmount NOTIFY skyboxBlurAmountChanged REVISION(6, 4))
Q_PROPERTY(bool specularAAEnabled READ specularAAEnabled WRITE setSpecularAAEnabled NOTIFY specularAAEnabledChanged REVISION(6, 4))
+ Q_PROPERTY(QQuick3DLightmapper *lightmapper READ lightmapper WRITE setLightmapper NOTIFY lightmapperChanged REVISION(6, 4))
+
QML_NAMED_ELEMENT(SceneEnvironment)
public:
@@ -156,6 +159,8 @@ public:
Q_REVISION(6, 4) float skyboxBlurAmount() const;
Q_REVISION(6, 4) bool specularAAEnabled() const;
+ Q_REVISION(6, 4) QQuick3DLightmapper *lightmapper() const;
+
public Q_SLOTS:
void setAntialiasingMode(QQuick3DSceneEnvironment::QQuick3DEnvironmentAAModeValues antialiasingMode);
void setAntialiasingQuality(QQuick3DSceneEnvironment::QQuick3DEnvironmentAAQualityValues antialiasingQuality);
@@ -185,6 +190,8 @@ public Q_SLOTS:
Q_REVISION(6, 4) void setSkyboxBlurAmount(float newSkyboxBlurAmount);
Q_REVISION(6, 4) void setSpecularAAEnabled(bool enabled);
+ Q_REVISION(6, 4) void setLightmapper(QQuick3DLightmapper *lightmapper);
+
Q_SIGNALS:
void antialiasingModeChanged();
void antialiasingQualityChanged();
@@ -214,6 +221,8 @@ Q_SIGNALS:
Q_REVISION(6, 4) void skyboxBlurAmountChanged();
Q_REVISION(6, 4) void specularAAEnabledChanged();
+ Q_REVISION(6, 4) void lightmapperChanged();
+
protected:
QSSGRenderGraphObject *updateSpatialNode(QSSGRenderGraphObject *node) override;
void itemChange(ItemChange, const ItemChangeData &) override;
@@ -255,6 +264,9 @@ private:
bool m_depthPrePassEnabled = false;
QQuick3DEnvironmentTonemapModes m_tonemapMode = QQuick3DEnvironmentTonemapModes::TonemapModeLinear;
float m_skyboxBlurAmount = 0.0f;
+
+ QQuick3DLightmapper *m_lightmapper = nullptr;
+ QMetaObject::Connection m_lightmapperSignalConnection;
};
QT_END_NAMESPACE