re3-wiiu/src/core/config.h

479 lines
15 KiB
C
Raw Normal View History

2019-05-30 00:47:33 +02:00
#pragma once
2019-05-15 16:52:37 +02:00
2021-07-12 02:15:41 +02:00
// disables (most) stuff that wasn't in original gta3.exe
#ifdef __MWERKS__
#define VANILLA_DEFINES
#endif
2019-05-15 16:52:37 +02:00
enum Config {
2020-12-03 16:04:59 +01:00
NUMPLAYERS = 1, // 4 on PS2
2020-03-22 15:23:40 +01:00
NUMCDIMAGES = 12, // gta3.img duplicates (not used on PC)
MAX_CDIMAGES = 8, // additional cdimages
2019-07-24 18:55:43 +02:00
MAX_CDCHANNELS = 5,
2019-05-15 16:52:37 +02:00
2020-12-03 16:04:59 +01:00
MODELINFOSIZE = 5500, // 3150 on PS2
2021-07-12 02:15:41 +02:00
#ifdef VANILLA_DEFINES
TXDSTORESIZE = 850,
#else
2020-08-18 10:58:15 +02:00
TXDSTORESIZE = 1024, // for Xbox map
#endif
2019-05-15 16:52:37 +02:00
EXTRADIRSIZE = 128,
CUTSCENEDIRSIZE = 512,
2019-05-15 16:52:37 +02:00
2020-12-03 16:04:59 +01:00
SIMPLEMODELSIZE = 5000, // 2910 on PS2
MLOMODELSIZE = 1,
MLOINSTANCESIZE = 1,
2019-05-15 16:52:37 +02:00
TIMEMODELSIZE = 30,
CLUMPMODELSIZE = 5,
PEDMODELSIZE = 90,
2020-12-03 16:04:59 +01:00
VEHICLEMODELSIZE = 120, // 70 on PS2
XTRACOMPSMODELSIZE = 2,
2020-12-03 16:04:59 +01:00
TWODFXSIZE = 2000, // 1210 on PS2
2019-05-15 16:52:37 +02:00
MAXVEHICLESLOADED = 50, // 70 on mobile
2019-06-20 14:49:16 +02:00
NUMOBJECTINFO = 168, // object.dat
2019-05-15 16:52:37 +02:00
// Pool sizes
NUMPTRNODES = 30000, // 26000 on PS2
NUMENTRYINFOS = 5400, // 3200 on PS2
NUMPEDS = 140, // 90 on PS2
NUMVEHICLES = 110, // 70 on PS2
NUMBUILDINGS = 5500, // 4915 on PS2
2019-05-15 16:52:37 +02:00
NUMTREADABLES = 1214,
NUMOBJECTS = 450,
NUMDUMMIES = 2802, // 2368 on PS2
2019-05-15 16:52:37 +02:00
NUMAUDIOSCRIPTOBJECTS = 256,
2019-09-12 02:43:18 +02:00
NUMCUTSCENEOBJECTS = 50,
2019-05-15 16:52:37 +02:00
2020-05-08 20:58:40 +02:00
NUMANIMBLOCKS = 2,
NUMANIMATIONS = 250,
2019-07-08 21:37:47 +02:00
NUMTEMPOBJECTS = 30,
2019-08-09 19:42:18 +02:00
// Path data
NUM_PATHNODES = 4930,
NUM_CARPATHLINKS = 2076,
NUM_MAPOBJECTS = 1250,
NUM_PATHCONNECTIONS = 10260,
2019-05-15 16:52:37 +02:00
// Link list lengths
NUMALPHALIST = 20,
NUMALPHAENTITYLIST = 150,
2019-05-15 16:52:37 +02:00
NUMCOLCACHELINKS = 200,
NUMREFERENCES = 800,
// Zones
NUMAUDIOZONES = 36,
NUMZONES = 50,
NUMMAPZONES = 25,
// Cull zones
NUMCULLZONES = 512,
NUMATTRIBZONES = 288,
NUMZONEINDICES = 55000,
PATHNODESIZE = 4500,
NUMWEATHERS = 4,
NUMHOURS = 24,
2019-05-30 11:12:49 +02:00
2019-06-01 12:02:31 +02:00
NUMEXTRADIRECTIONALS = 4,
2019-05-30 11:12:49 +02:00
NUMANTENNAS = 8,
2019-06-01 19:18:19 +02:00
NUMCORONAS = 56,
NUMPOINTLIGHTS = 32,
2019-10-17 01:22:39 +02:00
NUM3DMARKERS = 32,
2020-04-07 16:48:49 +02:00
NUMBRIGHTLIGHTS = 32,
2020-04-07 12:33:14 +02:00
NUMSHINYTEXTS = 32,
2019-10-03 12:21:00 +02:00
NUMMONEYMESSAGES = 16,
2019-10-03 21:28:56 +02:00
NUMPICKUPMESSAGES = 16,
2020-03-22 11:20:36 +01:00
NUMBULLETTRACES = 16,
NUMMBLURSTREAKS = 4,
2020-04-08 16:35:23 +02:00
NUMSKIDMARKS = 32,
2019-06-25 00:42:23 +02:00
NUMONSCREENTIMERENTRIES = 1,
NUMRADARBLIPS = 32,
2019-10-03 21:28:56 +02:00
NUMGENERALPICKUPS = 320,
NUMSCRIPTEDPICKUPS = 16,
NUMPICKUPS = NUMGENERALPICKUPS + NUMSCRIPTEDPICKUPS,
NUMCOLLECTEDPICKUPS = 20,
2020-04-12 22:50:34 +02:00
NUMPACMANPICKUPS = 256,
2019-07-12 18:01:22 +02:00
NUMEVENTS = 64,
2019-07-27 20:28:18 +02:00
2019-09-11 20:42:34 +02:00
NUM_CARGENS = 160,
NUM_PATH_NODES_IN_AUTOPILOT = 8,
2019-09-15 01:28:07 +02:00
NUM_ACCIDENTS = 20,
2019-10-06 23:39:25 +02:00
NUM_FIRES = 40,
2020-01-03 17:48:13 +01:00
NUM_GARAGES = 32,
2020-01-12 12:31:04 +01:00
NUM_PROJECTILES = 32,
2019-10-06 23:39:25 +02:00
2020-04-01 23:04:56 +02:00
NUM_GLASSPANES = 45,
NUM_GLASSENTITIES = 32,
NUM_WATERCANNONS = 3,
2019-10-06 23:39:25 +02:00
NUMPEDROUTES = 200,
NUMPHONES = 50,
2020-02-16 03:15:58 +01:00
NUMPEDGROUPS = 31,
NUMMODELSPERPEDGROUP = 8,
2020-03-29 17:26:23 +02:00
NUMSHOTINFOS = 100,
2019-11-03 00:13:29 +01:00
2020-03-25 15:13:06 +01:00
NUMROADBLOCKS = 600,
2019-11-03 00:13:29 +01:00
NUMVISIBLEENTITIES = 2000,
NUMINVISIBLEENTITIES = 150,
2020-03-22 15:23:40 +01:00
2020-03-21 14:51:30 +01:00
NUM_AUDIOENTITY_EVENTS = 4,
NUM_PED_COMMENTS_BANKS = 2,
NUM_PED_COMMENTS_SLOTS = 20,
NUM_SOUNDS_SAMPLES_BANKS = 2,
NUM_AUDIOENTITIES = 200,
NUM_AUDIO_REFLECTIONS = 5,
NUM_SCRIPT_MAX_ENTITIES = 40,
2020-03-28 13:24:13 +01:00
2020-04-05 11:35:51 +02:00
NUM_GARAGE_STORED_CARS = 6,
2020-04-08 21:29:02 +02:00
NUM_CRANES = 8,
NUM_EXPLOSIONS = 48,
2019-05-15 16:52:37 +02:00
};
2019-06-27 10:58:51 +02:00
// We don't expect to compile for PS2 or Xbox
// but it might be interesting for documentation purposes
#define GTA_PC
//#define GTA_PS2
//#define GTA_XBOX
2021-07-12 02:15:41 +02:00
// Version defines
#define GTA3_PS2_140 300
#define GTA3_PS2_160 301
#define GTA3_PC_10 310
#define GTA3_PC_11 311
#define GTA3_PC_STEAM 312
// TODO? maybe something for xbox or android?
#define GTA_VERSION GTA3_PC_11
#if defined GTA_PS2
# define GTA_PS2_STUFF
# define RANDOMSPLASH
# define USE_CUSTOM_ALLOCATOR
# define VU_COLLISION
# define ANIM_COMPRESSION
# define PS2_MENU
#elif defined GTA_PC
2021-08-11 14:33:50 +02:00
# define EXTERNAL_3D_SOUND
2021-07-12 02:15:41 +02:00
# define PC_PLAYER_CONTROLS // mouse player/cam mode
# define GTA_REPLAY
# define GTA_SCENE_EDIT
# define PC_MENU
#elif defined GTA_XBOX
#endif
// This is enabled for all released games.
// any debug stuff that isn't left in any game is not in FINAL
//#define FINAL
// This is enabled for all released games except mobile
// any debug stuff that is only left in mobile, is not in MASTER
//#define MASTER
// once and for all:
// pc: FINAL & MASTER
// mobile: FINAL
// MASTER builds must be FINAL
#ifdef MASTER
#define FINAL
#endif
2021-07-12 02:15:41 +02:00
// these are placed here to work with VANILLA_DEFINES for compatibility
#define NO_CDCHECK // skip audio CD check
#define DEFAULT_NATIVE_RESOLUTION // Set default video mode to your native resolution (fixes Windows 10 launch)
2021-07-12 02:15:41 +02:00
#ifdef VANILLA_DEFINES
#if !defined(_WIN32) || defined(__LP64__) || defined(_WIN64)
#error Vanilla can only be built for win-x86
#endif
2021-07-12 02:15:41 +02:00
#define FINAL
#define MASTER
//#define USE_MY_DOCUMENTS
#define THIS_IS_STUPID
#define PC_PARTICLE
#define DONT_FIX_REPLAY_BUGS
#define USE_TXD_CDIMAGE // generate and load textures from txd.img
//#define USE_TEXTURE_POOL // not possible because R* used custom RW33
#else
// This enables things from the PS2 version on PC
#define GTA_PS2_STUFF
// quality of life fixes that should also be in FINAL
#define NASTY_GAME // nasty game for all languages
// those infamous texts
#define DRAW_GAME_VERSION_TEXT
#ifdef DRAW_GAME_VERSION_TEXT
2021-02-12 02:04:31 +01:00
// unlike R* development builds, ours has runtime switch on debug menu & .ini, and disabled as default.
2021-06-08 03:10:02 +02:00
// If you disable this then game will fetch version from peds.col, as R* did while in development.
//#define USE_OUR_VERSIONING // enabled from buildfiles by default
#endif
//#define DRAW_MENU_VERSION_TEXT
// Memory allocation and compression
// #define USE_CUSTOM_ALLOCATOR // use CMemoryHeap for allocation. use with care, not finished yet
//#define COMPRESSED_COL_VECTORS // use compressed vectors for collision vertices
//#define ANIM_COMPRESSION // only keep most recently used anims uncompressed
2021-07-12 02:15:41 +02:00
#if defined GTA_PC && defined GTA_PS2_STUFF
# define USE_PS2_RAND
# define RANDOMSPLASH // use random splash as on PS2
# define PS2_MATFX
#endif
2020-08-03 12:58:37 +02:00
#ifdef VU_COLLISION
#define COMPRESSED_COL_VECTORS // currently need compressed vectors in this code
2020-08-03 12:58:37 +02:00
#endif
#ifdef MASTER
// only in master builds
#undef DRAW_GAME_VERSION_TEXT
#else
// not in master builds
#define VALIDATE_SAVE_SIZE
2020-10-29 19:23:59 +01:00
#define DEBUGMENU
#endif
#ifdef FINAL
// in all games
# define USE_MY_DOCUMENTS // use my documents directory for user files
#else
// not in any game
# define CHATTYSPLASH // print what the game is loading
2020-05-29 12:03:32 +02:00
# define TIMEBARS // print debug timers
#endif
#define FIX_BUGS // fixes bugs that we've came across during reversing. You can undefine this only on release builds.
2020-03-29 08:35:13 +02:00
#define MORE_LANGUAGES // Add more translations to the game
#define COMPATIBLE_SAVES // this allows changing structs while keeping saves compatible, and keeps saves compatible between platforms, needs to be enabled on 64bit builds!
#define FIX_INCOMPATIBLE_SAVES // try to fix incompatible saves, requires COMPATIBLE_SAVES
#define LOAD_INI_SETTINGS // as the name suggests. fundamental for CUSTOM_FRONTEND_OPTIONS
2020-05-28 10:49:58 +02:00
#define NO_MOVIES // add option to disable intro videos
#define EXTENDED_OFFSCREEN_DESPAWN_RANGE // Use onscreen despawn range for offscreen peds and vehicles to avoid them despawning in the distance when you look
// away
#if defined(__LP64__) || defined(_WIN64)
#define FIX_BUGS_64 // Must have fixes to be able to run 64 bit build
#endif
#define ASCII_STRCMP // use faster ascii str comparisons
2021-07-12 02:15:41 +02:00
#if !defined _WIN32 || defined __MINGW32__
#undef ASCII_STRCMP
#endif
2020-11-16 00:41:03 +01:00
// Just debug menu entries
#ifdef DEBUGMENU
#define MISSION_SWITCHER // from debug menu
#endif
2020-05-28 10:49:58 +02:00
// Rendering/display
2020-10-29 19:21:16 +01:00
//#define EXTRA_MODEL_FLAGS // from mobile to optimize rendering
//# define HARDCODED_MODEL_FLAGS // sets the flags enabled above from hardcoded model names.
// NB: keep this enabled unless your map IDEs have these flags baked in
2020-05-28 10:49:58 +02:00
#define ASPECT_RATIO_SCALE // Not just makes everything scale with aspect ratio, also adds support for all aspect ratios
2021-01-08 17:31:48 +01:00
#define PROPER_SCALING // use original DEFAULT_SCREEN_WIDTH/DEFAULT_SCREEN_HEIGHT from PS2 instead of PC(R* changed HEIGHT here to make radar look better, but broke other hud elements aspect ratio).
2020-05-11 04:55:57 +02:00
#define DEFAULT_NATIVE_RESOLUTION // Set default video mode to your native resolution (fixes Windows 10 launch)
#define USE_TXD_CDIMAGE // generate and load textures from txd.img
2020-07-29 14:31:34 +02:00
#define PS2_ALPHA_TEST // emulate ps2 alpha test
#define IMPROVED_VIDEOMODE // save and load videomode parameters instead of a magic number
2020-07-09 19:40:15 +02:00
#define DISABLE_LOADING_SCREEN // disable the loading screen which vastly improves the loading time
#ifdef DISABLE_LOADING_SCREEN
// enable the PC splash
#undef RANDOMSPLASH
#endif
#define DISABLE_VSYNC_ON_TEXTURE_CONVERSION // make texture conversion work faster by disabling vsync
#define ANISOTROPIC_FILTERING // set all textures to max anisotropic filtering
2020-04-17 07:54:14 +02:00
//#define USE_TEXTURE_POOL
#ifdef LIBRW
#define EXTENDED_COLOURFILTER // more options for colour filter (replaces mblur)
#define EXTENDED_PIPELINES // custom render pipelines (includes Neo)
#define SCREEN_DROPLETS // neo water droplets
2021-01-05 11:12:48 +01:00
#define NEW_RENDERER // leeds-like world rendering, needs librw
2020-11-19 16:23:52 +01:00
#endif
2020-08-16 00:37:09 +02:00
2021-01-08 17:31:48 +01:00
#define FIX_SPRITES // fix sprites aspect ratio(moon, coronas, particle etc)
2020-11-19 16:23:52 +01:00
#ifndef EXTENDED_COLOURFILTER
#undef SCREEN_DROPLETS // we need the backbuffer for this effect
2020-11-19 16:23:52 +01:00
#endif
2020-04-23 10:24:03 +02:00
// Particle
//#define PC_PARTICLE
//#define PS2_ALTERNATIVE_CARSPLASH // unused on PS2
2019-10-05 15:44:03 +02:00
// Pad
2020-05-11 04:55:57 +02:00
#if !defined(RW_GL3) && defined(_WIN32)
2020-03-27 19:54:35 +01:00
#define XINPUT
2020-04-26 13:18:34 +02:00
#endif
2021-02-05 15:51:57 +01:00
#if defined XINPUT || (defined RW_GL3 && !defined LIBRW_SDL2 && !defined __SWITCH__)
#define DETECT_JOYSTICK_MENU // Then we'll expect user to enter Controller->Detect joysticks if his joystick isn't detected at the start.
#endif
#define DETECT_PAD_INPUT_SWITCH // Adds automatic switch of pad related stuff between controller and kb/m
#define KANGAROO_CHEAT
2020-04-25 20:25:14 +02:00
#define ALLCARSHELI_CHEAT
#define ALT_DODO_CHEAT
#define REGISTER_START_BUTTON
#define BIND_VEHICLE_FIREWEAPON // Adds ability to rebind fire key for 'in vehicle' controls
2020-11-05 16:05:16 +01:00
#define BUTTON_ICONS // use textures to show controller buttons
2019-10-05 15:44:03 +02:00
// Hud, frontend and radar
2020-12-20 16:16:56 +01:00
//#define PS2_HUD
2020-05-11 04:55:57 +02:00
#define HUD_ENHANCEMENTS // Adjusts some aspects to make the HUD look/behave a little bit better.
// #define BETA_SLIDING_TEXT
2020-06-29 09:29:02 +02:00
#define TRIANGULAR_BLIPS // height indicating triangular radar blips, as in VC
2021-01-08 17:31:48 +01:00
#define FIX_RADAR // use radar size from early version before R* broke it
2020-11-19 00:09:04 +01:00
// #define XBOX_SUBTITLES // the infamous outlines
#define RADIO_OFF_TEXT
2020-06-29 09:29:02 +02:00
#define PC_MENU
#ifndef PC_MENU
# define PS2_MENU
//# define PS2_MENU_USEALLPAGEICONS
2020-08-16 00:37:09 +02:00
#else
2021-02-03 01:41:12 +01:00
# ifdef XINPUT
# define GAMEPAD_MENU // Add gamepad menu
# endif
2020-06-29 09:29:02 +02:00
# define SCROLLABLE_STATS_PAGE // only draggable by mouse atm
# define TRIANGLE_BACK_BUTTON
//# define CIRCLE_BACK_BUTTON
2020-09-27 03:39:25 +02:00
//# define PS2_LIKE_MENU // An effort to recreate PS2 menu, cycling through tabs, different bg etc.
//# define PS2_SAVE_DIALOG // PS2 style save dialog with transparent black box
# define CUSTOM_FRONTEND_OPTIONS
# ifdef CUSTOM_FRONTEND_OPTIONS
# define MENU_MAP // VC-like menu map. Won't appear if you don't have our menu.txd
# define GRAPHICS_MENU_OPTIONS // otherwise Display settings will be scrollable
# define NO_ISLAND_LOADING // disable loadscreen between islands via loading all island data at once, consumes more memory and CPU
# define CUTSCENE_BORDERS_SWITCH
# define MULTISAMPLING // adds MSAA option
# define INVERT_LOOK_FOR_PAD // add bInvertLook4Pad from VC
# define PED_CAR_DENSITY_SLIDERS
# endif
2020-06-29 09:29:02 +02:00
#endif
2019-10-05 15:44:03 +02:00
// Script
2020-05-29 12:03:32 +02:00
#define USE_DEBUG_SCRIPT_LOADER // Loads main.scm by default. Hold R for main_freeroam.scm and D for main_d.scm
2020-02-16 21:08:54 +01:00
#define USE_MEASUREMENTS_IN_METERS // makes game use meters instead of feet in script
#define USE_PRECISE_MEASUREMENT_CONVERTION // makes game convert feet to meeters more precisely
2020-06-29 09:29:02 +02:00
#ifdef PC_MENU
# define MISSION_REPLAY // mobile feature
#endif
2020-05-26 23:25:12 +02:00
//#define SIMPLIER_MISSIONS // apply simplifications from mobile
2020-07-03 00:28:41 +02:00
#define USE_ADVANCED_SCRIPT_DEBUG_OUTPUT
2020-11-21 19:12:47 +01:00
#define SCRIPT_LOG_FILE_LEVEL 0 // 0 == no log, 1 == overwrite every frame, 2 == full log
2019-10-05 15:44:03 +02:00
#if SCRIPT_LOG_FILE_LEVEL == 0
#undef USE_ADVANCED_SCRIPT_DEBUG_OUTPUT
#endif
2020-06-28 10:59:20 +02:00
#ifndef USE_ADVANCED_SCRIPT_DEBUG_OUTPUT
#define USE_BASIC_SCRIPT_DEBUG_OUTPUT
#endif
2021-01-07 14:33:42 +01:00
#ifdef MASTER
#undef USE_ADVANCED_SCRIPT_DEBUG_OUTPUT
#undef USE_BASIC_SCRIPT_DEBUG_OUTPUT
#endif
2020-03-15 16:47:21 +01:00
// Replay
//#define DONT_FIX_REPLAY_BUGS // keeps various bugs in CReplay, some of which are fairly cool!
//#define USE_BETA_REPLAY_MODE // adds another replay mode, a few seconds slomo (caution: buggy!)
2019-10-05 15:44:03 +02:00
// Vehicles
2019-07-31 23:57:18 +02:00
#define EXPLODING_AIRTRAIN // can blow up jumbo jet with rocket launcher
2019-09-11 20:42:34 +02:00
//#define REMOVE_TREADABLE_PATHFIND
2019-10-05 15:44:03 +02:00
// Pickups
//#define MONEY_MESSAGES
2020-04-20 07:17:08 +02:00
#define CAMERA_PICKUP
2019-10-05 15:44:03 +02:00
// Peds
#define PED_SKIN // support for skinned geometry on peds, requires COMPATIBLE_SAVES
2019-10-05 15:44:03 +02:00
#define ANIMATE_PED_COL_MODEL
// #define VC_PED_PORTS // various ports from VC's CPed, mostly subtle
2020-03-25 15:13:06 +01:00
// #define NEW_WALK_AROUND_ALGORITHM // to make walking around vehicles/objects less awkward
2019-10-05 16:32:01 +02:00
#define CANCELLABLE_CAR_ENTER
2021-07-26 20:25:36 +02:00
//#define PEDS_REPORT_CRIMES_ON_PHONE // requires COMPATIBLE_SAVES
2020-03-26 14:16:06 +01:00
// Camera
2020-06-20 14:38:21 +02:00
//#define PS2_CAM_TRANSITION // old way of transitioning between cam modes
2020-03-26 14:16:06 +01:00
#define IMPROVED_CAMERA // Better Debug cam, and maybe more in the future
2020-04-02 12:48:01 +02:00
#define FREE_CAM // Rotating cam
// Audio
2021-08-11 14:33:50 +02:00
#define EXTERNAL_3D_SOUND // use external engine to simulate 3d audio spatialization. OpenAL would not work without it (because it works in a 3d space
// originally and making it work in 2d only requires more resource). Will not work on PS2
#define RADIO_SCROLL_TO_PREV_STATION
#define AUDIO_CACHE
#define PS2_AUDIO_CHANNELS // increases the maximum number of audio channels to PS2 value of 44 (PC has 28 originally)
#define PS2_AUDIO_PATHS // changes audio paths for cutscenes and radio to PS2 paths (needs vbdec on MSS builds)
//#define AUDIO_OAL_USE_SNDFILE // use libsndfile to decode WAVs instead of our internal decoder
#define AUDIO_OAL_USE_MPG123 // use mpg123 to support mp3 files
2021-06-30 20:36:11 +02:00
#define PAUSE_RADIO_IN_FRONTEND // pause radio when game is paused
2021-06-26 22:59:40 +02:00
#define MULTITHREADED_AUDIO // for streams. requires C++11 or later
#ifdef AUDIO_OPUS
#define AUDIO_OAL_USE_OPUS // enable support of opus files
#define OPUS_AUDIO_PATHS // changes audio paths to opus paths (doesn't work if AUDIO_OAL_USE_OPUS isn't enabled)
#define OPUS_SFX // enable if your sfx.raw is encoded with opus (doesn't work if AUDIO_OAL_USE_OPUS isn't enabled)
#ifndef AUDIO_OAL_USE_OPUS
#undef OPUS_AUDIO_PATHS
#undef OPUS_SFX
#endif
#endif
2021-01-27 16:26:08 +01:00
// Streaming
#if !defined(_WIN32) && !defined(__SWITCH__)
//#define ONE_THREAD_PER_CHANNEL // Don't use if you're not on SSD/Flash - also not utilized too much right now(see commented LoadAllRequestedModels in Streaming.cpp)
#define FLUSHABLE_STREAMING // Make it possible to interrupt reading when processing file isn't needed anymore.
#endif
#define BIG_IMG // Not complete - allows to read larger img files
//#define SQUEEZE_PERFORMANCE
#ifdef SQUEEZE_PERFORMANCE
#undef PS2_ALPHA_TEST
#undef NO_ISLAND_LOADING
#undef PS2_AUDIO_CHANNELS
#undef EXTENDED_OFFSCREEN_DESPAWN_RANGE
#define PC_PARTICLE
#define VC_PED_PORTS // To not process collisions always. But should be tested if that's really beneficial
2021-01-03 00:12:01 +01:00
#define VC_RAIN_NERF // Reduces number of rain particles
#endif
// if these defines are enabled saves are not vanilla compatible without COMPATIBLE_SAVES
#ifndef COMPATIBLE_SAVES
#undef PED_SKIN
#undef PEDS_REPORT_CRIMES_ON_PHONE
#endif
2021-07-12 03:10:02 +02:00
#endif // VANILLA_DEFINES
2021-08-11 14:33:50 +02:00
#if defined(AUDIO_OAL) && !defined(EXTERNAL_3D_SOUND)
static_assert(false, "AUDIO_OAL cannot work without EXTERNAL_3D_SOUND");
#endif
#if defined(GTA_PS2) && defined(EXTERNAL_3D_SOUND)
static_assert(false, "EXTERNAL_3D_SOUND cannot work on PS2");
#endif