0ad/binaries/data/mods/public/shaders/water_high.vs
Ykkrosh b08e142193 Graphics optimisations and features from eihrul.
Add shadow filtering (PCF) option.
Fix ugly shadow saturation in old lighting mode.
Fix fancy water shader.
Fix camera matrix computation.
Support scissoring of camera frustum.
Optimise vertex skinning.
Inline various matrix functions.
Support filtering of the list of submitted models before a rendering
pass, for more precise culling.
Optimise water renderer (fixes #721, based on patch by ortalo).
Use scissoring when generating reflection/refraction textures.
Skip reflection/refraction texture generation when no water is visible.
Render alpha-blended objects differently (fixes #434).
Reduce shadow swimming effects.

This was SVN commit r9814.
2011-07-12 23:48:05 +00:00

20 lines
563 B
GLSL

uniform mat4 reflectionMatrix;
uniform mat4 refractionMatrix;
uniform mat4 losMatrix;
uniform float repeatScale;
uniform vec2 translation;
varying vec3 worldPos;
varying float waterDepth;
void main()
{
worldPos = gl_Vertex.xyz;
waterDepth = dot(gl_Color.xyz, vec3(255.0, -255.0, 1.0));
gl_TexCoord[0].st = gl_Vertex.xz*repeatScale + translation;
gl_TexCoord[1] = reflectionMatrix * gl_Vertex; // projective texturing
gl_TexCoord[2] = refractionMatrix * gl_Vertex;
gl_TexCoord[3] = losMatrix * gl_Vertex;
gl_Position = ftransform();
}