From 36e8103a5a09869ce64fd41253280446195c0a0e Mon Sep 17 00:00:00 2001 From: Don Pellegrino Date: Tue, 07 Jul 2009 01:27:32 +0000 Subject: Moved the map into a single display list in an attempt to improve responsiveness. --- diff --git a/src/model/map_geometry.c b/src/model/map_geometry.c new file mode 100644 index 0000000..31154da --- a/dev/null +++ b/src/model/map_geometry.c @@ -0,0 +1,27 @@ +#include "map_geometry.h" +#include "../view/exp004state0.h" +#include + +#define S exp004state0 + +void +map_geometry (void) +{ + glNewList (S.list_offset + MAP_GEOMETRY, GL_COMPILE); + glPolygonMode (GL_FRONT, GL_FILL); + + for (int i = 0; i < ROWS; i++) + { + glLoadName (i); + glPushMatrix (); + glTranslatef (S.base_vertices_data[i][0], + S.base_vertices_data[i][1], 0.0); + glColor4fv (S.base_colors_data[i]); + glCallList (S.list_offset + PROTEIN_GEOMETRY); + glPopMatrix (); + } + + glEndList (); + + return; +} diff --git a/src/model/map_geometry.h b/src/model/map_geometry.h new file mode 100644 index 0000000..f5b6701 --- a/dev/null +++ b/src/model/map_geometry.h @@ -0,0 +1,10 @@ +#ifndef MAP_GEOMETRY_H +#define MAP_GEOMETRY_H + +/* + * Create the geometry for the map. This includes the geometry for + * every point. + */ +void map_geometry (void); + +#endif // MAP_GEOMETRY_H -- cgit v0.8.3.1-22-g547a