Encapsulates a Shader Program. 更多 …
def
computeShaderCode
()
def
fragmentShaderCode
()
def
geometryShaderCode
()
def
log
()
def
setShaderCode
(type, shaderCode)
def
shaderCode
(type)
def
status
()
def
vertexShaderCode
()
def
setComputeShaderCode
(computeShaderCode)
def
setFragmentShaderCode
(fragmentShaderCode)
def
setGeometryShaderCode
(geometryShaderCode)
def
setTessellationControlShaderCode
(tessellationControlShaderCode)
def
setTessellationEvaluationShaderCode
(tessellationEvaluationShaderCode)
def
setVertexShaderCode
(vertexShaderCode)
def
computeShaderCodeChanged
(computeShaderCode)
def
fragmentShaderCodeChanged
(fragmentShaderCode)
def
geometryShaderCodeChanged
(geometryShaderCode)
def
logChanged
(log)
def
statusChanged
(status)
def
tessellationControlShaderCodeChanged
(tessellationControlShaderCode)
def
tessellationEvaluationShaderCodeChanged
(tessellationEvaluationShaderCode)
def
vertexShaderCodeChanged
(vertexShaderCode)
def
loadSource
(sourceUrl)
A shader program consists of several different shaders, such as vertex and fragment shaders.
Qt3D will automatically populate a set of default uniforms if they are encountered during the shader instrospection phase.
+——————————————–+——————————+-+——————————————————————-+++ | Default Uniform | Associated Qt3D Parameter name | GLSL declaration | +——————————————–+——————————+-+——————————————————————-+++ | ModelMatrix | modelMatrix | uniform mat4 modelMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | ViewMatrix | viewMatrix | uniform mat4 viewMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | ProjectionMatrix | projectionMatrix | uniform mat4 projectionMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | ModelViewMatrix | modelView | uniform mat4 modelView; | +——————————————–+——————————+-+——————————————————————-+++ | ViewProjectionMatrix | viewProjectionMatrix | uniform mat4 viewProjectionMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | ModelViewProjectionMatrix | modelViewProjection mvp | uniform mat4 modelViewProjection; uniform mat4 mvp; | +——————————————–+——————————+-+——————————————————————-+++ | InverseModelMatrix | inverseModelMatrix | uniform mat4 inverseModelMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | InverseViewMatrix | inverseViewMatrix | uniform mat4 inverseViewMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | InverseProjectionMatrix | inverseProjectionMatrix | uniform mat4 inverseProjectionMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | InverseModelViewMatrix | inverseModelView | uniform mat4 inverseModelView; | +——————————————–+——————————+-+——————————————————————-+++ | InverseViewProjectionMatrix | inverseViewProjectionMatrix | uniform mat4 inverseViewProjectionMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | InverseModelViewProjectionMatrix | inverseModelViewProjection | uniform mat4 inverseModelViewProjection; | +——————————————–+——————————+-+——————————————————————-+++ | ModelNormalMatrix | modelNormalMatrix | uniform mat3 modelNormalMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | ModelViewNormalMatrix | modelViewNormal | uniform mat3 modelViewNormal; | +——————————————–+——————————+-+——————————————————————-+++ | ViewportMatrix | viewportMatrix | uniform mat4 viewportMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | InverseViewportMatrix | inverseViewportMatrix | uniform mat4 inverseViewportMatrix; | +——————————————–+——————————+-+——————————————————————-+++ | AspectRatio (surface width / surface height)|aspectRatio | uniform float aspectRatio; | +——————————————–+——————————+-+——————————————————————-+++ | Exposure | exposure | uniform float exposure; | +——————————————–+——————————+-+——————————————————————-+++ | Gamma | gamma | uniform float gamma; | +——————————————–+——————————+-+——————————————————————-+++ | Time (in nano seconds) | time | uniform float time; | +——————————————–+——————————+-+——————————————————————-+++ | EyePosition | eyePosition | uniform vec3 eyePosition; | +——————————————–+——————————+-+——————————————————————-+++ | SkinningPalette | skinningPalette[0] | const int maxJoints = 100; uniform mat4 skinningPalette[maxJoints]; | +——————————————–+——————————+-+——————————————————————-+++
PySide2.Qt3DRender.Qt3DRender.
QShaderProgram
(
[
parent=None
]
)
¶
parent
–
QNode
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
ShaderType
¶
This enum identifies the type of shader used.
|
常量 |
描述 |
|---|---|
|
Qt3DRender.QShaderProgram.Vertex |
Vertex shader |
|
Qt3DRender.QShaderProgram.Fragment |
Fragment shader |
|
Qt3DRender.QShaderProgram.TessellationControl |
Tesselation control shader |
|
Qt3DRender.QShaderProgram.TessellationEvaluation |
Tesselation evaluation shader |
|
Qt3DRender.QShaderProgram.Geometry |
Geometry shader |
|
Qt3DRender.QShaderProgram.Compute |
Compute shader |
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
Status
¶
This enum identifies the status of shader used.
|
常量 |
描述 |
|---|---|
|
Qt3DRender.QShaderProgram.NotReady |
The shader hasn’t been compiled and linked yet |
|
Qt3DRender.QShaderProgram.Ready |
The shader was successfully compiled |
|
Qt3DRender.QShaderProgram.Error |
An error occurred while compiling the shader |
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
computeShaderCode
(
)
¶
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
computeShaderCodeChanged
(
computeShaderCode
)
¶
computeShaderCode
–
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
fragmentShaderCode
(
)
¶
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
fragmentShaderCodeChanged
(
fragmentShaderCode
)
¶
fragmentShaderCode
–
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
geometryShaderCode
(
)
¶
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
geometryShaderCodeChanged
(
geometryShaderCode
)
¶
geometryShaderCode
–
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
loadSource
(
sourceUrl
)
¶
sourceUrl
–
QUrl
QByteArray
Returns the shader code loaded from
sourceUrl
.
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
log
(
)
¶
unicode
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
logChanged
(
log
)
¶
log – unicode
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
setComputeShaderCode
(
computeShaderCode
)
¶
computeShaderCode
–
QByteArray
另请参阅
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
setFragmentShaderCode
(
fragmentShaderCode
)
¶
fragmentShaderCode
–
QByteArray
另请参阅
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
setGeometryShaderCode
(
geometryShaderCode
)
¶
geometryShaderCode
–
QByteArray
另请参阅
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
setShaderCode
(
type
,
shaderCode
)
¶
type
–
ShaderType
shaderCode
–
QByteArray
Sets the shader code for
type
of shader to the
shaderCode
.
另请参阅
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
setTessellationControlShaderCode
(
tessellationControlShaderCode
)
¶
tessellationControlShaderCode
–
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
setTessellationEvaluationShaderCode
(
tessellationEvaluationShaderCode
)
¶
tessellationEvaluationShaderCode
–
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
setVertexShaderCode
(
vertexShaderCode
)
¶
vertexShaderCode
–
QByteArray
另请参阅
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
shaderCode
(
type
)
¶
type
–
ShaderType
QByteArray
Returns the shader code for
type
.
另请参阅
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
status
(
)
¶
Returns the status of the current shader program.
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
tessellationControlShaderCode
(
)
¶
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
tessellationControlShaderCodeChanged
(
tessellationControlShaderCode
)
¶
tessellationControlShaderCode
–
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
tessellationEvaluationShaderCode
(
)
¶
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
tessellationEvaluationShaderCodeChanged
(
tessellationEvaluationShaderCode
)
¶
tessellationEvaluationShaderCode
–
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
vertexShaderCode
(
)
¶
QByteArray
PySide2.Qt3DRender.Qt3DRender.QShaderProgram.
vertexShaderCodeChanged
(
vertexShaderCode
)
¶
vertexShaderCode
–
QByteArray