diff options
author | Dave SIMmONs <simon@lindenlab.com> | 2011-05-24 10:51:09 -0700 |
---|---|---|
committer | Dave SIMmONs <simon@lindenlab.com> | 2011-05-24 10:51:09 -0700 |
commit | 3dfb4944ed916f9a251078a2614a854b9de0315d (patch) | |
tree | 251a82d2511132632d12e36c8e8be0d7bf5b11cf /indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl | |
parent | 1a5b3b0a9091a72fd5e5fb395f7f0c97b0fd502c (diff) | |
parent | e5752934be74a84e6ec0ff8cb96974bd1e9060ec (diff) |
Merge latest from lindenlab/viewer-development
Diffstat (limited to 'indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl')
-rw-r--r-- | indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl new file mode 100644 index 0000000000..be38a14d52 --- /dev/null +++ b/indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl @@ -0,0 +1,39 @@ +/** + * @file simpleSkinnedV.glsl + * + * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. + * $License$ + */ + +#version 120 + +vec4 calcLighting(vec3 pos, vec3 norm, vec4 color, vec4 baseCol); +void calcAtmospherics(vec3 inPositionEye); +mat4 getObjectSkinnedTransform(); + +attribute vec4 object_weight; + +void main() +{ + //transform vertex + gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0; + + mat4 mat = getObjectSkinnedTransform(); + + mat = gl_ModelViewMatrix * mat; + vec3 pos = (mat*gl_Vertex).xyz; + + vec4 norm = gl_Vertex; + norm.xyz += gl_Normal.xyz; + norm.xyz = (mat*norm).xyz; + norm.xyz = normalize(norm.xyz-pos.xyz); + + calcAtmospherics(pos.xyz); + + vec4 color = calcLighting(pos.xyz, norm.xyz, gl_Color, vec4(0.)); + gl_FrontColor = color; + + gl_Position = gl_ProjectionMatrix*vec4(pos, 1.0); + + gl_FogFragCoord = pos.z; +} |