for OGL don't display background bitmap if screen height < 400 because it won't fit - just draw grey
This commit is contained in:
parent
a63994e594
commit
6c874e25a1
|
@ -1,5 +1,9 @@
|
||||||
D1X-Rebirth Changelog
|
D1X-Rebirth Changelog
|
||||||
|
|
||||||
|
20070119
|
||||||
|
--------
|
||||||
|
main/automap.c: for OGL don't display background bitmap if screen height < 400 because it won't fit - just draw grey
|
||||||
|
|
||||||
20070119
|
20070119
|
||||||
--------
|
--------
|
||||||
cfile/cfile.c: patch by TheLion: cfile_get_filehandle reads case-insensitive on *NIX systems - makes use of .rdl levels easier
|
cfile/cfile.c: patch by TheLion: cfile_get_filehandle reads case-insensitive on *NIX systems - makes use of .rdl levels easier
|
||||||
|
|
|
@ -72,10 +72,6 @@ COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED.
|
||||||
#include "d_delay.h"
|
#include "d_delay.h"
|
||||||
#include "automap.h"
|
#include "automap.h"
|
||||||
|
|
||||||
#ifdef OGL
|
|
||||||
#define AUTOMAP_DIRECT_RENDER
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define EF_USED 1 // This edge is used
|
#define EF_USED 1 // This edge is used
|
||||||
#define EF_DEFINING 2 // A structure defining edge that should always draw.
|
#define EF_DEFINING 2 // A structure defining edge that should always draw.
|
||||||
#define EF_FRONTIER 4 // An edge between the known and the unknown.
|
#define EF_FRONTIER 4 // An edge between the known and the unknown.
|
||||||
|
@ -155,9 +151,9 @@ static short DrawingListBright[MAX_EDGES];
|
||||||
#define ROT_SPEED_DIVISOR (115000)
|
#define ROT_SPEED_DIVISOR (115000)
|
||||||
|
|
||||||
// Screen anvas variables
|
// Screen anvas variables
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
static int current_page=0;
|
static int current_page=0;
|
||||||
#endif /* AUTOMAP_DIRECT_RENDER */
|
#endif /* OGL */
|
||||||
static grs_canvas Pages[2];
|
static grs_canvas Pages[2];
|
||||||
static grs_canvas DrawingPages[2];
|
static grs_canvas DrawingPages[2];
|
||||||
|
|
||||||
|
@ -242,13 +238,13 @@ void modex_printf(int x,int y,char *s,grs_font *font,int color)
|
||||||
void modex_print_message(int x, int y, char *str)
|
void modex_print_message(int x, int y, char *str)
|
||||||
{
|
{
|
||||||
|
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
int i;
|
int i;
|
||||||
for (i=0; i<2; i++ ) {
|
for (i=0; i<2; i++ ) {
|
||||||
gr_set_current_canvas(&Pages[i]);
|
gr_set_current_canvas(&Pages[i]);
|
||||||
#endif
|
#endif
|
||||||
modex_printf(x, y, str, (grs_font *)GFONT_MEDIUM_1,Green_31);
|
modex_printf(x, y, str, (grs_font *)GFONT_MEDIUM_1,Green_31);
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
}
|
}
|
||||||
|
|
||||||
gr_set_current_canvas(&DrawingPages[current_page]);
|
gr_set_current_canvas(&DrawingPages[current_page]);
|
||||||
|
@ -310,7 +306,7 @@ void draw_automap()
|
||||||
vms_vector viewer_position;
|
vms_vector viewer_position;
|
||||||
g3s_point sphere_point;
|
g3s_point sphere_point;
|
||||||
|
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
gr_set_current_canvas(&DrawingPage);
|
gr_set_current_canvas(&DrawingPage);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -387,7 +383,7 @@ void draw_automap()
|
||||||
#ifdef OGL
|
#ifdef OGL
|
||||||
ogl_swap_buffers();
|
ogl_swap_buffers();
|
||||||
#else
|
#else
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
gr_bm_ubitblt( Page.cv_bitmap.bm_w, Page.cv_bitmap.bm_h, Page.cv_bitmap.bm_x, Page.cv_bitmap.bm_y, 0, 0, &Page.cv_bitmap, &grd_curscreen->sc_canvas.cv_bitmap );
|
gr_bm_ubitblt( Page.cv_bitmap.bm_w, Page.cv_bitmap.bm_h, Page.cv_bitmap.bm_x, Page.cv_bitmap.bm_y, 0, 0, &Page.cv_bitmap, &grd_curscreen->sc_canvas.cv_bitmap );
|
||||||
gr_update();
|
gr_update();
|
||||||
#endif
|
#endif
|
||||||
|
@ -417,7 +413,7 @@ void do_automap( int key_code ) {
|
||||||
int leave_mode=0;
|
int leave_mode=0;
|
||||||
int first_time=1;
|
int first_time=1;
|
||||||
int pcx_error;
|
int pcx_error;
|
||||||
#if !defined(AUTOMAP_DIRECT_RENDER) || !defined(NDEBUG)
|
#if !defined(OGL) || !defined(NDEBUG)
|
||||||
int i;
|
int i;
|
||||||
#endif
|
#endif
|
||||||
int c;
|
int c;
|
||||||
|
@ -431,7 +427,7 @@ void do_automap( int key_code ) {
|
||||||
int Max_segments_away = 0;
|
int Max_segments_away = 0;
|
||||||
int SegmentLimit = 1;
|
int SegmentLimit = 1;
|
||||||
ubyte pal[256*3];
|
ubyte pal[256*3];
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
int must_free_canvas=0;
|
int must_free_canvas=0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -462,7 +458,7 @@ void do_automap( int key_code ) {
|
||||||
|
|
||||||
gr_palette_clear();
|
gr_palette_clear();
|
||||||
|
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
gr_init_sub_canvas(&Page,&VR_render_buffer[0],0, 0, automap_width, automap_height);
|
gr_init_sub_canvas(&Page,&VR_render_buffer[0],0, 0, automap_width, automap_height);
|
||||||
|
|
||||||
gr_init_sub_canvas(&DrawingPage, &Page, RESCALE_X(27), RESCALE_Y(80), RESCALE_X(582), RESCALE_Y(334));
|
gr_init_sub_canvas(&DrawingPage, &Page, RESCALE_X(27), RESCALE_Y(80), RESCALE_X(582), RESCALE_Y(334));
|
||||||
|
@ -524,7 +520,10 @@ void do_automap( int key_code ) {
|
||||||
#ifdef OGL
|
#ifdef OGL
|
||||||
gr_init_sub_canvas(&DrawingPage, &Page, RESCALE_X(27), RESCALE_Y(80), RESCALE_X(582), RESCALE_Y(334));
|
gr_init_sub_canvas(&DrawingPage, &Page, RESCALE_X(27), RESCALE_Y(80), RESCALE_X(582), RESCALE_Y(334));
|
||||||
gr_set_current_canvas(&Page);
|
gr_set_current_canvas(&Page);
|
||||||
ogl_ubitmapm_cs(0, 0, -1, -1, &Automap_background, -1, F1_0 );
|
if (automap_height<400)
|
||||||
|
gr_clear_canvas( BM_XRGB(3,3,3) );
|
||||||
|
else
|
||||||
|
ogl_ubitmapm_cs(0, 0, -1, -1, &Automap_background, -1, F1_0 );
|
||||||
gr_set_curfont((Gamefonts[GFONT_BIG_1]));
|
gr_set_curfont((Gamefonts[GFONT_BIG_1]));
|
||||||
gr_set_fontcolor(BM_XRGB(20, 20, 20), -1);
|
gr_set_fontcolor(BM_XRGB(20, 20, 20), -1);
|
||||||
gr_printf(RESCALE_X(80), RESCALE_Y(30), TXT_AUTOMAP);
|
gr_printf(RESCALE_X(80), RESCALE_Y(30), TXT_AUTOMAP);
|
||||||
|
@ -675,7 +674,7 @@ void do_automap( int key_code ) {
|
||||||
t1 = t2;
|
t1 = t2;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef AUTOMAP_DIRECT_RENDER
|
#ifndef OGL
|
||||||
if (must_free_canvas)
|
if (must_free_canvas)
|
||||||
free(Page.cv_bitmap.bm_data);
|
free(Page.cv_bitmap.bm_data);
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Reference in a new issue