Fixed many opengl glitches

This commit is contained in:
Bradley Bell 2003-02-28 11:27:05 +00:00
parent 6db03d84bd
commit dc4193fbd1
5 changed files with 25 additions and 10 deletions

View file

@ -1,7 +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
* 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 <btb@icculus.org>

View file

@ -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 <conf.h>
#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;

View file

@ -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;

View file

@ -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

View file

@ -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);
}