diff options
author | Jacek Antonelli | 2008-08-15 23:45:34 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-08-15 23:45:34 -0500 |
commit | cd17687f01420952712a500107e0f93e7ab8d5f8 (patch) | |
tree | ce48c2b706f2c1176290e39fb555fbdf6648ce01 /linden/indra/newview/app_settings/shaders/class1/objects | |
parent | Second Life viewer sources 1.19.0.5 (diff) | |
download | meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.zip meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.gz meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.bz2 meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.xz |
Second Life viewer sources 1.19.1.0
Diffstat (limited to 'linden/indra/newview/app_settings/shaders/class1/objects')
15 files changed, 160 insertions, 97 deletions
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/alphaF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/alphaF.glsl deleted file mode 100644 index 0d98f36..0000000 --- a/linden/indra/newview/app_settings/shaders/class1/objects/alphaF.glsl +++ /dev/null | |||
@@ -1,6 +0,0 @@ | |||
1 | void alpha_lighting(); | ||
2 | |||
3 | void main() | ||
4 | { | ||
5 | alpha_lighting(); | ||
6 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/alphaV.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/alphaV.glsl deleted file mode 100644 index 91821f7..0000000 --- a/linden/indra/newview/app_settings/shaders/class1/objects/alphaV.glsl +++ /dev/null | |||
@@ -1,21 +0,0 @@ | |||
1 | vec4 calcLighting(vec3 pos, vec3 norm, vec4 color, vec4 baseCol); | ||
2 | void default_scatter(vec3 viewVec, vec3 lightDir); | ||
3 | |||
4 | attribute vec4 materialColor; | ||
5 | |||
6 | void main() | ||
7 | { | ||
8 | //transform vertex | ||
9 | gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; | ||
10 | gl_TexCoord[0] = gl_MultiTexCoord0; | ||
11 | |||
12 | vec3 pos = (gl_ModelViewMatrix * gl_Vertex).xyz; | ||
13 | vec3 norm = normalize(gl_NormalMatrix * gl_Normal); | ||
14 | |||
15 | default_scatter(pos, gl_LightSource[0].position.xyz); | ||
16 | |||
17 | vec4 color = calcLighting(pos, norm, materialColor, gl_Color); | ||
18 | color.a = materialColor.a; | ||
19 | |||
20 | gl_FrontColor = color; | ||
21 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/bumpshinyF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/bumpshinyF.glsl deleted file mode 100644 index 8509c62..0000000 --- a/linden/indra/newview/app_settings/shaders/class1/objects/bumpshinyF.glsl +++ /dev/null | |||
@@ -1,18 +0,0 @@ | |||
1 | vec4 getLightColor(); | ||
2 | void applyScatter(inout vec3 col); | ||
3 | |||
4 | uniform samplerCube environmentMap; | ||
5 | uniform sampler2D diffuseMap; | ||
6 | |||
7 | void main() | ||
8 | { | ||
9 | vec4 diff = texture2D(diffuseMap, gl_TexCoord[0].xy); | ||
10 | vec3 ref = textureCube(environmentMap, gl_TexCoord[1].xyz).rgb; | ||
11 | vec4 specular = gl_TexCoord[2]; | ||
12 | vec3 col = mix(getLightColor().rgb * diff.rgb, ref, specular.a)+specular.rgb*diff.rgb; | ||
13 | |||
14 | applyScatter(col); | ||
15 | |||
16 | gl_FragColor.rgb = col; | ||
17 | gl_FragColor.a = diff.a*gl_Color.a; | ||
18 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/bumpshinyV.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/bumpshinyV.glsl deleted file mode 100644 index 9a189a2..0000000 --- a/linden/indra/newview/app_settings/shaders/class1/objects/bumpshinyV.glsl +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | vec4 calcLightingSpecular(vec3 pos, vec3 norm, vec4 color, inout vec4 specularColor, vec4 baseCol); | ||
2 | void default_scatter(vec3 viewVec, vec3 lightDir); | ||
3 | |||
4 | attribute vec4 materialColor; | ||
5 | attribute vec4 specularColor; | ||
6 | |||
7 | void main() | ||
8 | { | ||
9 | //transform vertex | ||
10 | gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; | ||
11 | gl_TexCoord[0] = gl_MultiTexCoord0; | ||
12 | |||
13 | vec3 pos = (gl_ModelViewMatrix * gl_Vertex).xyz; | ||
14 | vec3 norm = normalize(gl_NormalMatrix * gl_Normal); | ||
15 | |||
16 | vec4 spec = specularColor; | ||
17 | gl_FrontColor.rgb = calcLightingSpecular(pos, norm, materialColor, spec, gl_Color).rgb; | ||
18 | gl_FrontColor.a = materialColor.a; | ||
19 | gl_TexCoord[2] = spec; | ||
20 | vec3 ref = reflect(pos,norm); | ||
21 | gl_TexCoord[1] = gl_TextureMatrix[1]*vec4(ref,1.0); | ||
22 | |||
23 | default_scatter(pos.xyz, gl_LightSource[0].position.xyz); | ||
24 | } | ||
25 | |||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightF.glsl new file mode 100755 index 0000000..1b0ffb9 --- /dev/null +++ b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightF.glsl | |||
@@ -0,0 +1,13 @@ | |||
1 | /** | ||
2 | * @file fullbrightF.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void fullbright_lighting(); | ||
9 | |||
10 | void main() | ||
11 | { | ||
12 | fullbright_lighting(); | ||
13 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyF.glsl new file mode 100644 index 0000000..936c228 --- /dev/null +++ b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyF.glsl | |||
@@ -0,0 +1,13 @@ | |||
1 | /** | ||
2 | * @file fullbrightShinyF.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void fullbright_shiny_lighting(); | ||
9 | |||
10 | void main() | ||
11 | { | ||
12 | fullbright_shiny_lighting(); | ||
13 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyV.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyV.glsl new file mode 100755 index 0000000..ba2aa02 --- /dev/null +++ b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyV.glsl | |||
@@ -0,0 +1,29 @@ | |||
1 | /** | ||
2 | * @file fullbrightShinyV.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void calcAtmospherics(vec3 inPositionEye); | ||
9 | |||
10 | uniform vec4 origin; | ||
11 | |||
12 | void main() | ||
13 | { | ||
14 | //transform vertex | ||
15 | gl_Position = ftransform(); | ||
16 | |||
17 | vec4 pos = (gl_ModelViewMatrix * gl_Vertex); | ||
18 | vec3 norm = normalize(gl_NormalMatrix * gl_Normal); | ||
19 | vec3 ref = reflect(pos.xyz, -norm); | ||
20 | |||
21 | gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0; | ||
22 | gl_TexCoord[1] = gl_TextureMatrix[1]*vec4(ref,1.0); | ||
23 | |||
24 | calcAtmospherics(pos.xyz); | ||
25 | |||
26 | gl_FrontColor = gl_Color; | ||
27 | |||
28 | gl_FogFragCoord = pos.z; | ||
29 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightV.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightV.glsl new file mode 100755 index 0000000..e64ccb8 --- /dev/null +++ b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightV.glsl | |||
@@ -0,0 +1,23 @@ | |||
1 | /** | ||
2 | * @file fullbrightV.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void calcAtmospherics(vec3 inPositionEye); | ||
9 | |||
10 | void main() | ||
11 | { | ||
12 | //transform vertex | ||
13 | gl_Position = ftransform(); | ||
14 | gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0; | ||
15 | |||
16 | vec4 pos = (gl_ModelViewMatrix * gl_Vertex); | ||
17 | |||
18 | calcAtmospherics(pos.xyz); | ||
19 | |||
20 | gl_FrontColor = gl_Color; | ||
21 | |||
22 | gl_FogFragCoord = pos.z; | ||
23 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightWaterF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightWaterF.glsl new file mode 100755 index 0000000..fd855aa --- /dev/null +++ b/linden/indra/newview/app_settings/shaders/class1/objects/fullbrightWaterF.glsl | |||
@@ -0,0 +1,13 @@ | |||
1 | /** | ||
2 | * @file fullbrightWaterF.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void fullbright_lighting_water(); | ||
9 | |||
10 | void main() | ||
11 | { | ||
12 | fullbright_lighting_water(); | ||
13 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/shinyF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/shinyF.glsl index 6942132..bdb0b05 100644 --- a/linden/indra/newview/app_settings/shaders/class1/objects/shinyF.glsl +++ b/linden/indra/newview/app_settings/shaders/class1/objects/shinyF.glsl | |||
@@ -1,13 +1,13 @@ | |||
1 | void applyScatter(inout vec3 col); | 1 | /** |
2 | * @file shinyF.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
2 | 7 | ||
3 | uniform samplerCube environmentMap; | 8 | void shiny_lighting(); |
4 | 9 | ||
5 | void main() | 10 | void main() |
6 | { | 11 | { |
7 | vec3 ref = textureCube(environmentMap, gl_TexCoord[0].xyz).rgb; | 12 | shiny_lighting(); |
8 | |||
9 | applyScatter(ref); | ||
10 | |||
11 | gl_FragColor.rgb = ref; | ||
12 | gl_FragColor.a = gl_Color.a; | ||
13 | } | 13 | } |
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/shinyV.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/shinyV.glsl index 16fba01..c2e1ddf 100644 --- a/linden/indra/newview/app_settings/shaders/class1/objects/shinyV.glsl +++ b/linden/indra/newview/app_settings/shaders/class1/objects/shinyV.glsl | |||
@@ -1,27 +1,30 @@ | |||
1 | void default_scatter(vec3 viewVec, vec3 lightDir); | 1 | /** |
2 | * @file shinyV.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void calcAtmospherics(vec3 inPositionEye); | ||
2 | 9 | ||
3 | uniform vec4 origin; | 10 | uniform vec4 origin; |
4 | 11 | ||
5 | void main() | 12 | void main() |
6 | { | 13 | { |
7 | //transform vertex | 14 | //transform vertex |
8 | gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; | 15 | gl_Position = ftransform(); //gl_ModelViewProjectionMatrix * gl_Vertex; |
9 | 16 | ||
10 | vec3 pos = (gl_ModelViewMatrix * gl_Vertex).xyz; | 17 | vec4 pos = (gl_ModelViewMatrix * gl_Vertex); |
11 | vec3 norm = normalize(gl_NormalMatrix * gl_Normal); | 18 | vec3 norm = normalize(gl_NormalMatrix * gl_Normal); |
19 | |||
20 | calcAtmospherics(pos.xyz); | ||
12 | 21 | ||
13 | gl_FrontColor = gl_Color; | 22 | gl_FrontColor = gl_Color; |
14 | 23 | ||
15 | vec3 ref = reflect(pos, norm); | 24 | vec3 ref = reflect(pos.xyz, -norm); |
16 | |||
17 | vec3 d = pos - origin.xyz; | ||
18 | float dist = dot(normalize(d), ref); | ||
19 | vec3 e = d + (ref * max(origin.w-dist, 0.0)); | ||
20 | |||
21 | ref = e - origin.xyz; | ||
22 | 25 | ||
23 | gl_TexCoord[0] = gl_TextureMatrix[0]*vec4(ref,1.0); | 26 | gl_TexCoord[0] = gl_TextureMatrix[0]*vec4(ref,1.0); |
24 | 27 | ||
25 | default_scatter(pos.xyz, gl_LightSource[0].position.xyz); | 28 | gl_FogFragCoord = pos.z; |
26 | } | 29 | } |
27 | 30 | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/shinyWaterF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/shinyWaterF.glsl new file mode 100755 index 0000000..0a2a5f6 --- /dev/null +++ b/linden/indra/newview/app_settings/shaders/class1/objects/shinyWaterF.glsl | |||
@@ -0,0 +1,13 @@ | |||
1 | /** | ||
2 | * @file shinyWaterF.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void shiny_lighting_water(); | ||
9 | |||
10 | void main() | ||
11 | { | ||
12 | shiny_lighting_water(); | ||
13 | } | ||
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/simpleF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/simpleF.glsl index ce5ab12..7dacca4 100644 --- a/linden/indra/newview/app_settings/shaders/class1/objects/simpleF.glsl +++ b/linden/indra/newview/app_settings/shaders/class1/objects/simpleF.glsl | |||
@@ -1,3 +1,10 @@ | |||
1 | /** | ||
2 | * @file simpleF.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
1 | void default_lighting(); | 8 | void default_lighting(); |
2 | 9 | ||
3 | void main() | 10 | void main() |
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/simpleV.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/simpleV.glsl index 2aa3521..0df89c8 100644 --- a/linden/indra/newview/app_settings/shaders/class1/objects/simpleV.glsl +++ b/linden/indra/newview/app_settings/shaders/class1/objects/simpleV.glsl | |||
@@ -1,20 +1,26 @@ | |||
1 | vec4 calcLighting(vec3 pos, vec3 norm, vec4 color, vec4 baseCol); | 1 | /** |
2 | void default_scatter(vec3 viewVec, vec3 lightDir); | 2 | * @file simpleV.glsl |
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
3 | 7 | ||
4 | attribute vec4 materialColor; | 8 | vec4 calcLighting(vec3 pos, vec3 norm, vec4 color, vec4 baseCol); |
9 | void calcAtmospherics(vec3 inPositionEye); | ||
5 | 10 | ||
6 | void main() | 11 | void main() |
7 | { | 12 | { |
8 | //transform vertex | 13 | //transform vertex |
9 | gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; | 14 | gl_Position = ftransform(); //gl_ModelViewProjectionMatrix * gl_Vertex; |
10 | gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0; | 15 | gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0; |
11 | 16 | ||
12 | vec3 pos = (gl_ModelViewMatrix * gl_Vertex).xyz; | 17 | vec4 pos = (gl_ModelViewMatrix * gl_Vertex); |
13 | vec3 norm = normalize(gl_NormalMatrix * gl_Normal); | ||
14 | 18 | ||
15 | default_scatter(pos, gl_LightSource[0].position.xyz); | 19 | vec3 norm = normalize(gl_NormalMatrix * gl_Normal); |
20 | |||
21 | calcAtmospherics(pos.xyz); | ||
16 | 22 | ||
17 | vec4 color = calcLighting(pos, norm, materialColor, gl_Color); | 23 | vec4 color = calcLighting(pos.xyz, norm, gl_Color, vec4(0.)); |
18 | gl_FrontColor = color; | 24 | gl_FrontColor = color; |
19 | 25 | ||
20 | gl_FogFragCoord = pos.z; | 26 | gl_FogFragCoord = pos.z; |
diff --git a/linden/indra/newview/app_settings/shaders/class1/objects/simpleWaterF.glsl b/linden/indra/newview/app_settings/shaders/class1/objects/simpleWaterF.glsl new file mode 100755 index 0000000..e066b3d --- /dev/null +++ b/linden/indra/newview/app_settings/shaders/class1/objects/simpleWaterF.glsl | |||
@@ -0,0 +1,13 @@ | |||
1 | /** | ||
2 | * @file simpleWaterF.glsl | ||
3 | * | ||
4 | * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. | ||
5 | * $License$ | ||
6 | */ | ||
7 | |||
8 | void default_lighting_water(); | ||
9 | |||
10 | void main() | ||
11 | { | ||
12 | default_lighting_water(); | ||
13 | } | ||