diff options
author | Matthias Schiffer <matthias@gamezock.de> | 2009-12-15 02:25:40 +0100 |
---|---|---|
committer | Matthias Schiffer <matthias@gamezock.de> | 2009-12-15 02:25:40 +0100 |
commit | a4fa46a4fda967348ea18961c177330491bdb953 (patch) | |
tree | ebb601c9c03e9939bf681d740342c38d14c0848f /shader/default.vert | |
parent | ff7b7c8838f55dc0f2e76f903630f1d3d2941d5a (diff) | |
download | zoom++-a4fa46a4fda967348ea18961c177330491bdb953.tar zoom++-a4fa46a4fda967348ea18961c177330491bdb953.zip |
Added nice lighting shaders
Diffstat (limited to 'shader/default.vert')
-rw-r--r-- | shader/default.vert | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/shader/default.vert b/shader/default.vert new file mode 100644 index 0000000..133c871 --- /dev/null +++ b/shader/default.vert @@ -0,0 +1,25 @@ +varying vec4 diffuse, ambientGlobal, ambient; +varying vec3 normal, pos; +/*varying vec3 normal, lightVector, reflectVector, eyeVector;*/ + + +void main() { + normal = normalize(gl_NormalMatrix * gl_Normal); + + pos = vec3(gl_ModelViewMatrix * gl_Vertex); + /*lightVector = vec3(gl_LightSource[0].position - ecPos); + + reflectVector = normalize(reflect(-lightVector, normal)); + eyeVector = vec3(-ecPos);*/ + + /* Compute the diffuse, ambient and globalAmbient terms */ + diffuse = gl_FrontMaterial.diffuse * gl_LightSource[0].diffuse; + + /* The ambient terms have been separated since one of them */ + /* suffers attenuation */ + ambient = gl_FrontMaterial.ambient * gl_LightSource[0].ambient; + ambientGlobal = gl_LightModel.ambient * gl_FrontMaterial.ambient; + + gl_TexCoord[0] = gl_MultiTexCoord0; + gl_Position = ftransform(); +} |