Commit graph

1584 commits

Author SHA1 Message Date
Ozkan Sezer
f07ac29c0b fix C++11 -Wliteral-suffix warnings. fix -Wnarrowing errors/warnings.
fix the detestable in_sdl.c/SDL2 int-to-enum conversion failure errors
from g++.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1302 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-04-29 20:00:50 +00:00
Ozkan Sezer
f3af6bf791 Fixed -Wmisleading-indentation warnings from new gcc6.
The warning from gl_model.c:Mod_LoadTextures() seemed
like a real bug: Eric please check and confirm.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1301 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-04-28 21:47:12 +00:00
Ozkan Sezer
55e4763cb5 rebuilt 32 bit win32 version of libFLAC dll more compatibly
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1300 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-04-24 17:56:39 +00:00
Ozkan Sezer
5af28b2121 windows: use target-specfic flags for gcc too (-m32/-m64). hmph..
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1299 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-04-18 14:01:55 +00:00
Ozkan Sezer
f22eed7f57 use specific target flags with windres (pe-i386/pe-x86-64 for w32/w64),
just in case the compiler toolchain is a multilib one.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1298 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-04-17 19:10:01 +00:00
Eric Wasylishen
39a6b46713 in_sdl.c: lower default controller deadzone to 0.175. refactor a bit, fix clamping of look axis vector length.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1297 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-03-09 04:42:44 +00:00
Eric Wasylishen
f8ccd07420 in_sdl.c: IN_StartupJoystick: do SDL_INIT_GAMECONTROLLER before SDL_GameControllerAddMappingsFromFile, to match the sdl testgamecontroller tool
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1296 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-03-03 23:01:44 +00:00
Eric Wasylishen
dfcaa52260 in_sdl.c: improve error messages when opening joysticks
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1295 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-03-03 21:38:58 +00:00
Eric Wasylishen
e007e35e6d in_sdl.c: fix spurious "-1 mappings loaded from gamecontrollerdb.txt" message
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1294 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-03-02 00:04:25 +00:00
Eric Wasylishen
dc2218b9c8 SDL2 Game Controller support
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1293 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-03-01 21:58:08 +00:00
Eric Wasylishen
9c9facfe7b gl_vidsdl.c: add vid_borderless cvar for getting a borderless window
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1292 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-02-26 20:18:27 +00:00
Eric Wasylishen
185f2f2883 R_UpdateWarpTextures: workaround osx 10.6 driver bug when using FSAA, reported by Barnak.
R_Clear only clears the warpimage part of the screen, leading to an unplayable
HOM effect on the rest of the screen.

The workaround is calling GL_SetCanvas(CANVAS_DEFAULT); at the end of
R_UpdateWarpTextures, it should be harmless enough on other systems, so not sure
if it's worth making this workaround conditional.

My guess is glClear in this implementation is wrongly using glViewport as the
area to clear.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1291 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-02-26 07:37:00 +00:00
Eric Wasylishen
150be12da1 Contrast support with a "contrast" cvar, behaving the same as MarkV's.
It may be a useful alternative to the existing gamma control for laptops in a bright environment, etc.
(raising contrast gives less of a gray/washed out look than raising gamma, but as a disadvantage, colours near white get clipped to white.)

It's also implemented for both GLSL and SDL gamma ramps, but only if USE_GAMMA_RAMPS is set to 1.
Since USE_GAMMA_RAMPS  is 0, currently it only works with GLSL.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1290 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-02-12 23:26:36 +00:00
Eric Wasylishen
ebd73d2a3c world.c: use DoublePrecisionDotProduct to fix items falling out of the world
on oms3.bsp on SSE builds.

Thanks to ParuBaru for reporting the issue.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1289 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-02-01 22:41:15 +00:00
Ozkan Sezer
864044dacf docs: fixed version number in changelog. added empty 0.91.1 changelog section for new changes.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1288 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-31 09:33:26 +00:00
Eric Wasylishen
36d9cc4b42 Default gl_clear to 1, as described in "Common mistakes" https://www.opengl.org/wiki/Common_Mistakes#Swap_Buffers
"The buffers should always be cleared. On much older hardware, there was a technique to get away without clearing the scene, but on even semi-recent hardware, this will actually make things slower. So always do the clear."
Plus it's nice for map development / debugging.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1287 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-29 20:47:24 +00:00
Eric Wasylishen
ae8a4f82da SV_SpawnServer: use malloc for sv.edicts, and only zero it as needed
Previously we were Hunk_Alloc'ing space for 8192 edicts (by default) which zeros all of that memory, this way we only use as much RAM as needed since the unuesd pages aren't dirtied

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1286 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-29 01:05:11 +00:00
Eric Wasylishen
b7a0540bdf Xcode project:
-adjust release builds to not require 10.6 SDK, and disable PPC since recent OSX SDK's don't support it
-don't strip symbols, to make testing in Instruments easier.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1285 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-29 00:31:27 +00:00
Eric Wasylishen
70a472bed1 GL_Init: log gl_vendor, gl_renderer, gl_version to the console.
Taken from RMQEngine. the idea is to ensure every -condebug log has the gfx driver version logged.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1284 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-28 06:07:07 +00:00
Ozkan Sezer
16a84f52b8 bumped version to 0.91.1 for future development
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1283 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-18 07:28:03 +00:00
Ozkan Sezer
55970f514e re-diff'ed extra patches under Misc/ so that they apply cleanly.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1281 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-16 19:28:04 +00:00
Ozkan Sezer
b1d6c2b865 minor edit to readme.txt
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1280 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-15 09:37:09 +00:00
Eric Wasylishen
31d66f8a5a Update docs with latest changes
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1279 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-15 09:18:21 +00:00
Eric Wasylishen
65727a9810 max_edicts: raise to 8192 (from 2048) and make non-archived, to reduce the need for players to mess with it to get maps/mods to run.
Some measurements on the size of the sv.edicts hunk allocation, with this change, on various mods (it depends on the number of QC entity fields):
id1 7MB, quoth 11 MB, arcadim 21 MB, rrp 9MB,  ne_ruins 16MB.

Since this is a Hunk_Alloc, the whole 10-20MB is cleared to zero which will allocate that much physical ram.
We could probably change it to a malloc later, and not clear the memory, so physical ram is only allocated when the memory is cleared in ED_Alloc.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1278 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-10 23:03:06 +00:00
Ozkan Sezer
34e479c001 oslibs: rebuild libopusfile from latest v0.7 release.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1277 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-10 09:30:31 +00:00
Eric Wasylishen
74eb6b0f9d Raise default heapsize to 256MB and zone to 4MB (matching Fitz MarkV)
N.B.: I verified with the OS X Instruments tool that unused space in the heap isn't dirtied (e.g. we never memset the entire heap, only the portions returned by Hunk_Alloc) so this should have no impact on RAM required.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1276 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-09 20:29:22 +00:00
Eric Wasylishen
0da03db7b8 zone.c: fix padding in memblock_t struct to works as intended. the previous layout was probably harmless but wasted a few bytes.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1275 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-09 20:03:27 +00:00
Eric Wasylishen
ba5ce1e5af TexMgr_RecalcWarpImageSize: removed early exit if (gl_warpimagesize == oldsize), fixes liquids sometimes turning to noise after a mode change.
after vid_restart TexMgr_ReloadImage reloads textures to tx->source_width/source_height, which might not match oldsize.
fixes: https://sourceforge.net/p/quakespasm/bugs/13/

steps to reproduce (fixed) bug:
-launch at 640x480, windowed, and with "r_oldwater 0"
-do "map start"
-change to 1024x768 windowed
-change to 1920x1080 windowed
-this last mode change makes liquid textures turn into random garbage.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1274 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-08 08:22:27 +00:00
Ozkan Sezer
153eba1f71 rebuilt SDL2 from SDL2-2.04 release version.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1273 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-03 10:51:44 +00:00
Eric Wasylishen
239503c998 VID_Toggle: disable the fast path entirely because it was failing on SDL2/WinXP.
(640x480 fullscreen -> windowed would give a large 1280x768 window mostly filled with garbage).

Previously, we were only using the fast path on old systems (no VBO support) anyway.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1272 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-03 08:38:46 +00:00
Eric Wasylishen
b30a347a20 Add Xcode project for debugging on Xcode 2.5 / OS X 10.4 / PPC
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1271 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-01-03 07:45:18 +00:00
Ozkan Sezer
43223ffd93 SDL2 rebuild: forgot updating SDL_revision.h.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1270 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-28 10:15:04 +00:00
Ozkan Sezer
d4c4cb7908 rebuilt SDL2 from SDL hg repo r9972 (2015-12-28) to catch a few small fixes.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1269 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-28 10:11:42 +00:00
Ozkan Sezer
e6d9835816 docs: s/inside3d/insideqc/ and some minor tidy-up.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1268 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-24 08:20:25 +00:00
Ozkan Sezer
41396ff8d3 oslibs: rebuilt opusfile from current xiph.org git to catch further recent fixes.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1267 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-22 10:40:58 +00:00
Eric Wasylishen
35631f4b02 snd_dma.c: raise MAX_SFX to 1024, for the upcoming arcadim mod.
Uses only 36k extra of hunk memory, less for 32-bit builds, so shouldn't have any negative effects.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1266 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-22 06:22:29 +00:00
Eric Wasylishen
d908b0a9a2 Minor changelog additions.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1265 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-13 20:41:55 +00:00
Ozkan Sezer
62833fd08d update docs for 0.91.0 changes.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1264 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-13 09:37:14 +00:00
Eric Wasylishen
be808701ea GLSLGamma_GammaCorrect: clear the cached texture binding in GL_Bind properly, after the glBindTexture calls earlier in this function.
Fixes a obscure bug where:
 - a bsp with no textures (pink checkerboard displayed)
 - gamma != 1
 - nothing else on screen (sbar hidden, r_drawviewmodel 0)
would result in the screen turning to noise.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1263 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-13 07:23:04 +00:00
Ozkan Sezer
488b90cf78 oslibs: rebuilt opusfile library from current xiph.org to catch the
recent seek bug fixes. rebuilt SDL2 from current SDL mercurial repo
(2015-12-11, rev. 9959).


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1262 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-11 15:47:41 +00:00
Steven
0d14920ba0 Credit Eric as co-author.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1261 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-01 10:35:51 +00:00
Steven
1b424e2e75 Touch readme time stamp.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1260 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-12-01 10:09:31 +00:00
Eric Wasylishen
e2321d816b Fog: move setting of GL_FOG_MODE to GL_EXP2 to a new Fog_SetupState() function and call it in VID_Restart.
Fixes bug where the fog mode was resetting to the default (GL_EXP) after a mode switch, causing fog to look different. This was only affecting SDL1 for me.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1259 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-11-26 09:06:42 +00:00
Ozkan Sezer
f715aca4d1 rebuilt SDL2 for windows and osx from SDL2 hg rev. 9915 (2015.11.14)
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1258 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-11-14 14:05:34 +00:00
Ozkan Sezer
a7a5dd9141 oslibs, codecs: rebuild libmikmod from latest sources.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1257 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-11-10 08:35:08 +00:00
Eric Wasylishen
5ac3b16363 Sbar_DrawPicAlpha: change glColor3f call to glColor4f with explicit alpha of 1 to work around intel 855 bug, which also affected Fitzquake 0.85.
With "r_oldwater 0" and "scr_sbaralpha 0", warp textures wouldn't be rendered and instead you would see a copy of the screen tiled where water surfaces should be.
Thanks to graham for reporting.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1256 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-10-06 06:18:30 +00:00
Eric Wasylishen
69791776a4 PF_traceline: change Host_Error when a NaN is detected to a Con_Warning.
This only affects the case when the developer cvar is set, we already ignore NaN's here.

negke reports getting the nan error with this debug progs.dat: http://negke.fov120.com/files/progsbjp.zip (rename to pak0.pak + install as a mod)
and his sm133_neg!ke.bsp: https://www.quaddicted.com/reviews/sm133_pack.html (walk over the zombie to activate a lightning trap)

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1255 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-10-06 04:08:29 +00:00
Eric Wasylishen
814c9c6c0f Xcode project: build debug builds with all music codecs
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1254 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-09-22 06:11:12 +00:00
Eric Wasylishen
e007116a5d Alias model VBO renderer: restructure so each model is stored in a separate VBO and load them in Mod_LoadAliasModel, rather than R_NewMap.
Initially I thought that we would never need to draw an alias model that hadn't been precached when R_NewMap runs, but this assumption turned out to be incorrect. This fixes the issue where progs/bolt.mdl wasn't rendering in the Scourge Done Slick demos.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1253 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-09-20 20:10:49 +00:00
Steven
b2465a4c82 r_pos cvar: Dynamic position info, aka r_speeds + viewpos.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1252 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-09-12 03:29:41 +00:00