ads.vert Example File | Qt 3D 5.12.10

- Qt 5.12
- Qt 3D
- Qt 3D: Shadow Map QML Example
- ads.vert Example File
- Qt 5.12.10 Reference Documentation

# ads.vert Example File

shadow-map-qml/shaders/es3/ads.vert

     #version 300 es

     in vec3 vertexPosition;
     in vec3 vertexNormal;

     out vec4 positionInLightSpace;
     out vec3 position;
     out vec3 normal;

     uniform mat4 lightViewProjection;
     uniform mat4 modelMatrix;
     uniform mat4 modelView;
     uniform mat3 modelViewNormal;
     uniform mat4 mvp;

     void main()
     {
         // positionInLightSpace = lightViewProjection * modelMatrix * vec4(vertexPosition, 1.0);
         const mat4 shadowMatrix = mat4(0.5, 0.0, 0.0, 0.0,
                                        0.0, 0.5, 0.0, 0.0,
                                        0.0, 0.0, 0.5, 0.0,
                                        0.5, 0.5, 0.5, 1.0);

         positionInLightSpace = shadowMatrix * lightViewProjection * modelMatrix * vec4(vertexPosition, 1.0);

         normal = normalize(modelViewNormal * vertexNormal);
         position = vec3(modelView * vec4(vertexPosition, 1.0));

         gl_Position = mvp * vec4(vertexPosition, 1.0);
     }