From dc4193fbd14cafde263db89b21414893eda24381 Mon Sep 17 00:00:00 2001 From: Bradley Bell Date: Fri, 28 Feb 2003 11:27:05 +0000 Subject: [PATCH] Fixed many opengl glitches --- ChangeLog | 5 +++-- libmve/mveplay.c | 6 +++--- main/gameseq.c | 7 ++++--- main/menu.c | 3 +++ main/movie.c | 14 ++++++++++++-- 5 files changed, 25 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index c24afe36..6a743317 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,8 @@ 2003-02-28 Bradley Bell - * 2d/pcx.c, arch/ogl/gr.c, main/inferno.c, main/movie.c, - main/newmenu.c: Fixed many opengl glitches + * 2d/pcx.c, arch/ogl/gr.c, libmve/mveplay.c, main/gameseq.c, + main/inferno.c, main/menu.c, main/movie.c, main/newmenu.c: Fixed + many opengl glitches 2003-02-27 Bradley Bell diff --git a/libmve/mveplay.c b/libmve/mveplay.c index 941acde2..4d95b0d6 100644 --- a/libmve/mveplay.c +++ b/libmve/mveplay.c @@ -1,4 +1,4 @@ -/* $Id: mveplay.c,v 1.5 2003-02-19 20:52:57 btb Exp $ */ +/* $Id: mveplay.c,v 1.6 2003-02-28 11:27:05 btb Exp $ */ #ifdef HAVE_CONFIG_H #include #endif @@ -647,11 +647,11 @@ static int display_video_handler(unsigned char major, unsigned char minor, unsig if (g_destY == -1) // center it g_destY = (g_screenHeight - g_height) >> 1; + gr_palette_load(g_palette); + gr_bitmap(g_destX, g_destY, bitmap); gr_free_sub_bitmap(bitmap); - - gr_palette_load(g_palette); #endif g_frameUpdated = 1; diff --git a/main/gameseq.c b/main/gameseq.c index b90990e8..eb9f93b3 100644 --- a/main/gameseq.c +++ b/main/gameseq.c @@ -1,4 +1,4 @@ -/* $Id: gameseq.c,v 1.16 2003-02-25 04:45:31 btb Exp $ */ +/* $Id: gameseq.c,v 1.17 2003-02-28 11:27:05 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 -char gameseq_rcsid[] = "$Id: gameseq.c,v 1.16 2003-02-25 04:45:31 btb Exp $"; +char gameseq_rcsid[] = "$Id: gameseq.c,v 1.17 2003-02-28 11:27:05 btb Exp $"; #endif #ifdef WINDOWS @@ -926,7 +926,7 @@ void LoadLevel(int level_num,int page_in_textures) // WIN(LoadCursorWin(MOUSE_WAIT_CURSOR)); // WIN(ShowCursorW()); -#if defined(POLY_ACC) +#if 1 //defined(POLY_ACC) || defined(OGL) gr_palette_load(gr_palette); show_boxed_message(TXT_LOADING); #else @@ -2139,6 +2139,7 @@ void ShowLevelIntro(int level_num) { if (intro_movie[i].level_num == level_num) { + Screen_mode = -1; PlayMovie(intro_movie[i].movie_name,MOVIE_REQUIRED); movie=1; break; diff --git a/main/menu.c b/main/menu.c index e2716777..145a0d74 100644 --- a/main/menu.c +++ b/main/menu.c @@ -234,6 +234,9 @@ try_again:; mouse_set_mode(1); //re-enable centering mode HideCursorW(); #endif +#ifdef OGL + Screen_mode = -1; +#endif PlayMovie("intro.mve",0); songs_play_song(SONG_TITLE,1); *last_key = -3; //exit menu to force redraw even if not going to game mode. -3 tells menu system not to restore diff --git a/main/movie.c b/main/movie.c index 116173a7..26a05284 100644 --- a/main/movie.c +++ b/main/movie.c @@ -1,4 +1,4 @@ -/* $Id: movie.c,v 1.23 2003-02-28 09:56:10 btb Exp $ */ +/* $Id: movie.c,v 1.24 2003-02-28 11:27:05 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.23 2003-02-28 09:56:10 btb Exp $"; +static char rcsid[] = "$Id: movie.c,v 1.24 2003-02-28 11:27:05 btb Exp $"; #endif #define DEBUG_LEVEL CON_NORMAL @@ -238,6 +238,9 @@ int RunMovie(char *filename, int hires_flag, int must_have,int dx,int dy) int track = 0; int frame_num; int key; +#ifdef OGL + char pal_save[768]; +#endif result=1; @@ -258,6 +261,9 @@ int RunMovie(char *filename, int hires_flag, int must_have,int dx,int dy) } #ifdef OGL set_screen_mode(SCREEN_MENU); + gr_copy_palette(pal_save, gr_palette, 768); + memset(gr_palette, 0, 768); + gr_palette_load(gr_palette); #endif if (MVE_rmPrepMovie(filehndl, dx, dy, track)) { @@ -310,6 +316,10 @@ int RunMovie(char *filename, int hires_flag, int must_have,int dx,int dy) // Restore old graphic state Screen_mode=-1; //force reset of screen mode +#ifdef OGL + gr_copy_palette(gr_palette, pal_save, 768); + gr_palette_load(pal_save); +#endif return (aborted?MOVIE_ABORTED:MOVIE_PLAYED_FULL); } -- 2.39.2