PySide6.Qt3DRender.Qt3DRender.QShaderProgramBuilder¶
- class QShaderProgramBuilder¶
Generates a Shader Program content from loaded graphs. More…
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
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.
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ᅟ.