Commit graph

1966 commits

Author SHA1 Message Date
Zack Middleton
1a86229538 Fix playback of stereo sounds in Base sound system
Already works correctly in OpenAL.
2013-12-15 00:23:10 -06:00
SmileTheory
623d107f42 OpenGL2: Small glsl shader optimizations, fixes, and cleanup. 2013-12-12 21:38:01 -08:00
Amanieu d'Antras
efe8437cde Fix crash in OpenAL when no input devices are available 2013-12-10 16:40:28 -06:00
SmileTheory
f6f3a19f73 OpenGL2: Support GL_ARB_vertex_type_2_10_10_10_rev for normals/tangents/lightdirs 2013-12-09 17:33:54 -08:00
Zack Middleton
2ba7a33715 Have ui_test cmd in missionpack ui return qtrue 2013-12-07 21:27:17 -06:00
Zack Middleton
fa9fd1b1fc Support spatialized raw streams in base sound, e.g. for VoIP 2013-12-07 00:15:29 -06:00
Zack Middleton
7c0491d7fd Add latch to r_centerWindow and r_allowResize 2013-12-06 23:42:23 -06:00
IR4T4
ca23b626a0 r_noborder changes require a restart 2013-12-06 23:29:47 -06:00
Zack Middleton
973a616061 Fix white flash levelshot bug in OpenGL1
If you tried to draw the last loaded image, gl texture 0 (which is appearently white)
was used because renderer thought the image was already bound.

Why OpenGL1 renderer binds texture 0, I have no idea. It's been removed from OpenGL2.
2013-12-06 23:06:52 -06:00
James Canete
c02528cf1d Merge pull request #21 from cmf028/master
Fix glsl DEFORM_BULGE calculation
2013-12-01 19:33:51 -08:00
cmf028
e01b66aef5 Fix glsl DEFORM_BULGE calculation 2013-12-01 21:19:26 -06:00
Zack Middleton
0a4da32d62 Remove R_AddAnimSurfaces and R_MakeAnimModel prototypes 2013-11-30 03:16:05 -06:00
SmileTheory
ecc1f23b1d OpenGL2: Remove redundant GLS_* enum.
Thanks Xycaleth for pointing out.
2013-11-29 23:40:48 -08:00
SmileTheory
6f3edb20b8 #6069: Remove md4 model support. 2013-11-29 16:13:47 -08:00
Zack Middleton
952fd0489c Readd backspace char event for UI VM text fields
UI VMs expect a backspace char event, but sdl2 branch only was only sending a key event.
Revert cl_keys.c to master branch (it would cause backspace to happen twice in console).
2013-11-26 17:03:15 -06:00
Zack Middleton
ad514c9689 Merge branch 'master' into sdl2 2013-11-26 16:57:10 -06:00
Zack Middleton
2044bcb12d Silence warnings about unused static functions in opengl2 2013-11-25 15:27:09 -06:00
Zack Middleton
1633ac5b93 Make kamikaze timer loops use level.num_entities instead of MAX_GENTITIES
Optimization. Many other loops use level.num_entities, there was no
special reason that MAX_GENTITIES was used for these.
2013-11-21 02:26:31 -06:00
Zack Middleton
57eae5da91 Fix signal 6 in S_Base_StartBackgroundTrack on OS X 10.9
In S_UpdateBackgroundTrack, s_backgroundLoop was passed to
S_Base_StartBackgroundTrack and tried to copy to itself using Q_strncpyz.
2013-11-20 23:19:17 -06:00
Zack Middleton
8af9516e88 End current draw surface before drawing cinematic
Fixes drawing StretchPic *before* CIN_DrawCinematic resulting
in cinematic being drawn before the StretchPic.
2013-11-20 21:37:17 -06:00
SmileTheory
d63d7ba6bf OpenGL2: Use RGBA16F format for HDR.
RGB16F is not 4-byte aligned and not supported by certain hardware.
2013-11-20 00:48:18 -08:00
SmileTheory
e686010d73 #6059: OpenGL2: Read depths from resolve fbo when msaa is on in RB_TestFlare(). 2013-11-20 00:45:08 -08:00
SmileTheory
c350963bf2 OpenGL2: Match glsl data type names: matrix_t -> mat4_t, vec*i_t -> ivec*_t 2013-11-19 03:23:50 -08:00
Zack Middleton
3736968943 Merge branch 'master' into sdl2 2013-11-17 19:01:35 -06:00
SmileTheory
6e5f8cc918 OpenGL2: Calculate bitangent in shader, and store normal/tangent as normalized byte arrays. 2013-11-12 19:21:51 -08:00
Zack Middleton
a53e7c3074 Fix comparing unsigned values to < 0 in gl2 2013-11-11 01:12:42 -06:00
Ensiform
93be2655f8 Remove unused cvar_t variable cl_trn 2013-11-11 01:09:10 -06:00
Zack Middleton
203ab7b9af Fix cinematics often being silent on OS X
If OpenAL source isn't playing, often what happens is: queued buffers is 0 and processed buffers is non-0.
S_AL_StreamUpdate won't play the steam if queued buffers 0.
So start the stream in S_AL_RawSamples.
2013-11-11 00:21:53 -06:00
Zack Middleton
b3bd74fce7 Fix restoring loop sound position on OS X
The default OpenAL library on OS X errors AL_INVALID_VALUE for AL_SEC_OFFSET if source isn't playing.
2013-11-10 23:28:54 -06:00
Zack Middleton
5795be68f6 Make OpenAL buffer management work on OS X
Don't assume we have unlimited OpenAL buffers.
Detach buffers from sources by setting AL_BUFFER to 0. Cannot delete buffers on OS X immediately after alSourceUnqueueBuffers.
Free unprocessed stream and music buffers.
Free unused sfx buffers when sound file exists and fails loading into OpenAL (though I haven't seen it fail).
2013-11-10 22:55:35 -06:00
Zack Middleton
d526eacd10 Fix flares being invisible after vid_restart
flareCoeff was only set if r_flareCoeff cvar was set as modified.
Cvars are set as modified when created or changed.
2013-11-09 16:57:58 -06:00
SmileTheory
ae57eebf52 Merge branch 'glindex_size_fixes' of https://github.com/inolen/ioq3 into inolen-glindex_size_fixes 2013-11-08 22:19:32 -08:00
Zack Middleton
baf5737779 Remove function prototypes for non-existant Sys_* DLL functions 2013-11-08 18:44:04 -06:00
Zack Middleton
028f0f1ac4 Remove old comment that FS_Seek doesn't work on zipped files 2013-11-08 18:43:48 -06:00
Zack Middleton
2d45e57068 Support FS_SEEK_END and negative offset for zipped files in FS_Seek
Use FS_SEEK_END in sound code instead of working around it.
If FS_SEEK_SET and going to current position, just return.
2013-11-08 18:43:34 -06:00
Zack Middleton
c69db4a400 Remove unused variable baseOffset from fsh[] 2013-11-08 18:43:20 -06:00
Zack Middleton
90c98c90a3 Fix VM FOpenFile( FS_READ ) files seeking twice in FS_Seek 2013-11-08 18:42:56 -06:00
SmileTheory
ef9fe17dd5 OpenGL2: Remove srfTriangle_t, and use glIndex_t instead. 2013-11-08 01:46:17 -08:00
SmileTheory
d295db747c OpenGL2: Small optimizations and comments in world VBO creation and surface merging. 2013-11-07 04:03:52 -08:00
Zack Middleton
fd4cd6612d Fix running if built on OS X 10.9
strncpy with in == out causes signal 6 if built on OS X 10.9.
(If built on older OS X versions, the game works on 10.9 though.)

It was happening in COM_StripExtension during map load.
2013-11-06 22:23:40 -06:00
SmileTheory
7672533e8f OpenGL2: Prefer VBO/IBO sizes of around 4MB. 2013-11-05 20:07:10 -08:00
SmileTheory
8c3ae8d7d2 OpenGL2: Reimplement soft overbright to avoid a framebuffer blit. 2013-11-05 00:08:59 -08:00
SmileTheory
a7c5fc0ee7 OpenGL2: Some small shader optimizations. 2013-11-04 22:50:53 -08:00
SmileTheory
0e25d0357b OpenGL2: Revisit fragment tangent space calculation, and remove tangent space lighting. 2013-11-04 21:53:05 -08:00
SmileTheory
3846c115e6 OpenGL2: Reduce glsl shader count by using a uniform to disable textures. 2013-11-03 19:34:22 -08:00
Tim Angus
779ebfacfd Merge branch 'master' into sdl2 2013-11-02 19:12:52 +00:00
Tim Angus
7ae49cc237 Fix video recording sync drift (patch refactored but original author unknown) 2013-11-02 19:11:14 +00:00
Zack Middleton
ae0e09aba9 Remove vertexLightmap from textureBundle_t, it's never qtrue 2013-11-02 02:59:31 -05:00
Zack Middleton
6bd52de44e Remove unused shader state code from tr_local.h 2013-11-02 02:35:59 -05:00
Zack Middleton
0f30dad10a Merge last two commits into renderergl2 2013-10-29 23:22:02 -05:00
Zack Middleton
611d913443 Initialize blendIndexesType and blendWeightsType 2013-10-29 23:18:05 -05:00
Zack Middleton
f55bb272b6 Fix IQM comments refering to IQM_BYTE instead of IQM_UBYTE 2013-10-29 23:11:32 -05:00
Zack Middleton
c28fabf505 IQM int/float vertex arrays were already swapped 2013-10-29 23:07:15 -05:00
Zack Middleton
0bf1f3d0ba Add support for IQM int blend indices and float blend weights
Integer blend indices are converted to bytes at load, ioq3 doesn't allow more than 128 joints.

Heavily based on code by @zippers.
2013-10-29 22:09:06 -05:00
Zack Middleton
1515841b38 Support IQMs with joints and no poses 2013-10-29 20:47:33 -05:00
Zack Middleton
e0a42885d9 Clear more variables in CL_InitServerInfo
Have cls.localServers use CL_InitServerInfo.
Don't set cls.localServers netType to from.type, it's the wrong value.

Note: server->visible is not cleared in CL_InitServerInfo, as stated by a comment below a place where CL_InitServerInfo is used.
2013-10-28 15:23:01 -05:00
Zack Middleton
5fdff01d1b Check #ifdef MACOS_X not #if MACOS_X 2013-10-20 13:58:30 -05:00
Zack Middleton
8c1d3c635c Use bundle icon on Mac OS X instead of internal 32x32 window icon 2013-10-19 01:54:58 -05:00
Zack Middleton
983ebbb4a6 Ignore -psn* arguments on Mac OS X
Mac OS X adds an argument starting with "-psn" when launched using Finder, Dock,
or a terminal using open command and not specifying arguments.

It caused the opening videos to be skipped.

This change mimics SDL 1.2.
2013-10-19 01:10:24 -05:00
Zack Middleton
cb153f2aaa Fix warning that SDL_GetKeyboardState return value is used non-const 2013-10-19 00:39:07 -05:00
Zack Middleton
c6a61d212a Fix SDL2 losing event subsystem
Quiting SDL Video or Joystick subsystem implies quiting the Event subsystem in SDL2.
SDL keeps track of number of init and shutdown calls for each subsystem.
Shuting down video or joystick more or equal to number of times they're inited will lead to event shutdown.

Toggling in and out of fullscreen or running in_restart twice causes SDL event subsystem to shutdown, making input not work.

If the console is closed, IN_GobbleMotionEvents gets stuck in a loop. SDL_PeepEvents returns -1 when there is an error, but we assume non-0 means read more events.

IN_ShutdownJoystick needs to check if joystick subsystem was inited before quitting it, otherwise we may cause SDL event subsystem to shutdown.
2013-10-18 16:31:19 -05:00
SmileTheory
535d0ea70e OpenGL2: Merge bsp surface structs into a single struct, and more cleanup. 2013-10-15 01:19:16 -07:00
SmileTheory
01efe4a538 OpenGL2: Use an idea from ETXreal and separate world VBO into separate VBOs by shader. 2013-10-14 03:58:13 -07:00
SmileTheory
08fcecc829 OpenGL2: Clean up texmod calculations, and improve vertex animation handling. 2013-10-14 01:55:54 -07:00
SmileTheory
f8355ba2fb OpenGL2: Fix TCGEN_ENVIRONMENT stages not rendering correctly. 2013-10-10 03:41:31 -07:00
Zack Middleton
a836c2db89 Drop sounds starting with * before allocating sfx slot
Causes handle 0 to be returned by S_RegisterSound.
2013-10-09 09:51:32 -05:00
Zack Middleton
e4227d1cd5 Revert "5097 - Menu corrupted on start (on IRIX)"
Calling glClear( any bits ) in GL_SetDefaultState makes connect screen black using the proprietary NVidia driver on Windows and GNU/Linux.

This reverts commit 92573270de.
2013-10-08 08:01:00 -05:00
SmileTheory
c6774cf113 OpenGL2: default to RGBM lightmap, and add r_floatLightmap for old behaviour. 2013-10-07 01:46:50 -07:00
SmileTheory
acbeca6042 OpenGL2: Remove AGEN_FRESNEL(superceded by cubemap patch), and some small fixes and optimizations. 2013-09-24 03:29:49 -07:00
cmf028
11c3bed74d Send key up events for the mouse wheel
Previous versions of SDL would send SDL_MOUSEBUTTONUP events for the mouse wheel immediately following the corresponding SDL_MOUSEBUTTONDOWN event
2013-09-23 12:21:21 -05:00
cmf028
7d83bba2d0 Set com_minimized to 0 when the window is restored 2013-09-23 12:21:21 -05:00
cmf028
d7444b8ca1 Don't set the window title twice 2013-09-23 12:21:20 -05:00
SmileTheory
82be4e667f OpenGL2: Disable GL_ARB_seamless_cube_map by default, caused huge frame drops on some hardware 2013-09-20 17:20:36 -07:00
Zack Middleton
fcaab903d1 Fix UI parse message for menu files
Missing a space after colon.
2013-09-19 21:41:27 -05:00
SmileTheory
3ab895d1cd OpenGL2: reduce varying usage in lightall shader. 2013-09-17 23:52:40 -07:00
SmileTheory
cbd05da5d1 OpenGL2: Fix for "unsupported framebuffer format" bug 2013-09-17 15:33:46 -07:00
SmileTheory
42501db862 OpenGL2: Some shader cleanup 2013-09-16 23:41:04 -07:00
SmileTheory
5985cca2e6 OpenGL2: Speed up fog shader slightly. 2013-09-16 23:20:44 -07:00
Tim Angus
76e49b668e Merge branch 'master' into sdl2 2013-09-16 22:34:51 +01:00
SmileTheory
a408a2bdae OpenGL2: Fix inaccurate RGBM calculation. 2013-09-16 14:26:42 -07:00
SmileTheory
e80faf812e OpenGL2: Use RGBM instead of RGBE encoding for lightmaps. 2013-09-16 05:57:14 -07:00
SmileTheory
7e875c6941 #5979: Cubemap support for opengl2. 2013-09-16 00:54:26 -07:00
Tim Angus
58b8cfa0b3 Various fixes from Fuma 2013-09-15 23:54:52 +01:00
Zack Middleton
68a616c7f1 Free bot client if cannot load bot
Introduced by commit a57a5cfd9b.
2013-09-08 21:59:58 -05:00
Zack Middleton
27ddba9c2e Fix crash caused by too many surfaces in skin 2013-09-04 20:36:45 -05:00
Razish
61dd609aee Fix warning message in animation.cfg parsing functions
Signed-off-by: Zack Middleton <zturtleman@gmail.com>
2013-09-04 15:51:34 -05:00
Tim Angus
462694763e Bug #6021 Fix misuse of Sys_Mkdir (Joerg Dietrich) 2013-09-04 17:56:11 +01:00
Zack Middleton
99317a9e9a Make cgame's tcmd use trap_SendClientCommand for "gc"
gc command was forwarded to server after if wasn't recognized locally, but let's just send straight to server.

(trap_SendConsoleCommand should of had a \n at end, but using trap_SendClientCommand makes more sense.)
2013-09-03 18:19:48 -05:00
Zack Middleton
c79e0dfc25 Fix targetNum check in cgame's tcmd 2013-09-01 20:58:51 -05:00
Tim Angus
fb9270306b Fix initial window position being top left 2013-08-29 19:15:35 +01:00
Thilo Schulz
daf71ca502 Fix recursive crash when home path cannot be created 2013-08-25 12:00:30 +02:00
SmileTheory
311376af8a Fix upside-down SSAO. 2013-08-23 01:51:58 -07:00
SmileTheory
d46916082d #5999: OpenGL2: Don't use lightall shader with deforms or adjustColorsForFog. 2013-08-23 01:35:17 -07:00
SmileTheory
ebd164deaf #6004: OpenGL2: Make any CGEN_LIGHTING_DIFFUSE stages use lightall shader. 2013-08-23 00:55:28 -07:00
Tim Angus
273b9ab77e Update SDL2 headers... oops 2013-08-20 18:30:56 +01:00
Tim Angus
32a859c680 More updates to SDL2 libs from MAN-AT-ARMS 2013-08-19 23:19:29 +01:00
Tim Angus
e13773de69 Update prebuilt SDL2 libs for Windows 2013-08-18 18:23:14 +01:00
Tim Angus
e6d075e165 SDL2 libs for OSX, thanks to MAN-AT-ARMS 2013-08-18 18:08:03 +01:00
Tim Angus
bde7665462 Merge branch 'master' into sdl2
Conflicts:
	code/sdl/sdl_input.c
2013-08-16 23:34:08 +01:00
Zack Middleton
d4c6711e51 Fix "bind <key>" message for unbound keys
"bind X cmd; unbind X; bind X" now says '"x" is unbound' instead of '"x" = ""'
2013-08-16 15:41:01 -05:00