diff --git a/common/bspfile.h b/common/bspfile.h index be6642ab..a9c79c6a 100644 --- a/common/bspfile.h +++ b/common/bspfile.h @@ -16,8 +16,6 @@ GNU General Public License for more details. #ifndef BSPFILE_H #define BSPFILE_H -//#define SUPPORT_BSP2_FORMAT // allow to loading Darkplaces BSP2 maps (with broke binary compatibility) - /* ============================================================================== @@ -65,7 +63,6 @@ BRUSH MODELS #define MAX_MAP_CLIPNODES_BSP2 524288 // these limis not using by modelloader but only for displaying 'mapstats' correctly -#ifdef SUPPORT_BSP2_FORMAT #define MAX_MAP_MODELS 2048 // embedded models #define MAX_MAP_ENTSTRING 0x200000 // 2 Mb should be enough #define MAX_MAP_PLANES 131072 // can be increased without problems @@ -75,18 +72,6 @@ BRUSH MODELS #define MAX_MAP_VERTS 524288 // can be increased without problems #define MAX_MAP_FACES 262144 // can be increased without problems #define MAX_MAP_MARKSURFACES 524288 // can be increased without problems -#else -// increased to match PrimeXT compilers -#define MAX_MAP_MODELS 1024 // embedded models -#define MAX_MAP_ENTSTRING 0x100000 // 1 Mb should be enough -#define MAX_MAP_PLANES 65536 // can be increased without problems -#define MAX_MAP_NODES 32767 // because negative shorts are leafs -#define MAX_MAP_CLIPNODES MAX_MAP_CLIPNODES_HLBSP // because negative shorts are contents -#define MAX_MAP_LEAFS 32767 // signed short limit -#define MAX_MAP_VERTS 65535 // unsigned short limit -#define MAX_MAP_FACES 65535 // unsigned short limit -#define MAX_MAP_MARKSURFACES 65535 // unsigned short limit -#endif #define MAX_MAP_ENTITIES 8192 // network limit #define MAX_MAP_TEXINFO MAX_MAP_FACES // in theory each face may have personal texinfo diff --git a/engine/client/cl_render.c b/engine/client/cl_render.c index 400ed0fb..8bb2721e 100644 --- a/engine/client/cl_render.c +++ b/engine/client/cl_render.c @@ -138,10 +138,7 @@ intptr_t CL_RenderGetParm( const int parm, const int arg, const qboolean checkRe switch( parm ) { case PARM_BSP2_SUPPORTED: -#ifdef SUPPORT_BSP2_FORMAT return 1; -#endif - return 0; case PARAM_GAMEPAUSED: return cl.paused; case PARM_CLIENT_INGAME: diff --git a/engine/common/com_strings.h b/engine/common/com_strings.h index d5b05b5c..d9614117 100644 --- a/engine/common/com_strings.h +++ b/engine/common/com_strings.h @@ -72,8 +72,6 @@ GNU General Public License for more details. #define CVAR_GLCONFIG_DESCRIPTION "enable or disable %s" -#define DEFAULT_BSP_BUILD_ERROR "%s can't be loaded in this build. Please rebuild engine with enabled SUPPORT_BSP2_FORMAT\n" - #define DEFAULT_UPDATE_PAGE "https://github.com/FWGS/xash3d-fwgs/releases/latest" #define XASH_ENGINE_NAME "Xash3D FWGS" diff --git a/engine/common/mod_bmodel.c b/engine/common/mod_bmodel.c index 6da7d06c..0db6eca1 100644 --- a/engine/common/mod_bmodel.c +++ b/engine/common/mod_bmodel.c @@ -3594,13 +3594,6 @@ static qboolean Mod_LoadBmodelLumps( model_t *mod, const byte *mod_base, qboolea Q_strncpy( loadstat.name, mod->name, sizeof( loadstat.name )); wadvalue[0] = '\0'; -#ifndef SUPPORT_BSP2_FORMAT - if( header->version == QBSP2_VERSION ) - { - Con_Printf( S_ERROR DEFAULT_BSP_BUILD_ERROR, mod->name ); - return false; - } -#endif switch( header->version ) { case HLBSP_VERSION: @@ -3766,15 +3759,6 @@ qboolean Mod_TestBmodelLumps( file_t *f, const char *name, const byte *mod_base, if( silent ) SetBits( flags, LUMP_SILENT ); -#ifndef SUPPORT_BSP2_FORMAT - if( header->version == QBSP2_VERSION ) - { - if( !FBitSet( flags, LUMP_SILENT )) - Con_Printf( S_ERROR DEFAULT_BSP_BUILD_ERROR, name ); - return false; - } -#endif - switch( header->version ) { case HLBSP_VERSION: diff --git a/ref/soft/r_main.c b/ref/soft/r_main.c index 3ae1ba06..34592885 100644 --- a/ref/soft/r_main.c +++ b/ref/soft/r_main.c @@ -1393,6 +1393,12 @@ void GAME_EXPORT R_NewMap( void ) R_ClearDecals(); // clear all level decals R_StudioResetPlayerModels(); + if( FBitSet( world->flags, MODEL_QBSP2 )) + { + gEngfuncs.Host_Error( "Sorry, ref_soft can't load maps in BSP2 format.\n" ); + return; + } + r_cnumsurfs = sw_maxsurfs.value; if( r_cnumsurfs <= MINSURFACES ) diff --git a/wscript b/wscript index 5f0e1977..da6c9d47 100644 --- a/wscript +++ b/wscript @@ -91,7 +91,7 @@ SUBDIRS = [ Subproject('3rdparty/gl-wes-v2', lambda x: not x.env.DEDICATED and x.env.GLWES), Subproject('3rdparty/gl4es', lambda x: not x.env.DEDICATED and x.env.GL4ES), Subproject('ref/gl', lambda x: not x.env.DEDICATED and (x.env.GL or x.env.NANOGL or x.env.GLWES or x.env.GL4ES)), - Subproject('ref/soft', lambda x: not x.env.DEDICATED and not x.env.SUPPORT_BSP2_FORMAT and x.env.SOFT), + Subproject('ref/soft', lambda x: not x.env.DEDICATED and x.env.SOFT), Subproject('ref/null', lambda x: not x.env.DEDICATED and x.env.NULL), Subproject('3rdparty/bzip2', lambda x: not x.env.DEDICATED and not x.env.HAVE_SYSTEM_BZ2), Subproject('3rdparty/opus', lambda x: not x.env.DEDICATED and not x.env.HAVE_SYSTEM_OPUS), @@ -148,9 +148,6 @@ def options(opt): grp.add_option('--enable-bundled-deps', action = 'store_true', dest = 'BUILD_BUNDLED_DEPS', default = False, help = 'prefer to build bundled dependencies (like opus) instead of relying on system provided') - grp.add_option('--enable-bsp2', action = 'store_true', dest = 'SUPPORT_BSP2_FORMAT', default = False, - help = 'build engine and renderers with BSP2 map support(recommended for Quake, breaks compatibility!) [default: %(default)s]') - grp.add_option('--enable-hl25-extended-structs', action = 'store_true', dest = 'SUPPORT_HL25_EXTENDED_STRUCTS', default = False, help = 'build engine and renderers with HL25 extended structs compatibility (might be required for some mods) [default: %(default)s]') @@ -395,9 +392,7 @@ def configure(conf): conf.env.ENABLE_XAR = conf.options.ENABLE_XAR conf.env.ENABLE_FUZZER = conf.options.ENABLE_FUZZER conf.env.DEDICATED = conf.options.DEDICATED - conf.env.SUPPORT_BSP2_FORMAT = conf.options.SUPPORT_BSP2_FORMAT - conf.define_cond('SUPPORT_BSP2_FORMAT', conf.options.SUPPORT_BSP2_FORMAT) conf.define_cond('SUPPORT_HL25_EXTENDED_STRUCTS', conf.options.SUPPORT_HL25_EXTENDED_STRUCTS) # disable game_launch compiling on platform where it's not needed