ShaderProgram QML Type | Qt 3D 5.15.18 (original) (raw)

Encapsulates a Shader Program. More...

Import Statement: import Qt3D.Render 2.15
Since: Qt 5.5
Instantiates: QShaderProgram

Properties

Methods

Detailed Description

ShaderProgram class encapsulates a shader program. 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];

Property Documentation

Holds the compute shader code used by this shader program.

Holds the URL to the compute shader graph used by this shader program builder.

Holds the format of the code provided on the ShaderProgram. The default is ShaderProgram.GLSL

This property was introduced in Qt 5.15.

Holds the fragment shader code used by this shader program.

Holds the URL to the fragment shader graph used by this shader program builder.

Holds the geometry shader code used by this shader program.

Holds the URL to the geometry shader graph used by this shader program builder.

Holds the log of the current shader program. This is useful to diagnose a compilation failure of the shader program.

Holds the status of the current shader program.

tessellationControlShaderCode : string

Holds the tesselation control shader code used by this shader program.

tessellationControlShaderGraph : string

Holds the URL to the tesselation control shader graph used by this shader program builder.

tessellationEvaluationShaderCode : string

Holds the tesselation evaluation shader code used by this shader program.

tessellationEvaluationShaderGraph : string

Holds the URL to the tesselation evaluation shader graph used by this shader program builder.

Holds the vertex shader code used by this shader program.

Holds the URL to the vertex shader graph used by this shader program builder.

Method Documentation

Returns the shader code loaded from sourceUrl.

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.