diff options
Diffstat (limited to 'indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl')
-rw-r--r-- | indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl index 3d2ad397df..525acbe4ea 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl @@ -23,38 +23,40 @@ * $/LicenseInfo$ */ - +uniform mat4 projection_matrix; mat4 getSkinnedTransform(); -attribute vec4 weight; +ATTRIBUTE vec3 position; +ATTRIBUTE vec3 normal; +ATTRIBUTE vec2 texcoord0; -varying vec4 post_pos; +VARYING vec4 post_pos; +VARYING vec2 vary_texcoord0; void main() { - gl_TexCoord[0] = gl_MultiTexCoord0; + vary_texcoord0 = texcoord0; vec4 pos; vec3 norm; + vec4 pos_in = vec4(position.xyz, 1.0); mat4 trans = getSkinnedTransform(); - pos.x = dot(trans[0], gl_Vertex); - pos.y = dot(trans[1], gl_Vertex); - pos.z = dot(trans[2], gl_Vertex); + pos.x = dot(trans[0], pos_in); + pos.y = dot(trans[1], pos_in); + pos.z = dot(trans[2], pos_in); pos.w = 1.0; - norm.x = dot(trans[0].xyz, gl_Normal); - norm.y = dot(trans[1].xyz, gl_Normal); - norm.z = dot(trans[2].xyz, gl_Normal); + norm.x = dot(trans[0].xyz, normal); + norm.y = dot(trans[1].xyz, normal); + norm.z = dot(trans[2].xyz, normal); norm = normalize(norm); - pos = gl_ProjectionMatrix * pos; + pos = projection_matrix * pos; post_pos = pos; gl_Position = vec4(pos.x, pos.y, pos.w*0.5, pos.w); - - gl_FrontColor = gl_Color; } |