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);
  }