Fixed many opengl glitches
authorBradley Bell <btb@icculus.org>
Fri, 28 Feb 2003 09:56:10 +0000 (09:56 +0000)
committerBradley Bell <btb@icculus.org>
Fri, 28 Feb 2003 09:56:10 +0000 (09:56 +0000)
2d/pcx.c
ChangeLog
arch/ogl/gr.c
main/inferno.c
main/movie.c
main/newmenu.c

index fcfc7c7..1a113c2 100644 (file)
--- a/2d/pcx.c
+++ b/2d/pcx.c
@@ -1,4 +1,4 @@
-/* $Id: pcx.c,v 1.6 2002-08-26 06:41:38 btb Exp $ */
+/* $Id: pcx.c,v 1.7 2003-02-28 09:56:10 btb Exp $ */
 /*
 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
@@ -50,6 +50,10 @@ COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
 #include "pcx.h"
 #include "cfile.h"
 
+#ifdef OGL
+#include "palette.h"
+#endif
+
 #if defined(POLY_ACC)
 #include "poly_acc.h"
 #endif
@@ -502,8 +506,12 @@ int pcx_read_fullscr(char * filename, ubyte * palette)
        grs_bitmap bm;
        gr_init_bitmap_data(&bm);
        pcx_error = pcx_read_bitmap(filename, &bm, BM_LINEAR, palette);
-       if (pcx_error == PCX_ERROR_NONE)
+       if (pcx_error == PCX_ERROR_NONE) {
+#ifdef OGL
+               gr_palette_load(palette);
+#endif
                show_fullscr(&bm);
+       }
        gr_free_bitmap_data(&bm);
        return pcx_error;
 }
index 9857cc4..c24afe3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-02-28  Bradley Bell  <btb@icculus.org>
+
+       * 2d/pcx.c, arch/ogl/gr.c, main/inferno.c, main/movie.c,
+       main/newmenu.c: Fixed many opengl glitches
+
 2003-02-27  Bradley Bell  <btb@icculus.org>
 
        * main/Makefile.am, main/gamesave.c, main/hoard.c, main/hoard.h,
index a962a82..4fe027d 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: gr.c,v 1.9 2003-01-15 02:40:54 btb Exp $ */
+/* $Id: gr.c,v 1.10 2003-02-28 09:56:10 btb Exp $ */
 /*
  *
  * OGL video functions. - Added 9/15/99 Matthew Mueller
@@ -345,8 +345,8 @@ int ogl_init_load_library(void)
 
 int gr_init()
 {
int mode = SM(640,480);
- int retcode,t,glt=0;
      int t,glt=0;
+
        // Only do this function once!
        if (gr_installed==1)
                return -1;
@@ -410,12 +410,6 @@ int gr_init()
        MALLOC( grd_curscreen,grs_screen,1 );
        memset( grd_curscreen, 0, sizeof(grs_screen));
        grd_curscreen->sc_canvas.cv_bitmap.bm_data = NULL;
-
-       // Set the mode.
-       if ((retcode=gr_set_mode(mode)))
-       {
-               return retcode;
-       }
        grd_curscreen->sc_canvas.cv_color = 0;
        grd_curscreen->sc_canvas.cv_drawmode = 0;
        grd_curscreen->sc_canvas.cv_font = NULL;
index a2116bf..365db50 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: inferno.c,v 1.54 2003-02-28 03:54:55 btb Exp $ */
+/* $Id: inferno.c,v 1.55 2003-02-28 09:56:10 btb Exp $ */
 /*
 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
@@ -1393,11 +1393,13 @@ int main(int argc,char **argv)
        con_printf( CON_DEBUG, "Initializing movie libraries...\n" );
        init_movies();          //init movie libraries
 
+#if 0
        con_printf(CON_VERBOSE, "Going into graphics mode...\n");
 #if defined(POLY_ACC)
        gr_set_mode(SM_640x480x15xPA);
 #else
        gr_set_mode(MovieHires?SM(640,480):SM(320,200));
+#endif
 #endif
 
        #ifndef RELEASE
@@ -1520,6 +1522,9 @@ int main(int argc,char **argv)
 #else
                gr_set_mode(MenuHires?SM(640,480):SM(320,200));
 #endif
+#ifdef OGL
+               set_screen_mode(SCREEN_MENU);
+#endif
 
                FontHires = FontHiresAvailable && MenuHires;
 
index f7967ac..116173a 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: movie.c,v 1.22 2003-02-25 04:45:31 btb Exp $ */
+/* $Id: movie.c,v 1.23 2003-02-28 09:56:10 btb Exp $ */
 /*
 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
@@ -17,7 +17,7 @@ COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
 #endif
 
 #ifdef RCS
-static char rcsid[] = "$Id: movie.c,v 1.22 2003-02-25 04:45:31 btb Exp $";
+static char rcsid[] = "$Id: movie.c,v 1.23 2003-02-28 09:56:10 btb Exp $";
 #endif
 
 #define DEBUG_LEVEL CON_NORMAL
@@ -256,6 +256,9 @@ int RunMovie(char *filename, int hires_flag, int must_have,int dx,int dy)
        } else {
                gr_set_mode(SM(320,200));
        }
+#ifdef OGL
+       set_screen_mode(SCREEN_MENU);
+#endif
 
        if (MVE_rmPrepMovie(filehndl, dx, dy, track)) {
                Int3();
index f9af0dd..1317f28 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: newmenu.c,v 1.17 2003-02-14 03:42:24 btb Exp $ */
+/* $Id: newmenu.c,v 1.18 2003-02-28 09:56:10 btb Exp $ */
 /*
 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
@@ -731,6 +731,9 @@ void nm_draw_background1(char * filename)
                //in part of the fade tables so the darkening of the menu edges works
 
                gr_copy_palette(gr_palette, pal, sizeof(gr_palette));
+#ifdef OGL
+               gr_palette_load(gr_palette);
+#endif
                remap_fonts_and_menus(1);
 
        }