QShaderProgramBuilder — PyQt Documentation v6.9.0 (original) (raw)
PyQt6.Qt3DRender.QShaderProgramBuilder
Inherits from QNode.
Description¶
Generates a Shader Program content from loaded graphs.
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 writableLocation()(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.
Methods¶
__init__(parent: QNode = None)
TODO
computeShaderCode() → QByteArray
TODO
computeShaderGraph() → QUrl
enabledLayers() → list[str]
See also
fragmentShaderCode() → QByteArray
TODO
fragmentShaderGraph() → QUrl
geometryShaderCode() → QByteArray
TODO
geometryShaderGraph() → QUrl
setComputeShaderGraph(QUrl)
See also
setEnabledLayers(Iterable[Optional[str]])
See also
setFragmentShaderGraph(QUrl)
setGeometryShaderGraph(QUrl)
setShaderProgram(QShaderProgram)
See also
setTessellationControlShaderGraph(QUrl)
setTessellationEvaluationShaderGraph(QUrl)
setVertexShaderGraph(QUrl)
See also
shaderProgram() → QShaderProgram
See also
tessellationControlShaderCode() → QByteArray
TODO
tessellationControlShaderGraph() → QUrl
tessellationEvaluationShaderCode() → QByteArray
TODO
tessellationEvaluationShaderGraph() → QUrl
vertexShaderCode() → QByteArray
TODO
vertexShaderGraph() → QUrl
Signals¶
computeShaderCodeChanged(Union[QByteArray, bytes, bytearray, memoryview])
TODO
computeShaderGraphChanged(QUrl)
TODO
enabledLayersChanged(Iterable[Optional[str]])
TODO
fragmentShaderCodeChanged(Union[QByteArray, bytes, bytearray, memoryview])
TODO
fragmentShaderGraphChanged(QUrl)
TODO
geometryShaderCodeChanged(Union[QByteArray, bytes, bytearray, memoryview])
TODO
geometryShaderGraphChanged(QUrl)
TODO
shaderProgramChanged(QShaderProgram)
TODO
tessellationControlShaderCodeChanged(Union[QByteArray, bytes, bytearray, memoryview])
TODO
tessellationControlShaderGraphChanged(QUrl)
TODO
tessellationEvaluationShaderCodeChanged(Union[QByteArray, bytes, bytearray, memoryview])
TODO
tessellationEvaluationShaderGraphChanged(QUrl)
TODO
vertexShaderCodeChanged(Union[QByteArray, bytes, bytearray, memoryview])
TODO
vertexShaderGraphChanged(QUrl)
TODO