]> git.lizzy.rs Git - shadowclad.git/blob - glut_janitor.c
Generate header dependencies automatically
[shadowclad.git] / glut_janitor.c
1 #include <GL/gl.h>
2
3 void initRender() {
4         // Set the clear colour to black
5         glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
6         
7         GLfloat light0_ambient[] = {0.1f, 0.1f, 0.1f, 1.0f};
8         GLfloat light0_diffuse[] = {1.0f, 1.0f, 1.0f, 1.0f};
9         GLfloat light0_specular[] = {1.0f, 1.0f, 1.0f, 1.0f};
10         GLfloat light0_position[] = {5.0f, 10.0f, 10.0f, 1.0f};
11         
12         glLightfv(GL_LIGHT0, GL_AMBIENT, light0_ambient);
13         glLightfv(GL_LIGHT0, GL_DIFFUSE, light0_diffuse);
14         glLightfv(GL_LIGHT0, GL_SPECULAR, light0_specular);
15         glLightfv(GL_LIGHT0, GL_POSITION, light0_position);
16         
17         glLightf(GL_LIGHT0, GL_CONSTANT_ATTENUATION, 1.0f);
18         glLightf(GL_LIGHT0, GL_LINEAR_ATTENUATION, 0.05f);
19         glLightf(GL_LIGHT0, GL_QUADRATIC_ATTENUATION, 0.001f);
20 }
21
22 void resizeStage(GLsizei width, GLsizei height) {
23         if (height == 0)
24                 height = 1;
25         
26         // Set device viewport dimensions
27         glViewport(0, 0, width, height);
28         // Switch to projection matrix
29         glMatrixMode(GL_PROJECTION);
30         // Reset the projection matrix
31         glLoadIdentity();
32         
33         GLfloat aspectRatio = (GLfloat) width / (GLfloat) height;
34         
35         glOrtho(-8.0, 8.0, -8.0/aspectRatio, 8.0/aspectRatio, 128.0, -128.0);
36         
37         glRotatef(45.0f, 1.0f, 0.0f, 0.0f);
38         glRotatef(45.0f, 0.0f, 1.0f, 0.0f);
39         
40         glMatrixMode(GL_MODELVIEW);
41 }