QShaderProgramBuilder Class▲
- 
					Header: QShaderProgramBuilder 
- 
					CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) 
- 
					qmake: QT += 3drender 
- 
					Inherited By: 
- 
					Instantiated By: qml-qt3d-render-shaderprogrambuilder.xml 
- 
					Inherits: Qt3DCore::QNode 
Detailed Description▲
A shader program builder consists of several different shader graphs used to generate shader code.
A cache of generated shader code is maintained. Generated shaders are by defaults saved in QStandardPaths::writableLocation(QStandardPaths::TempLocation)). This path can be overridden by setting environment variable QT3D_WRITABLE_CACHE_PATH to a valid writable path.
The use of the cache can be disabled by setting environment variable QT3D_DISABLE_SHADER_CACHE.
In most cases, changes made to a graph are detected by Qt 3D and a new cache entry will be generated. One case were this will not happen is when code snippets included by a graphs are changed. To work around that, clearing the cache directory or setting environment variable QT3D_REBUILD_SHADER_CACHE can be used to force shader code to be generated again.
Property Documentation▲
[read-only] computeShaderCode : const QByteArray▲
Holds the generate compute shader code.
Access functions:
- 
							computeShaderCode() const 
Notifier signal:
- 
							void computeShaderCodeChanged(const &computeShaderCode) 
computeShaderGraph : QUrl▲
Holds the URL to the compute shader graph used by this shader program builder.
Access functions:
- 
							computeShaderGraph() const 
- 
							void setComputeShaderGraph(const &computeShaderGraph) 
Notifier signal:
- 
							void computeShaderGraphChanged(const &computeShaderGraph) 
enabledLayers : QStringList▲
Holds the list of layers this builder will activate on the shader graphs during code generation.
Access functions:
- 
							enabledLayers() const 
- 
							void setEnabledLayers(const &layers) 
Notifier signal:
- 
							void enabledLayersChanged(const &layers) 
[read-only] fragmentShaderCode : const QByteArray▲
Holds the generate fragment shader code.
Access functions:
- 
							fragmentShaderCode() const 
Notifier signal:
- 
							void fragmentShaderCodeChanged(const &fragmentShaderCode) 
fragmentShaderGraph : QUrl▲
Holds the URL to the fragment shader graph used by this shader program builder.
Access functions:
- 
							fragmentShaderGraph() const 
- 
							void setFragmentShaderGraph(const &fragmentShaderGraph) 
Notifier signal:
- 
							void fragmentShaderGraphChanged(const &fragmentShaderGraph) 
[read-only] geometryShaderCode : const QByteArray▲
Holds the generate geometry shader code.
Access functions:
- 
							geometryShaderCode() const 
Notifier signal:
- 
							void geometryShaderCodeChanged(const &geometryShaderCode) 
geometryShaderGraph : QUrl▲
Holds the URL to the geometry shader graph used by this shader program builder.
Access functions:
- 
							geometryShaderGraph() const 
- 
							void setGeometryShaderGraph(const &geometryShaderGraph) 
Notifier signal:
- 
							void geometryShaderGraphChanged(const &geometryShaderGraph) 
shaderProgram : Qt3DRender::QShaderProgram*▲
Holds the shader program on which this builder generates code.
Access functions:
- 
							*shaderProgram() const 
- 
							void setShaderProgram( *program) 
Notifier signal:
- 
							void shaderProgramChanged( *shaderProgram) 
[read-only] tessellationControlShaderCode : const QByteArray▲
Holds the generate tessellation control shader code.
Access functions:
- 
							tessellationControlShaderCode() const 
Notifier signal:
- 
							void tessellationControlShaderCodeChanged(const &tessellationControlShaderCode) 
tessellationControlShaderGraph : QUrl▲
Holds the URL to the tesselation control shader graph used by this shader program builder.
Access functions:
- 
							tessellationControlShaderGraph() const 
- 
							void setTessellationControlShaderGraph(const &tessellationControlShaderGraph) 
Notifier signal:
- 
							void tessellationControlShaderGraphChanged(const &tessellationControlShaderGraph) 
[read-only] tessellationEvaluationShaderCode : const QByteArray▲
Holds the generate tessellation evaluation shader code.
Access functions:
- 
							tessellationEvaluationShaderCode() const 
Notifier signal:
- 
							void tessellationEvaluationShaderCodeChanged(const &tessellationEvaluationShaderCode) 
tessellationEvaluationShaderGraph : QUrl▲
Holds the URL to the tesselation evaluation shader graph used by this shader program builder.
Access functions:
- 
							tessellationEvaluationShaderGraph() const 
- 
							void setTessellationEvaluationShaderGraph(const &tessellationEvaluationShaderGraph) 
Notifier signal:
- 
							void tessellationEvaluationShaderGraphChanged(const &tessellationEvaluationShaderGraph) 
[read-only] vertexShaderCode : const QByteArray▲
Holds the generate vertex shader code.
Access functions:
- 
							vertexShaderCode() const 
Notifier signal:
- 
							void vertexShaderCodeChanged(const &vertexShaderCode) 
vertexShaderGraph : QUrl▲
Holds the URL to the vertex shader graph used by this shader program builder.
Access functions:
- 
							vertexShaderGraph() const 
- 
							void setVertexShaderGraph(const &vertexShaderGraph) 
Notifier signal:
- 
							void vertexShaderGraphChanged(const &vertexShaderGraph) 




