29 enum class BakingStatus {
39 struct BakingControl {
42 bool isCancelled()
const;
45 bool cancelFlag =
false;
48 typedef std::function<
void(
const QVariantMap &, BakingControl*)> Callback;
50 explicit QQuick3DLightmapBaker(QQuick3DViewport *view);
51 ~QQuick3DLightmapBaker();
53 void bake(Callback callback);
56 void denoise(Callback callback);
60 void onLmCancelButtonClicked();
61 void onLmWindowClosing(QQuickCloseEvent *event);
66 bool m_bakingRequested =
false;
67 bool m_denoisingRequested =
false;
68 bool m_currentlyBaking =
false;
69 BakingControl *m_bakingControl =
nullptr;
70 QQuick3DViewport *m_view =
nullptr;
74 QQuickView *m_lmWindow =
nullptr;
75 bool m_windowCancelRequested =
false;
77 friend class QQuick3DSceneRenderer;
static QByteArray prepareCustomShader(QSSGRenderCustomMaterial *customMaterial, const QSSGShaderCustomMaterialAdapter::StringPairList &uniforms, const QByteArray &snippet, QSSGShaderCache::ShaderType shaderType, QSSGCustomShaderMetaData &meta, bool multiViewCompatible)