+
+ glMatrixMode(GL_PROJECTION);
+ glLoadMatrixf(proj_matrix[0]);
+ glMatrixMode(GL_MODELVIEW);
+ glLoadMatrixf(view_matrix[0]);
+
+ glPushAttrib(GL_ENABLE_BIT);
+ glDisable(GL_LIGHTING);
+ glDisable(GL_CULL_FACE);
+
+ glEnable(GL_TEXTURE_2D);
+ bind_texture(grid_tex);
+
+ float maxu = FIELD_SIZE / 32.0f;
+ float maxv = FIELD_SIZE / 32.0f;
+ float hsz = FIELD_SIZE * 0.5f;
+
+ glBegin(GL_QUADS);
+ glColor3f(1, 1, 1);
+ glTexCoord2f(0, 0);
+ glVertex3f(-hsz, 0, -hsz);
+ glTexCoord2f(maxu, 0);
+ glVertex3f(hsz, 0, -hsz);
+ glTexCoord2f(maxu, maxv);
+ glVertex3f(hsz, 0, hsz);
+ glTexCoord2f(0, maxv);
+ glVertex3f(-hsz, 0, hsz);
+ glEnd();
+
+ glPopAttrib();
+}
+
+void GameScreen::reshape(int x, int y)
+{