aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/physics.c8
-rw-r--r--src/render.c85
2 files changed, 5 insertions, 88 deletions
diff --git a/src/physics.c b/src/physics.c
index 4c1ac86..3d860df 100644
--- a/src/physics.c
+++ b/src/physics.c
@@ -25,19 +25,19 @@
#define GRAVITY (9.81e-6)
/* Acceleration due to booster rocket, metres per ms per ms */
-#define THRUST (GRAVITY*2)
+#define THRUST (GRAVITY*1.5)
/* Acceleration due to forwards/backwards thrusters, m per ms per ms */
-#define FTHRUST (GRAVITY*0.5)
+#define FTHRUST (GRAVITY*0.2)
/* Air friction in (m per ms per ms) per (m per ms) */
-#define FRICTION 0.0008
+#define FRICTION 0.001
/* Lander craft turning speed in radians per ms per ms */
#define YAWTHRUST (M_PI/3000000)
/* Conversion factor between friction and 'yawthrust' */
-#define TORQUE 1
+#define TORQUE 3
static void physics_process(ModelInstance *obj, Uint32 dt) {
diff --git a/src/render.c b/src/render.c
index ed28be2..23fde64 100644
--- a/src/render.c
+++ b/src/render.c
@@ -192,82 +192,6 @@ static int render_model_instance_draw(ModelInstance *instance, Uint32 t, RenderC
}
-#if 0
-static void render_configure_light(int *ilightp, Light light, Room *room, Game *game) {
-
- GLfloat x, y, z;
- int ilight;
-
- GLfloat pos[4];
- GLfloat diffuse[] = { 1.0, 1.0, 1.0, 1.0 };
- GLfloat specular[] = { 1.0, 1.0, 1.0, 1.0 };
-
- ilight = *ilightp;
-
- x = room->rx - game->cur_room_x;
- y = room->ry - game->cur_room_y;
- z = room->rz - game->cur_room_z;
- glPushMatrix();
- glTranslatef(10.0*x, 10.0*y, 10.0*z);
-
- pos[0] = light.x;
- pos[1] = light.y;
- pos[2] = light.z;
- pos[3] = 1.0;
-
- if ( ilight < GL_MAX_LIGHTS ) {
- glLightfv(GL_LIGHT0+ilight, GL_POSITION, pos);
- glLightfv(GL_LIGHT0+ilight, GL_DIFFUSE, diffuse);
- glLightfv(GL_LIGHT0+ilight, GL_SPECULAR, specular);
- glLightf(GL_LIGHT0+ilight, GL_LINEAR_ATTENUATION, 0.01);
- glEnable(GL_LIGHT0+ilight);
- ilight++;
- }
-
- glPopMatrix();
-
- *ilightp = ilight;
-
-}
-
-static void render_setup_lighting(Game *game, Room *room_current) {
-
- int i, ilight;
- GLfloat ambient[4];
-
- /* Start with a blackout */
- for ( ilight=0; ilight<GL_MAX_LIGHTS; ilight++ ) {
- glDisable(GL_LIGHT0+ilight);
- }
- ilight = 0;
-
- /* Lights within this room */
- for ( i=0; i<room_current->num_lights; i++ ) {
- render_configure_light(&ilight, room_current->lights[i], room_current, game);
- }
-
- /* Lights in rooms connected to this one */
- for ( i=0; i<room_current->num_connected; i++ ) {
-
- Room *room;
- int j;
-
- room = game_find_room(game, room_current->connected[i].rx, room_current->connected[i].ry, room_current->connected[i].rz);
- if ( room == NULL ) continue; /* Shouldn't happen... */
-
- for ( j=0; j<room->num_lights; j++ ) {
- render_configure_light(&ilight, room->lights[j], room, game);
- }
-
- }
-
- ambient[0] = 0.3; ambient[1] = 0.3; ambient[2] = 0.3; ambient[3] = 1.0;
- //ambient[0] = 1.0; ambient[1] = 1.0; ambient[2] = 1.0; ambient[3] = 1.0;
- glLightModelfv(GL_LIGHT_MODEL_AMBIENT, ambient);
-
-}
-#endif
-
static void render_draw_line(GLfloat x1, GLfloat y1, GLfloat z1, GLfloat x2, GLfloat y2, GLfloat z2) {
GLfloat red[] = {1.0, 0.0, 0.0, 1.0};
@@ -299,13 +223,6 @@ void render_draw(Game *game) {
game->lander->x, game->lander->y, game->lander->z,
sqrtf(2.0)*sinf(game->lander->yaw)*sinf(game->view_angle),
sqrtf(2.0)*cosf(game->lander->yaw)*sinf(game->view_angle), sqrtf(2.0)*cosf(game->view_angle));
- //gluLookAt(game->lander->x-(1.5*sinf(game->lander->yaw)),
- // game->lander->y-(1.5*cosf(game->lander->yaw)), 1.5+game->lander->z,
- // game->lander->x, game->lander->y, game->lander->z,
- // sqrt(2.0)*sinf(game->lander->yaw), sqrtf(2.0)*cosf(game->lander->yaw), sqrtf(2.0));
- //gluLookAt(0.0, -250.0, -495.0+250.0,
- // 0.0, 0.0, -495.0,
- // 0.0, sqrtf(2.0), sqrtf(2.0));
GLfloat pos[] = {-1.0, -0.8, 1.3, 0.0};
GLfloat ambient[4];
@@ -351,8 +268,8 @@ void render_draw(Game *game) {
SDL_GL_SwapBuffers();
- game->render->frames++;
/* Calculate FPS every half a second */
+ game->render->frames++;
if ( t - game->render->t_fps > 500 ) {
game->render->fps = (500*game->render->frames) / (t - game->render->t_fps);
game->render->t_fps = t;