31 enum class BakingStatus {
41 struct BakingControl {
44 bool isCancelled()
const;
47 bool cancelFlag =
false;
50 typedef std::function<
void(
const QVariantMap &, BakingControl*)> Callback;
52 explicit QQuick3DLightmapBaker(QQuick3DViewport *view);
53 ~QQuick3DLightmapBaker();
55 void bake(Callback callback);
58 void denoise(Callback callback);
62 void onLmCancelButtonClicked();
63 void onLmWindowClosing(QQuickCloseEvent *event);
68 bool m_bakingRequested =
false;
69 bool m_denoisingRequested =
false;
70 bool m_currentlyBaking =
false;
71 BakingControl *m_bakingControl =
nullptr;
72 QQuick3DViewport *m_view =
nullptr;
76 QQuickView *m_lmWindow =
nullptr;
77 bool m_windowCancelRequested =
false;
79 friend class QQuick3DSceneRenderer;
static QByteArray prepareCustomShader(QSSGRenderCustomMaterial *customMaterial, const QSSGShaderCustomMaterialAdapter::StringPairList &uniforms, const QByteArray &snippet, QSSGShaderCache::ShaderType shaderType, QSSGCustomShaderMetaData &meta, bool multiViewCompatible)