]> git.mxchange.org Git - flightgear.git/commitdiff
Renamed these files, restructured with GLUT support.
authorcurt <curt>
Wed, 21 May 1997 02:14:41 +0000 (02:14 +0000)
committercurt <curt>
Wed, 21 May 1997 02:14:41 +0000 (02:14 +0000)
Main/gltkkey.c [deleted file]
Main/gltkkey.h [deleted file]
Main/gltkmain.c [deleted file]
Main/mesh2ogl.c [deleted file]

diff --git a/Main/gltkkey.c b/Main/gltkkey.c
deleted file mode 100644 (file)
index 2df8462..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/**************************************************************************
- * tkglkey.c -- handle tkgl keyboard events
- *
- * Written by Curtis Olson, started May 1997.
- *
- * $Id$
- * (Log is kept at end of this file)
- **************************************************************************/
-
-
-#include <stdio.h>
-
-/* assumes -I/usr/include/mesa in compile command */
-#include "gltk.h"
-
-#include "gltkkey.h"
-#include "../aircraft/aircraft.h"
-
-
-/* Handle keyboard events */
-GLenum key(int k, GLenum mask) {
-    struct control_params *c;
-
-    c = &current_aircraft.controls;
-
-    switch (k) {
-    case TK_UP:
-       c->elev -= 0.1;
-       return GL_TRUE;
-    case TK_DOWN:
-       c->elev += 0.1;
-       return GL_TRUE;
-    case TK_LEFT:
-       c->aileron += 0.01;
-       return GL_TRUE;
-    case TK_RIGHT:
-       c->aileron -= 0.01;
-       return GL_TRUE;
-    case 1 /* TK_END */:
-       c->rudder -= 0.01;
-       return GL_TRUE;
-    case 2 /* TK_PGDWN */:
-       c->rudder += 0.01;
-       return GL_TRUE;
-    case TK_a:
-       c->throttle[0] -= 0.05;
-       return GL_TRUE;
-    case TK_s:
-       c->throttle[0] += 0.05;
-    case TK_ESCAPE:
-       tkQuit();
-    }
-
-    printf("Key hit = %d\n", k);
-
-    return GL_FALSE;
-}
-
-
-/* $Log$
-/* Revision 1.2  1997/05/19 18:22:41  curt
-/* Parameter tweaking ... starting to stub in fog support.
-/*
- * Revision 1.1  1997/05/16 16:05:51  curt
- * Initial revision.
- *
- */
diff --git a/Main/gltkkey.h b/Main/gltkkey.h
deleted file mode 100644 (file)
index 51bb7eb..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/**************************************************************************
- * tkglkey.h -- handle tkgl keyboard events
- *
- * Written by Curtis Olson, started May 1997.
- *
- * $Id$
- * (Log is kept at end of this file)
- **************************************************************************/
-
-
-#ifndef TKGLKEY_H
-#define TKGLKEY_H
-
-
-#ifdef MESA
-    /* assumes -I/usr/include/mesa in compile command */
-    #include "gltk.h"
-#else
-    #include <GL/gl.h>
-#endif
-
-/* Handle keyboard events */
-GLenum key(int k, GLenum mask);
-
-
-#endif TKGLKEY_H
-
-
-/* $Log$
-/* Revision 1.2  1997/05/17 00:17:34  curt
-/* Trying to stub in support for standard OpenGL.
-/*
- * Revision 1.1  1997/05/16 16:05:53  curt
- * Initial revision.
- *
- */
diff --git a/Main/gltkmain.c b/Main/gltkmain.c
deleted file mode 100644 (file)
index 49088f2..0000000
+++ /dev/null
@@ -1,278 +0,0 @@
-/**************************************************************************
- * gltkmain.c -- top level sim routines
- *
- * Written by Curtis Olson for Mesa (OpenGL), started May 1997.
- *
- * $Id$
- * (Log is kept at end of this file)
- **************************************************************************/
-
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <sys/time.h>
-
-#ifdef MESA
-    /* assumes -I/usr/include/mesa in compile command */
-    #include "gltk.h"
-#else
-    #include <GL/gl.h>
-/* #include "aux.h" */
-#endif
-
-#include "gltkkey.h"
-#include "../aircraft/aircraft.h"
-#include "../scenery/scenery.h"
-
-
-/* This a record containing all the info for the aircraft currently
-   being operated */
-struct aircraft_params current_aircraft;
-
-/* temporary hack */
-extern struct mesh *mesh_ptr;
-
-/* Function prototypes */
-GLint make_mesh();
-static void draw_mesh();
-
-
-/* view parameters */
-static GLfloat win_ratio = 1.0;
-
-/* pointer to terrain mesh structure */
-static GLint mesh;
-
-/* init_view() -- Setup view parameters */
-static void init_view() {
-    /* if the 4th field is 0.0, this specifies a direction ... */
-    static GLfloat pos[4] = {-3.0, 1.0, 3.0, 0.0 };
-    static GLfloat fogColor[4] = {0.5, 0.5, 0.5, 1.0};
-    static GLfloat local_view[] = { 0.0 };
-    
-    glLightfv( GL_LIGHT0, GL_POSITION, pos );
-    glEnable( GL_CULL_FACE );
-    glEnable( GL_LIGHTING );
-    glEnable( GL_LIGHT0 );
-/**/glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, local_view);
-    glEnable( GL_DEPTH_TEST );
-/**/glDepthFunc(GL_LEQUAL);
-
-/*  glEnable( GL_FOG );
-    glFogi (GL_FOG_MODE, GL_LINEAR);
-    glFogf (GL_FOG_START, 1.0);
-    glFogf (GL_FOG_END, 100.0);
-    glFogfv (GL_FOG_COLOR, fogColor);
-    glFogf (GL_FOG_DENSITY, 0.35);
-    glHint (GL_FOG_HINT, GL_DONT_CARE);
-    */
-    
-    glClearColor(0.6, 0.6, 0.9, 1.0);
-}
-
-
-/* init_scene() -- build all objects */
-static void init_scene() {
-
-    /* make terrain mesh */
-    mesh = make_mesh();
-
-    /* If enabled, normal vectors specified with glNormal are scaled
-       to unit length after transformation.  See glNormal. */
-    glEnable( GL_NORMALIZE );
-}
-
-
-/* create the terrain mesh */
-GLint make_mesh() {
-    GLint mesh;
-
-    mesh = mesh_to_ogl(mesh_ptr);
-
-    return(mesh);
-}
-
-
-/* create the terrain mesh */
-GLint make_mesh_old() {
-    GLint mesh;
-    static GLfloat color[4] = { 0.3, 0.7, 0.2, 1.0 };
-
-    mesh = glGenLists(1);
-    glNewList(mesh, GL_COMPILE);
-    glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, color );
-    glShadeModel( GL_FLAT ); /*  glShadeModel( GL_SMOOTH ); */
-
-    glBegin(GL_POLYGON);
-        glVertex3f(-10.0, -10.0, 0.0);
-       glVertex3f(0.0, -10.0, 0.0);
-       glVertex3f(0.0, 0.0, 1.0);
-       glVertex3f(-10.0, 0.0, 1.0);
-    glEnd();
-
-    glBegin(GL_POLYGON);
-        glVertex3f(-10.0, 0.0, 1.0);
-       glVertex3f(0.0, 0.0, 1.0);
-       glVertex3f(0.0, 10.0, 0.0);
-       glVertex3f(-10.0, 10.0, 0.0);
-    glEnd();
-
-    glBegin(GL_POLYGON);
-        glVertex3f(0.0, 0.0, 0.0);
-       glVertex3f(10.0, 0.0, 2.0);
-       glVertex3f(10.0, 10.0, 2.0);
-       glVertex3f(0.0, 10.0, 0.0);
-    glEnd();
-
-    glBegin(GL_POLYGON);
-        glVertex3f(0.0, -10.0, -1.0);
-       glVertex3f(10.0, -10.0, 0.0);
-       glVertex3f(10.0, 0.0, -1.0);
-       glVertex3f(0.0, 0.0, 0.0);
-    glEnd();
-
-    glEndList();
-
-    return(mesh);
-}
-
-
-/* update the view volume */
-static void update_view() {
-    struct flight_params *f;
-
-    f = &current_aircraft.flight;
-
-    /* Tell GL we are about to modify the projection parameters */
-    glMatrixMode(GL_PROJECTION);
-    glLoadIdentity();
-
-    gluPerspective(45.0, 1.0/win_ratio, 1.0, 6000.0);
-    gluLookAt(f->pos_x, f->pos_y, f->pos_z,
-             f->pos_x + cos(f->Psi), f->pos_y + sin(f->Psi), f->pos_z,
-             0.0, 0.0, 1.0);
-}
-
-
-/* draw the scene */
-static void draw_scene( void ) {
-    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
-
-    /* update view volume parameters */
-    update_view();
-
-    /* Tell GL we are switching to model view parameters */
-    glMatrixMode(GL_MODELVIEW);
-    glLoadIdentity();
-
-    /* glTranslatef(0.0, 0.0, -5.0); */
-
-    glPushMatrix();
-
-    /* draw terrain mesh */
-    draw_mesh();
-
-    glPopMatrix();
-
-    tkSwapBuffers();
-}
-
-
-/* draw the terrain mesh */
-static void draw_mesh() {
-    glCallList(mesh);
-}
-
-
-/* What should we do when we have nothing else to do?  How about get
- * ready for the next move?*/
-static void idle( void )
-{
-    slew_update();
-    aircraft_debug(1);
-
-    draw_scene();
-}
-
-
-/* new window size or exposure */
-static void reshape( int width, int height ) {
-    /* Do this so we can call reshape(0,0) ourselves without having to know
-     * what the values of width & height are. */
-    if ( (height > 0) && (width > 0) ) {
-       win_ratio = (GLfloat) height / (GLfloat) width;
-    }
-
-    /* Inform gl of our view window size */
-    glViewport(0, 0, (GLint)width, (GLint)height);
-
-    update_view();
-    
-    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
-}
-
-
-/**************************************************************************
- * Main ...
- **************************************************************************/
-
-int main( int argc, char *argv[] ) {
-
-    /* parse the scenery file */
-    parse_scenery(argv[1]);
-
-    /* Define initial window size */
-    tkInitPosition(0, 0, 640, 400);
-
-    /* Define Display Parameters */
-    tkInitDisplayMode( TK_RGB | TK_DEPTH | TK_DOUBLE | TK_DIRECT );
-
-    /* Initialize the main window */
-    if (tkInitWindow("Terrain Demo") == GL_FALSE) {
-       tkQuit();
-    }
-
-    /* setup view parameters */
-    init_view();
-
-    /* build all objects */
-    init_scene();
-
-    /* Set initial position and slew parameters */
-    /* slew_init(-398391.3, 120070.4, 244, 3.1415); */ /* GLOBE Airport */
-    slew_init(-398673.28,120625.64, 53, 4.38);
-
-    /* call reshape() on expose events */
-    tkExposeFunc( reshape );
-
-    /* call reshape() on window resizes */
-    tkReshapeFunc( reshape );
-
-    /* call key() on keyboard event */
-    tkKeyDownFunc( key );
-
-    /* call idle() whenever there is nothing else to do */
-    tkIdleFunc( idle );
-
-    /* draw the scene */
-    tkDisplayFunc( draw_scene );
-
-    /* pass control off to the tk event handler */
-    tkExec();
-
-    return(0);
-}
-
-
-/* $Log$
-/* Revision 1.3  1997/05/19 18:22:42  curt
-/* Parameter tweaking ... starting to stub in fog support.
-/*
- * Revision 1.2  1997/05/17 00:17:34  curt
- * Trying to stub in support for standard OpenGL.
- *
- * Revision 1.1  1997/05/16 16:05:52  curt
- * Initial revision.
- *
- */
diff --git a/Main/mesh2ogl.c b/Main/mesh2ogl.c
deleted file mode 100644 (file)
index 9e0453d..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/**************************************************************************
- * mesh2ogl.c -- walk through a mesh data structure and make ogl calls
- *
- * Written by Curtis Olson, started May 1997.
- *
- * $Id$
- * (Log is kept at end of this file)
- **************************************************************************/
-
-
-/* assumes -I/usr/include/mesa in compile command */
-#include "gltk.h"
-
-#include "../scenery/mesh.h"
-#include "mat3.h"
-
-
-/* Sets the first vector to be the cross-product of the last two
-    vectors. */
-static void mat3_cross_product(float result_vec[3], register float vec1[3], 
-                       register float vec2[3]) {
-   float tempvec[3];
-   register float *temp = tempvec;
-
-   temp[0] = vec1[1] * vec2[2] - vec1[2] * vec2[1];
-   temp[1] = vec1[2] * vec2[0] - vec1[0] * vec2[2];
-   temp[2] = vec1[0] * vec2[1] - vec1[1] * vec2[0];
-
-   MAT3_COPY_VEC(result_vec, temp);
-}
-
-
-/* walk through mesh and make ogl calls */
-GLint mesh_to_ogl(struct mesh *m) {
-    GLint mesh;
-    static GLfloat color[4] = { 0.3, 0.7, 0.2, 1.0 };
-
-    float x1, y1, x2, y2, z11, z12, z21, z22;
-    float v1[3], v2[3], normal[3]; 
-    int i, j, istep, jstep, iend, jend;
-    float temp;
-
-    istep = jstep = 4;  /* Detail level 1 -- 1200 ... */
-
-    mesh = glGenLists(1);
-    glNewList(mesh, GL_COMPILE);
-    glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, color );
-    glShadeModel( GL_FLAT ); /* glShadeModel( GL_SMOOTH ); */
-
-    iend = m->cols - 1;
-    jend = m->rows - 1;
-    
-    y1 = m->originy;
-    y2 = y1 + (m->col_step * istep);
-    
-    for ( i = 0; i < iend; i += istep ) {
-       x1 = m->originx;
-       x2 = x1 + (m->row_step * jstep);
-       for ( j = 0; j < jend; j += jstep ) {
-           z11 = 0.03 * m->mesh_data[j         * m->rows + i        ];
-           z12 = 0.03 * m->mesh_data[j         * m->rows + (i+istep)];
-           z21 = 0.03 * m->mesh_data[(j+jstep) * m->rows + i        ];
-           z22 = 0.03 * m->mesh_data[(j+jstep) * m->rows + (i+istep)];
-
-           /* printf("x1 = %f  y1 = %f\n", x1, y1);
-           printf("x2 = %f  y2 = %f\n", x2, y2);
-           printf("z11 = %f  z12 = %f  z21 = %f  z22 = %f\n", 
-                  z11, z12, z21, z22); */
-
-           v1[0] = x2 - x1; v1[1] = 0;       v1[2] = z21 - z11;
-           v2[0] = x2 - x1; v2[1] = y2 - y1; v2[2] = z22 - z11;
-           mat3_cross_product(normal, v1, v2);
-           MAT3_NORMALIZE_VEC(normal,temp);
-           glNormal3fv(normal);
-           glBegin(GL_POLYGON);
-           glVertex3f(x1, y1, z11);
-           glVertex3f(x2, y1, z21);
-           glVertex3f(x2, y2, z22);
-           /* printf("(%f, %f, %f)\n", x1, y1, z11);
-           printf("(%f, %f, %f)\n", x2, y1, z21);
-           printf("(%f, %f, %f)\n", x2, y2, z22); */
-           glEnd();
-           
-           v1[0] = x2 - x1; v1[1] = y2 - y1; v1[2] = z22 - z11;
-           v2[0] = 0;       v2[1] = y2 - y1; v2[2] = z12 - z11;
-           mat3_cross_product(normal, v1, v2);
-           MAT3_NORMALIZE_VEC(normal,temp);
-           glNormal3fv(normal);
-           glBegin(GL_POLYGON);
-           glVertex3f(x1, y1, z11);
-           glVertex3f(x2, y2, z22);
-           glVertex3f(x1, y2, z12);
-           /* printf("(%f, %f, %f)\n", x1, y1, z11);
-           printf("(%f, %f, %f)\n", x2, y2, z22);
-           printf("(%f, %f, %f)\n", x1, y2, z12); */
-           glEnd();
-
-           x1 = x2;
-           x2 = x1 + (m->row_step * jstep);
-       }
-       y1 = y2;
-       y2 = y1 + (m->col_step * istep);
-    }
-
-    glEndList();
-
-    return(mesh);
-}
-
-
-/* $Log$
-/* Revision 1.3  1997/05/19 18:22:42  curt
-/* Parameter tweaking ... starting to stub in fog support.
-/*
- * Revision 1.2  1997/05/17 00:17:35  curt
- * Trying to stub in support for standard OpenGL.
- *
- * Revision 1.1  1997/05/16 16:05:52  curt
- * Initial revision.
- *
- */