Now an 8-bit stencil buffer is requested when using a 24-bit depth buffer (the default).
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1209 af15c1b1-3010-417e-b628-4374ebc0bcbd
cl.stats[STAT_WEAPON] was being used before the high 8 bits were filled in, which is done with the SU_WEAPON2 byte.
Moved the block which clears the viewmodel lerp state to be after handling SU_WEAPON2.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1208 af15c1b1-3010-417e-b628-4374ebc0bcbd
e.g. fixes light_flame_small_yellow entity (progs/flame2.mdl) with alpha 0.5 showing up as solid (most of the pixels on flame2.mdl are fullbright)
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1207 af15c1b1-3010-417e-b628-4374ebc0bcbd
mh suggest that not doing this may cause performance
issues: http://forums.inside3d.com/viewtopic.php?t=2408
It's also mentioned in a "Depth In-Depth" document from AMD.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1203 af15c1b1-3010-417e-b628-4374ebc0bcbd
This fixes a weird bug on Windows/AMD, where under some conditions, the
world would be drawn totally corrupted. Conditions for the bug were:
- gl_clear 0
- gamma 1
- glsl alias code in use
- status bar hidden, or, scr_sbaralpha 1
- map e1m1, look around the start position
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1202 af15c1b1-3010-417e-b628-4374ebc0bcbd
Works around buffer underruns with directsound and SDL2, but also will
make Sleep()/SDL_Dleay() accurate to 1ms which should help framerate
stability.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1200 af15c1b1-3010-417e-b628-4374ebc0bcbd
keep the cross-build stuff only in the scripts. update the explanations in
windows and darwin makefiles.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1183 af15c1b1-3010-417e-b628-4374ebc0bcbd
treat '-F dir' the same as '-Fdir' and fails, so directly use -Fdir as
LDFLAGS, instead of -Wl,-F,dir .
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1182 af15c1b1-3010-417e-b628-4374ebc0bcbd
Fixes a bug where if you do "map e1m6" then "kill", the fullbright part of the key texture is missing (drawn in black) - this bug was introduced in 0.90.0.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1168 af15c1b1-3010-417e-b628-4374ebc0bcbd
When cvar vid_desktopfullscreen is set to 1, fullscreen mode ignores vid_width/vid_height and uses the desktop resolution. SDL docs recommend using this, it's supposed to offer better OS integration.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1164 af15c1b1-3010-417e-b628-4374ebc0bcbd
Prior to r1153 it was 32 for maps and MAX_OSPATH for mods.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1158 af15c1b1-3010-417e-b628-4374ebc0bcbd
Avoids general bugginess of hardware gamma, doesn't affect the whole screen in windowed mode like HW gamma. Should fix http://sourceforge.net/p/quakespasm/bugs/5/
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1157 af15c1b1-3010-417e-b628-4374ebc0bcbd
TODO: currently using a char[MAX_OSPATH] buffer to store map/mod names in the completion list which is probably unnecessairly large
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1153 af15c1b1-3010-417e-b628-4374ebc0bcbd
Copied from the "map" autocompletion code, now I should probably refactor because most of the code could be shared.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1152 af15c1b1-3010-417e-b628-4374ebc0bcbd
In GL_MakeAliasModelDisplayLists, after saving the standerd triangle strips and fans onto the hunk, if the system is GL2 capable, we also save a second version of the mdl on the hunk designed to be loaded into a VBO (GL_MakeAliasModelDisplayLists_VBO). In R_NewMap, and on video mode changes, we call GLMesh_LoadVertexBuffers which loops over all precached mdl's and loads the data into a pair of VBO's (vertices and vertex indices).
Finally, in R_DrawAliasModel, assuming no rendering options are disabling the fast-path (r_drawflat 1, r_lightmap 1, or r_fullbright 1 would disable it), we call GL_DrawAliasFrame_GLSL, which sets up all of the bindings and draws the (possibly lerped) mdl in one glDrawElements call.
Special thanks to MH for some of the code from RMQEngine and the general concept.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1151 af15c1b1-3010-417e-b628-4374ebc0bcbd
Reasoning is, we default to the higher-quality settings for everything else except this.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1150 af15c1b1-3010-417e-b628-4374ebc0bcbd
This is done by adding an extra 'demopaused' flag to client_static_t, separate from cl.paused because we don't want a svc_setpause inside the demo (caused by the player pausing during recording) to actually pause demo playback. The only potential failure case is, if the demo contains a svc_stufftext of the command "pause", the demo will pause itself when being played.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1147 af15c1b1-3010-417e-b628-4374ebc0bcbd
Fixes a bug where if you launched QS and immediately did "playdemo [something]", after the demo finished, demo1.dem would start to play instead of returning to the console.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1146 af15c1b1-3010-417e-b628-4374ebc0bcbd
This fixes a bug seen in jam3_tronyn.bsp (which only has a density value in the worldspawn), where the fog color of the last map played would carry over.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1140 af15c1b1-3010-417e-b628-4374ebc0bcbd
This moves some of the OpenGL implementation to a background thread, and makes draw calls block for a shorter amount of time. AFAIK, this is the default mode on most other OS'es, not sure why you have to explicitly ask for it on OS X.
N.B. the kCGLCEMPEngine constant is available on 10.4+ so I don't bother checking the OS X version.
More info: https://developer.apple.com/library/mac/technotes/tn2085/_index.html
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1137 af15c1b1-3010-417e-b628-4374ebc0bcbd
This fixes:
e2m3:
- The wallpiece that blocks the way out of the Well of Wishes (when open).
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1136 af15c1b1-3010-417e-b628-4374ebc0bcbd
This fixes:
e2m3:
- The floorpiece (when down) and wallpiece (when open) by the crates opposite the normal exit.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1135 af15c1b1-3010-417e-b628-4374ebc0bcbd
This fixes:
e1m4:
- The secret doors in the room with the five quake-logo buttons on the floor (when open).
e2m2:
- The platform in the water behind the gold key door (when down).
- The wallpiece that pushes the player into the gold key room (when "closed").
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1134 af15c1b1-3010-417e-b628-4374ebc0bcbd