1 #ifndef CONFIG_H 2 #define CONFIG_H 3 4 5 #ifdef WIN 6 #define PATH_SEP "\\" 7 #define PATH_SEP_CHAR '\\' 8 #else 9 #define PATH_SEP "/" 10 #define PATH_SEP_CHAR '/' 11 #endif 12 13 //VersionInfoStart 14 #ifndef SAVE_VERSION 15 #define SAVE_VERSION 95 16 #endif 17 18 #ifndef MINOR_VERSION 19 #define MINOR_VERSION 0 20 #endif 21 22 #ifndef BUILD_NUM 23 #define BUILD_NUM 345 24 #endif 25 26 #ifndef SNAPSHOT_ID 27 #define SNAPSHOT_ID 0 28 #endif 29 30 // Mod ID, used on the https://starcatcher.us/TPT build server 31 // The build server will compile for all platforms for you, and send updates in game 32 // See jacob1 to get a mod ID 33 #ifndef MOD_ID 34 #define MOD_ID 0 35 #endif 36 37 #if defined(SNAPSHOT) || defined(DEBUG) 38 #define FUTURE_SAVE_VERSION 95 39 #define FUTURE_MINOR_VERSION 0 40 #endif 41 //VersionInfoEnd 42 43 #define IGNORE_UPDATES //uncomment this for mods, to not get any update notifications 44 45 #if !(defined(MACOSX) && defined(DEBUG)) 46 #define HIGH_QUALITY_RESAMPLE //High quality image resampling, slower but much higher quality than my terribad linear interpolation 47 #endif 48 49 #if defined(SNAPSHOT) 50 #define IDENT_RELTYPE "S" 51 #elif defined(BETA) 52 #define IDENT_RELTYPE "B" 53 #else 54 #define IDENT_RELTYPE "R" 55 #endif 56 57 #if defined(WIN) 58 #if defined(_64BIT) 59 #define IDENT_PLATFORM "WIN64" 60 #else 61 #define IDENT_PLATFORM "WIN32" 62 #endif 63 #elif defined(LIN) 64 #if defined(_64BIT) 65 #define IDENT_PLATFORM "LIN64" 66 #else 67 #define IDENT_PLATFORM "LIN32" 68 #endif 69 #elif defined(MACOSX) 70 #define IDENT_PLATFORM "MACOSX" 71 #else 72 #define IDENT_PLATFORM "UNKNOWN" 73 #endif 74 75 #if defined(X86_SSE3) 76 #define IDENT_BUILD "SSE3" 77 #elif defined(X86_SSE2) 78 #define IDENT_BUILD "SSE2" 79 #elif defined(X86_SSE) 80 #define IDENT_BUILD "SSE" 81 #else 82 #define IDENT_BUILD "NO" 83 #endif 84 85 #define MTOS_EXPAND(str) #str 86 #define MTOS(str) MTOS_EXPAND(str) 87 88 #define SCHEME "https://" 89 #define SERVER "powdertoy.co.uk" 90 #define STATICSCHEME "https://" 91 #define STATICSERVER "static.powdertoy.co.uk" 92 #define ENFORCE_HTTPS 93 94 #define LOCAL_SAVE_DIR "Saves" 95 96 #define STAMPS_DIR "stamps" 97 98 #define BRUSH_DIR "Brushes" 99 100 #ifndef M_GRAV 101 #define M_GRAV 6.67300e-1 102 #endif 103 104 #ifdef RENDERER 105 #define MENUSIZE 0 106 #define BARSIZE 0 107 #else 108 #define MENUSIZE 40 109 #define BARSIZE 17 110 #endif 111 #define XRES 612 112 #define YRES 384 113 #define NPART XRES*YRES 114 115 #define XCNTR XRES/2 116 #define YCNTR YRES/2 117 118 #define WINDOWW (XRES+BARSIZE) 119 #define WINDOWH (YRES+MENUSIZE) 120 121 #define MAX_DISTANCE sqrt(pow((float)XRES, 2)+pow((float)YRES, 2)) 122 123 #define GRAV_DIFF 124 125 #define MAXSIGNS 16 126 127 //CELL, the size of the pressure, gravity, and wall maps. Larger than 1 to prevent extreme lag 128 #define CELL 4 129 #define ISTP (CELL/2) 130 #define CFDS (4.0f/CELL) 131 #define SIM_MAXVELOCITY 1e4f 132 133 //Air constants 134 #define AIR_TSTEPP 0.3f 135 #define AIR_TSTEPV 0.4f 136 #define AIR_VADV 0.3f 137 #define AIR_VLOSS 0.999f 138 #define AIR_PLOSS 0.9999f 139 140 #define NGOL 24 141 142 #define CIRCLE_BRUSH 0 143 #define SQUARE_BRUSH 1 144 #define TRI_BRUSH 2 145 #define BRUSH_NUM 3 146 147 //Photon constants 148 #define SURF_RANGE 10 149 #define NORMAL_MIN_EST 3 150 #define NORMAL_INTERP 20 151 #define NORMAL_FRAC 16 152 153 #define REFRACT 0x80000000 154 155 /* heavy flint glass, for awesome refraction/dispersion 156 this way you can make roof prisms easily */ 157 #define GLASS_IOR 1.9 158 #define GLASS_DISP 0.07 159 160 #define SDEUT 161 162 #endif /* CONFIG_H */ 163