diff options
author | neoraider <devnull@localhost> | 2006-10-24 17:04:02 +0200 |
---|---|---|
committer | neoraider <devnull@localhost> | 2006-10-24 17:04:02 +0200 |
commit | e43bceafaba72d34dfbea1deecd56c2f694d704a (patch) | |
tree | f403b0e076df599084d55bf04e546b565731e3c6 /init.c | |
parent | 79801b6b794a5fb50a3a013354323a48de37c050 (diff) | |
download | libzoom-e43bceafaba72d34dfbea1deecd56c2f694d704a.tar libzoom-e43bceafaba72d34dfbea1deecd56c2f694d704a.zip |
Beleuchtung und Rendering ge?ndert, um Schatten zu erm?glichen.
Diffstat (limited to 'init.c')
-rw-r--r-- | init.c | 33 |
1 files changed, 16 insertions, 17 deletions
@@ -4,16 +4,21 @@ #include <zoom/init.h> #include <zoom/texture.h> #include <zoom/level.h> +#include <zoom/light.h> LEVEL level; GLuint sphere; GLuint meditex_blue; -LIGHT light = {LIGHT_POINT, {1.0, 1.0, 1.0}, {0.0, 0.0, 0.0}}; +GLuint lightmap; + extern TEXLIST *texlist; int InitGame() { - //GLfloat mat_ambient_and_diffuse[] = { 0.5, 0.5, 0.5, 1.0}; + LIGHT light = {LIGHT_POINT, {30.0, 30.0, 30.0}, {0.0, 0.0, 0.0}}; + COLOR ambient = {0.1, 0.1, 0.1}; + + glViewport(0, 0, 640, 480); glMatrixMode(GL_PROJECTION); @@ -24,7 +29,6 @@ int InitGame() { glLoadIdentity(); glShadeModel(GL_SMOOTH); - glClearColor(0.0, 0.0, 0.0, 0.0); glClearDepth(1.0); glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); @@ -34,28 +38,23 @@ int InitGame() { glEnable(GL_CULL_FACE); glFrontFace(GL_CCW); - //glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient_and_diffuse); - glDisable(GL_LIGHTING); - //glEnable(GL_LIGHT0); + + SetAmbient(ambient); + AddLight(light); + + glEnable(GL_BLEND); + + glEnable(GL_TEXTURE_2D); meditex_blue = LoadTexture("medib.tex"); - glActiveTexture(GL_TEXTURE0); - glBindTexture(GL_TEXTURE_2D, LoadTexture("lightmap.tex")); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_ADD); + + lightmap = LoadTexture("lightmap.tex"); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP); - glActiveTexture(GL_TEXTURE1); - - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); - GLUquadricObj *quadric = gluNewQuadric(); gluQuadricDrawStyle(quadric, GLU_FILL); gluQuadricTexture(quadric, GL_TRUE); |