17 Oct 2016
This commit is contained in:
parent
388818b661
commit
a951cf6f46
|
@ -32,6 +32,7 @@ BRUSH MODELS
|
||||||
|
|
||||||
#define IDEXTRAHEADER (('H'<<24)+('S'<<16)+('A'<<8)+'X') // little-endian "XASH"
|
#define IDEXTRAHEADER (('H'<<24)+('S'<<16)+('A'<<8)+'X') // little-endian "XASH"
|
||||||
#define EXTRA_VERSION 2 // because version 1 was occupied by old versions of XashXT
|
#define EXTRA_VERSION 2 // because version 1 was occupied by old versions of XashXT
|
||||||
|
#define EXTRA_VERSION_3 3 // same as version 2 but with old lightmap resolution (1 luxel per 16 pixels)
|
||||||
|
|
||||||
#define DELUXEMAP_VERSION 1
|
#define DELUXEMAP_VERSION 1
|
||||||
#define IDDELUXEMAPHEADER (('T'<<24)+('I'<<16)+('L'<<8)+'Q') // little-endian "QLIT"
|
#define IDDELUXEMAPHEADER (('T'<<24)+('I'<<16)+('L'<<8)+'Q') // little-endian "QLIT"
|
||||||
|
|
|
@ -2669,6 +2669,7 @@ static void Mod_LoadBrushModel( model_t *mod, const void *buffer, qboolean *load
|
||||||
int sample_size;
|
int sample_size;
|
||||||
char *ents;
|
char *ents;
|
||||||
dheader_t *header;
|
dheader_t *header;
|
||||||
|
dextrahdr_t *extrahdr;
|
||||||
dmodel_t *bm;
|
dmodel_t *bm;
|
||||||
|
|
||||||
if( loaded ) *loaded = false;
|
if( loaded ) *loaded = false;
|
||||||
|
@ -2676,6 +2677,11 @@ static void Mod_LoadBrushModel( model_t *mod, const void *buffer, qboolean *load
|
||||||
loadmodel->type = mod_brush;
|
loadmodel->type = mod_brush;
|
||||||
i = header->version;
|
i = header->version;
|
||||||
|
|
||||||
|
// BSP31 and BSP30 have different offsets
|
||||||
|
if( i == XTBSP_VERSION )
|
||||||
|
extrahdr = (dextrahdr_t *)((byte *)buffer + sizeof( dheader31_t ));
|
||||||
|
else extrahdr = (dextrahdr_t *)((byte *)buffer + sizeof( dheader_t ));
|
||||||
|
|
||||||
switch( i )
|
switch( i )
|
||||||
{
|
{
|
||||||
case 28: // get support for quake1 beta
|
case 28: // get support for quake1 beta
|
||||||
|
@ -2687,7 +2693,9 @@ static void Mod_LoadBrushModel( model_t *mod, const void *buffer, qboolean *load
|
||||||
sample_size = 16;
|
sample_size = 16;
|
||||||
break;
|
break;
|
||||||
case XTBSP_VERSION:
|
case XTBSP_VERSION:
|
||||||
sample_size = 8;
|
if( extrahdr->id == IDEXTRAHEADER && extrahdr->version == EXTRA_VERSION_3 )
|
||||||
|
sample_size = 16;
|
||||||
|
else sample_size = 8;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
MsgDev( D_ERROR, "%s has wrong version number (%i should be %i)", loadmodel->name, i, HLBSP_VERSION );
|
MsgDev( D_ERROR, "%s has wrong version number (%i should be %i)", loadmodel->name, i, HLBSP_VERSION );
|
||||||
|
|
Reference in New Issue