PySide6.Qt3DRender.Qt3DRender.QShaderProgramBuilder¶
- class QShaderProgramBuilder¶
- Generates a Shader Program content from loaded graphs. - Details- 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. - Synopsis¶- Properties¶- Methods¶- def - __init__()
- def - enabledLayers()
- def - shaderProgram()
 - Slots¶- Signals¶- Note - This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE - Note - Properties can be used directly when - from __feature__ import true_propertyis used or via accessor functions otherwise.- property computeShaderCodeᅟ: QByteArray¶
 - Holds the generate compute shader code. - Access functions:
 - Holds the URL to the compute shader graph used by this shader program builder. - Access functions:
 - property enabledLayersᅟ: list of strings¶
 - Holds the list of layers this builder will activate on the shader graphs during code generation. - Access functions:
 - property fragmentShaderCodeᅟ: QByteArray¶
 - Holds the generate fragment shader code. - Access functions:
 - Holds the URL to the fragment shader graph used by this shader program builder. - Access functions:
 - property geometryShaderCodeᅟ: QByteArray¶
 - Holds the generate geometry shader code. - Access functions:
 - Holds the URL to the geometry shader graph used by this shader program builder. - Access functions:
 - property shaderProgramᅟ: QShaderProgram¶
 - Holds the shader program on which this builder generates code. - Access functions:
 - property tessellationControlShaderCodeᅟ: QByteArray¶
 - Holds the generate tessellation control shader code. - Access functions:
 - Holds the URL to the tesselation control shader graph used by this shader program builder. - Access functions:
 - property tessellationEvaluationShaderCodeᅟ: QByteArray¶
 - Holds the generate tessellation evaluation shader code. - Access functions:
 - Holds the URL to the tesselation evaluation shader graph used by this shader program builder. - Access functions:
 - property vertexShaderCodeᅟ: QByteArray¶
 - Holds the generate vertex shader code. - Access functions:
 - Holds the URL to the vertex shader graph used by this shader program builder. - Access functions:
 - __init__([parent=None])¶
- Parameters:
- parent – - QNode
 
 - computeShaderCode()¶
- Return type:
 
 - Getter of property - computeShaderCodeᅟ.- computeShaderCodeChanged(computeShaderCode)¶
- Parameters:
- computeShaderCode – - QByteArray
 
 - Notification signal of property - computeShaderCodeᅟ.- Getter of property - computeShaderGraphᅟ.- Notification signal of property - computeShaderGraphᅟ.- enabledLayers()¶
- Return type:
- list of strings 
 - See also - setEnabledLayers()
 - Getter of property - enabledLayersᅟ.- enabledLayersChanged(layers)¶
- Parameters:
- layers – list of strings 
 
 - Notification signal of property - enabledLayersᅟ.- fragmentShaderCode()¶
- Return type:
 
 - Getter of property - fragmentShaderCodeᅟ.- fragmentShaderCodeChanged(fragmentShaderCode)¶
- Parameters:
- fragmentShaderCode – - QByteArray
 
 - Notification signal of property - fragmentShaderCodeᅟ.- Getter of property - fragmentShaderGraphᅟ.- Notification signal of property - fragmentShaderGraphᅟ.- geometryShaderCode()¶
- Return type:
 
 - Getter of property - geometryShaderCodeᅟ.- geometryShaderCodeChanged(geometryShaderCode)¶
- Parameters:
- geometryShaderCode – - QByteArray
 
 - Notification signal of property - geometryShaderCodeᅟ.- Getter of property - geometryShaderGraphᅟ.- Notification signal of property - geometryShaderGraphᅟ.- setComputeShaderGraph(computeShaderGraph)¶
- Parameters:
- computeShaderGraph – - QUrl
 - See also - computeShaderGraph()
 - Setter of property - computeShaderGraphᅟ.- setEnabledLayers(layers)¶
- Parameters:
- layers – list of strings 
 - See also - enabledLayers()
 - Setter of property - enabledLayersᅟ.- setFragmentShaderGraph(fragmentShaderGraph)¶
- Parameters:
- fragmentShaderGraph – - QUrl
 - See also - fragmentShaderGraph()
 - Setter of property - fragmentShaderGraphᅟ.- setGeometryShaderGraph(geometryShaderGraph)¶
- Parameters:
- geometryShaderGraph – - QUrl
 - See also - geometryShaderGraph()
 - Setter of property - geometryShaderGraphᅟ.- setShaderProgram(program)¶
- Parameters:
- program – - QShaderProgram
 - See also - shaderProgram()
 - Setter of property - shaderProgramᅟ.- setTessellationControlShaderGraph(tessellationControlShaderGraph)¶
- Parameters:
- tessellationControlShaderGraph – - QUrl
 - See also - tessellationControlShaderGraph()
 - Setter of property - tessellationControlShaderGraphᅟ.- setTessellationEvaluationShaderGraph(tessellationEvaluationShaderGraph)¶
- Parameters:
- tessellationEvaluationShaderGraph – - QUrl
 - See also - tessellationEvaluationShaderGraph()
 - Setter of property - tessellationEvaluationShaderGraphᅟ.- setVertexShaderGraph(vertexShaderGraph)¶
- Parameters:
- vertexShaderGraph – - QUrl
 - See also - vertexShaderGraph()
 - Setter of property - vertexShaderGraphᅟ.- shaderProgram()¶
- Return type:
- QShaderProgram
 - See also - setShaderProgram()
 - Getter of property - shaderProgramᅟ.- shaderProgramChanged(shaderProgram)¶
- Parameters:
- shaderProgram – - QShaderProgram
 
 - Notification signal of property - shaderProgramᅟ.- tessellationControlShaderCode()¶
- Return type:
 
 - Getter of property - tessellationControlShaderCodeᅟ.- tessellationControlShaderCodeChanged(tessellationControlShaderCode)¶
- Parameters:
- tessellationControlShaderCode – - QByteArray
 
 - Notification signal of property - tessellationControlShaderCodeᅟ.- Getter of property - tessellationControlShaderGraphᅟ.- tessellationControlShaderGraphChanged(tessellationControlShaderGraph)¶
- Parameters:
- tessellationControlShaderGraph – - QUrl
 
 - Notification signal of property - tessellationControlShaderGraphᅟ.- tessellationEvaluationShaderCode()¶
- Return type:
 
 - Getter of property - tessellationEvaluationShaderCodeᅟ.- tessellationEvaluationShaderCodeChanged(tessellationEvaluationShaderCode)¶
- Parameters:
- tessellationEvaluationShaderCode – - QByteArray
 
 - Notification signal of property - tessellationEvaluationShaderCodeᅟ.- tessellationEvaluationShaderGraph()¶
- Return type:
 - See also - setTessellationEvaluationShaderGraph()
 - Getter of property - tessellationEvaluationShaderGraphᅟ.- tessellationEvaluationShaderGraphChanged(tessellationEvaluationShaderGraph)¶
- Parameters:
- tessellationEvaluationShaderGraph – - QUrl
 
 - Notification signal of property - tessellationEvaluationShaderGraphᅟ.- vertexShaderCode()¶
- Return type:
 
 - Getter of property - vertexShaderCodeᅟ.- vertexShaderCodeChanged(vertexShaderCode)¶
- Parameters:
- vertexShaderCode – - QByteArray
 
 - Notification signal of property - vertexShaderCodeᅟ.- Getter of property - vertexShaderGraphᅟ.- Notification signal of property - vertexShaderGraphᅟ.