Tobias Frost
92dab63c30
- Do use CMAKE_DL_LIBS to determine the linkerflags needed to link against libdl.
...
- For !WINDOWS, add sys_defines based on compiler instead based on system. (enabled compilation e.g on hurd and kfreebsd)
2015-06-21 16:52:56 +02:00
Tobias Frost
cf6bb39e11
Make use of precompiled header configureable
2015-06-19 22:15:44 +02:00
Tobias Frost
9212ed4263
Propagate USE_INTRINSICS through CMake
2015-06-19 16:11:16 +02:00
Tobias Frost
332fc8d0e7
Update description of CPU_TYPE -- it does not disable anything anymore
2015-06-19 15:56:24 +02:00
Tobias Frost
90d79158ee
Make the CPUSTRING and additional from default optimizations configureable
2015-06-19 15:50:17 +02:00
Robert Beckebans
ee2934781f
Merge remote-tracking branch 'RBDOOM/master'
2015-05-01 15:10:23 +02:00
Robert Beckebans
a7c6f4973b
Fixed warnings with Clang 3.6
2015-05-01 14:57:31 +02:00
Robert Beckebans
80f0d06a75
Merge remote-tracking branch 'RBDOOM/master'
2015-05-01 14:18:53 +02:00
Robert Beckebans
e9c56ba2df
Added polygon primitive support to collision framework
2015-04-12 12:05:38 +02:00
Robert Beckebans
0ac909fe0a
Dmap build BSP out of triangles instead of brushes
2015-04-12 11:53:54 +02:00
Robert Beckebans
61f568550e
New Blender style mesh .map primitive type
2015-04-12 11:53:05 +02:00
Robert Beckebans
05f06b7131
sRGB gamma correct rendering experiment
2015-04-12 11:11:03 +02:00
Robert Beckebans
96aff1e923
r_useSRGB fixes
2015-03-24 01:11:30 +01:00
Robert Beckebans
395ef525b1
Tweaked shadowmap bias to fight shadow acne
2015-03-19 01:27:44 +01:00
Robert Beckebans
319b659302
Tweaked shadowmap bias to fight Peter Pan effect
2015-03-19 00:31:08 +01:00
Robert Beckebans
720f8e8cdf
Merge remote-tracking branch 'RBDOOM-3-BFG/master'
2015-03-15 10:20:56 +01:00
Robert Beckebans
06d0434f32
Improved modding support and loading of custom models/anims
2015-02-25 15:45:16 +01:00
Robert Beckebans
5fb44de8a9
Merge remote-tracking branch 'RBDOOM-3-BFG/master'
2015-02-15 11:17:42 +01:00
Daniel Gibson
90b1ff0b65
Format Code with AStyle 2.05.1
2015-02-09 00:29:57 +01:00
Daniel Gibson
5f5684386e
Update astyle to 2.05.1, add astyle Linux binaries
...
Unfortunately, different versions of astyle produce slighty different
formatting, so it's important that everyone uses the same version.
Thus it makes sense to provide astyle binaries for Win32 and
Linux x86 and x86_64 (to prevent usage of outdated versions from package
managers etc)
Most probably it would be easy to add an OSX astyle binary as well and
call that from astyle-code.sh if applicable.
I don't have a Mac, though, so someone else will have to do it ;-)
2015-02-09 00:24:37 +01:00
Robert Beckebans
4c596dcf0d
Fixed Gamepad LS and RS in PDA screen. refs #214
2015-02-05 20:11:09 +01:00
Daniel Gibson
015748f823
SDL backend: generate SE_MOUSE_LEAVE events
...
The SDL backend now creates SE_MOUSE_LEAVE events when the mouse leaves
the window (both SDL1.2 and SDL2). For some reason, both the SWF GUI
backend and CEGUI are interested in this.
2015-01-28 17:32:35 +01:00
Daniel Gibson
aa51d38b3c
Support up to 16 mouse buttons (SDL-only)
...
Mostly necessary because SDL doesn't properly return mouse buttons X1/X2
on Linux/X11, see https://bugzilla.libsdl.org/show_bug.cgi?id=2310
Not sure if this is possible with Windows, DIMOFS_BUTTON7 seems to be
the highest constant there.
Also passing sdlevent.wheel.y directly as scroll delta
2015-01-28 17:32:35 +01:00
Daniel Gibson
65d1428dd1
Make Unicode input work for SDL
...
The d3bfg internal SE_CHAR events were documented as "evValue is an
ascii char", but are actually at least UTF-16, as returned by
Windows WM_CHAR events.
We now assume it's UTF-32 (UTF-16 has the same values mostly)
and the SDL backend now puts UTF-32 chars into SE_CHAR events.
In the Windows backend I make sure that no surrogate UTF-16 chars are
emitted + I added support for WM_UNICODE messages.
Now I can input Ümläuts intö the conßole window \o/
2015-01-28 17:32:35 +01:00
Robert Beckebans
d691002296
Bumped engine version to 1.0.3 to prepare for new release
2015-01-18 12:13:24 +01:00
Robert Beckebans
c0f537ae7e
Made SDL 2 the default
2015-01-18 12:02:48 +01:00
Daniel Gibson
e37671d6ac
Change SDL event-handling, mostly for keyboard input
...
Sys_GetEvent()
* renamed res_none to no_more_events, because that's what the
caller assumes when getting that event
* don't return res_none on unhandled events, instead get the next event
until there is a handled event or no more events
(=> if -> while, return res_none -> continue)
* Mapping to Doom3 keynum handled differently for SDL1 vs SDL2, see below
For SDL2 we don't use SDL_KeyToDoom3Key on the keysym anymore, but map
the SDL2 scancode to Doom3/Direct-Input scancodes instead (the keynum_t
K_* constants are really used as scancodes!).
This mapping is done in sdl2_scancode_mappings.h scancodeToKeyNum[].
In sdl_events.cpp there are static SDLScanCodeToKeyNum() and
KeyNumToSDLScanCode() functions that use this scancodeToKeyNum[] array.
Sys_GetKeyName() now does something sensible for SDL2 by using
KeyNumToSDLScanCode()
This is also used to implement idKeyInput::LocalizedKeyName() for SDL-targets
(for SDL1.2 the behavior doesn't change much, though, as it doesn't have
consistent scancodes - Sys_GetKeyName() will just return NULL and
idKeyInput::LocalizedKeyName() will fall back to the old default)
2015-01-06 21:22:12 +01:00
Daniel Gibson
0e1de30fe9
enhance neo/sys/sys_public.h enum keyNum_t with some missing keys
...
turns out that both d3bfg and cegui use direct input scancode numbers
to represent keys internally.. now isn't that fucking convenient!
d3bfg was missing some, though, so I added them
2015-01-06 21:22:05 +01:00
Daniel Gibson
b9f5d20e93
improved SDL2 textinput handling
...
strdup() and free() aren't really the right tool if the size of the
buffer is known anyway (and quite small, currently 32 chars)
while at it, I renamed s and s_pos to str and str_pos for better
readability
2015-01-06 21:21:58 +01:00
Robert Beckebans
940d9f8a06
Formatted Code with AStyle
2014-11-25 11:42:08 +01:00
Wintermute0110
bc6cab3ab0
* SDL joystick/gamepad support implemented and working.
...
* Tested in Linux with both XBox360 wireless and Logitech F710 gamepads.
Should work with any XBox gamepad clone wired/wireless.
* Works well using SDL 1.2 or SDL 2.0
* SDL scan values are currently hard-coded. Note sure how to implement
remapping at the moment (config file, GUI, ...).
2014-11-21 02:47:21 +09:00
Wintermute0110
46180de310
* Some debug stuff (now commented in) used to debug joystick/gamepad events.
2014-11-20 06:13:07 +09:00
Wintermute0110
2a71e3a31f
New sh script to make standard debug version in linux. Also included the ONATIVE parameter by default in Release version. SDL2 is deacctivated by default, so there is no need to pass that argument to CMake.
2014-11-19 03:39:18 +09:00
Robert Beckebans
354208eb66
Renamed CMake -DFORRT option to -DWINRT
2014-11-15 14:43:44 +01:00
SubjectName
9803c9da0e
Add option for WinRT.
...
"if( ${CMAKE_SYSTEM_VERSION} EQUAL 6.2 )" works for all versions of
Win8.
These changes will suppress compile error when building except for RT.
2014-11-15 00:50:03 +09:00
Robert Beckebans
54fb0ec6ad
Merge pull request #204 from coldtobi/use-system-glew
...
USE_SYSTEM_LIBGLEW -- Use the system libglew instead of the bundled one
2014-11-12 19:56:23 +01:00
Tobias Frost
2550f84fbb
USE_SYSTEM_LIBGLEW -- Use the system libglew instead of the bundled one
2014-11-12 19:35:38 +01:00
Robert Beckebans
0722718307
Disabled GPU Skinning for Mesa driver #187
2014-11-12 12:39:53 +01:00
Robert Beckebans
d295a6aea9
Disabled usage of OpenGL 3.2 compatibility profiles for Linux #187
2014-11-12 12:34:07 +01:00
Robert Beckebans
6a906704c5
Made GL_ARB_multitexture exception for OpenGL core profiles and Mesa #189
2014-11-09 11:24:37 +01:00
Robert Beckebans
0f52880767
Astyle
2014-11-09 11:15:35 +01:00
Robert Beckebans
63b6934ad6
Merge pull request #192 from coldtobi/fix_183_libjpeg
...
Fix 183 libjpeg
2014-11-09 11:12:13 +01:00
Robert Beckebans
1f67070170
Merge pull request #190 from palmalcheg/pch_msvc_fix
...
enable WinRT XAudio2 sound, tweaks in cmake script for precompiled header ordering for QtCreator
2014-11-09 11:03:36 +01:00
BielBdeLuna
f77b3b6f71
the engine now supports all the lenguages from steam in sounds and strings
2014-11-06 16:25:25 +01:00
Tobias Frost
6bfedbfeb9
Use system's libjpeg when -DUSE_SYSTEM_LIBJPEG is used
...
note, that it is expected that this libjpeg is newer, therefore some files needs to be patched
to compile.
This patch is used for Debian -- Debian uses libjpeg-turbo, but I assume that it will also compile
against a recent libjpeg.
2014-11-01 17:59:25 +01:00
Tobias Frost
a8d9c2b489
patch to use system's libpng when enabled by the CMake option USE_SYSTEM_LIBPNG
2014-11-01 16:33:17 +01:00
Tobias Frost
cbbf473d59
patch to use system's zlib when enabled by the CMake option USE_SYSTEM_ZLIB
2014-11-01 14:13:16 +01:00
palmalcheg
27387e664b
cmake definition on winrt detection, log device info
2014-10-27 22:20:20 +02:00
palmalcheg
aab81a225f
sound for WinRT
2014-10-27 04:39:10 +02:00
unknown
f039e3c668
precompiled for msvc fix
2014-10-26 03:36:49 +03:00
BielBdeLuna
df69087fd6
ffmpeg fix so we can compile it without deprecated functions
2014-10-24 10:44:26 +02:00
Dan McGoo
2288ab82bb
Fix loading saved game prior to commit 7e21048
crash.
...
Commit 7e21048
introduced a change in the save game files strutcure.
This makes the game crash whenever you load saved games created with a prior version of the code.
This commit tends to fix this issue.
However, save game files created between commit 7e21048
and the current one will not load correclty.
Unless the user change the saved game's saveVersion number in game.details.
2014-10-09 18:54:35 +09:00
Dan McGoo
8b28e50cd4
Write the renderprogs under the savepath.
...
Because under *nix systems, the basepath may be write protected for the user.
2014-10-07 23:20:20 +09:00
Dan McGoo
e719a8de0f
Add native arch compilation option.
2014-10-07 23:12:42 +09:00
Robert Beckebans
0d3e4733af
glMapBufferRange Bugfix for Nvidia WHQL drivers >= 344.11.
...
Thanks to Mathias Heyer by Nvidia for helping this out.
2014-09-27 10:56:34 +02:00
Robert Beckebans
72f986077b
Removed unnecessary USERCMD_HZ. #129
2014-08-31 16:24:56 +02:00
BielBdeLuna
7e21048ba3
skipping cut scene working
2014-08-31 02:21:49 +02:00
Robert Beckebans
ce0e83ebca
Merge pull request #160 from BielBdeLuna/envshot
...
Envshot and cubemap to skymap transforms
2014-08-25 17:17:47 +02:00
BielBdeLuna
1f993688c6
image.h included
2014-08-25 16:13:16 +02:00
BielBdeLuna
fc7ed840bc
astyle and other wonderbar stuff!
2014-08-25 15:25:54 +02:00
BielBdeLuna
fedaf6b691
envshot and others working
2014-08-24 00:10:50 +02:00
Robert Beckebans
9147482a37
Added check for Gallium drivers to use GLSL ES 3.00. #137
2014-08-20 13:07:59 +02:00
BielBdeLuna
d7345d6168
envToSky not working yet
2014-08-20 12:12:01 +02:00
Robert Beckebans
7e49606cc8
Removed ARB endings from OpenGL calls
2014-08-20 11:09:02 +02:00
Robert Beckebans
f9ff46d03d
Removed include of SDL_syswm.h because it creates problems on Kubuntu 14.04 with Mir
2014-08-20 00:30:39 +02:00
BielBdeLuna
095cf836c6
screen shots are PNG and envshots are TGA, but still envshots come out somewhat wrong
2014-08-19 11:35:50 +02:00
BielBdeLuna
706d98f24c
now envshot does the target renderers at a proportionatesize and unskewed, but still the first of them fails.
2014-08-18 03:38:55 +02:00
BielBdeLuna
71b26cf128
envshot working but not correctly
2014-08-16 23:20:46 +02:00
Robert Beckebans
195b99e39f
Removed usage of Sys_GetSystemRam(). refs #164
2014-08-06 11:35:42 +02:00
Robert Beckebans
45b0075a75
VectorSet compile fix. refs #146
2014-08-06 11:27:11 +02:00
Robert Beckebans
05b21ff3ad
Updated embedded Cg shaders
2014-08-02 15:10:06 +02:00
Robert Beckebans
e03ed8769d
Small corrections to dmap
2014-08-02 15:09:25 +02:00
Robert Beckebans
352df659a8
Replaced ( void ) with ()
2014-08-02 14:48:04 +02:00
Pat Raynor
125191b866
Added back dmap and aas compiler from original Doom 3 GPL release
2014-08-01 03:07:00 -04:00
Pat Raynor
d2ebebca35
Fix classic doom define logic in XAudio2 sound backend
2014-08-01 02:37:00 -04:00
Pat Raynor
6f65394d97
Removed the useless Sys_GetSystemRam and Sys_GetVideoRam
2014-08-01 02:36:04 -04:00
Pat Raynor
afeab489dd
Add more windows versions...
2014-08-01 02:35:12 -04:00
Robert Beckebans
f5dd0611d5
Merge pull request #140 from darealshinji/patch-1
...
use av_frame_alloc() if lavc is >= 55.28.1
2014-07-21 10:04:12 +02:00
Robert Beckebans
77f65454f2
Merge pull request #143 from jonathangray/mesa-shader-fix
...
make a shader work with Mesa by avoiding an implicit type conversion
2014-07-21 10:00:16 +02:00
Jonathan Gray
86216aa708
Fix memory corruption in timidity resampling code.
...
From Sam Lantinga in SDL_mixer 1.2.8:
http://lists.libsdl.org/pipermail/commits-libsdl.org/2007-July/008673.html
Fixes a crash on OpenBSD.
2014-07-20 22:58:43 +10:00
Jonathan Gray
79b8e04e95
avoid an implicit type conversion in a shader
...
renderprogs/interactionSM.pixel does not compile with the Mesa
shader compiler due to a an implicit type conversion.
This gives a console warning on a release build and fatally
asserts on an debug build:
0:135(19): error: could not implicitly convert operands to arithmetic operator
Avoid this by changing an int declaration to a float.
2014-07-20 21:25:24 +10:00
darealshinji
f1d2d2c459
use av_frame_alloc() if lavc is >= 55.28.1
2014-07-07 16:40:12 +02:00
Mike Swanson
1c56560cc4
Change default Linux path to a generic and standard name
...
While the game so far has no official release on Linux, we cannot
depend on any pre-installed path for the game. Even if it were, it
would likely be a steam exclusive and constrained to
$HOME/.local/share/Steam ...
Instead, this adopts a more typical Debian-style path used for game
data, that is putting it into /usr/share/games. This is already the
path I have chosen when making the doom3bfg-data package[1] for the
Arch Linux AUR, and currently both packages for RBDOOM-3-BFG patch
this file in order to use this path. The more generic path name can
facilitate the use of any other forks of BFG Edition that may come
along, and everyone will benefit by sharing the same data path.
[1] https://aur.archlinux.org/packages/doom3bfg-data/
2014-05-28 19:19:24 -07:00
Robert Beckebans
79c4b3ef98
Fixed SDL 1.2 support
2014-05-22 09:55:25 +02:00
Radegast
e1f8597360
Use SDL to find Application Support path. #87
2014-05-22 00:33:58 +01:00
Radegast
c76e9a26ef
Removed objective-c++ code. #87
2014-05-22 00:07:34 +01:00
Radegast
4045be32b1
Replaced procfs dependent functions with native calls on OS X. #87
2014-05-21 22:31:18 +01:00
Robert Beckebans
6d0765f3e3
Fixed mouse release comment #122
2014-05-20 23:50:53 +02:00
Robert Beckebans
746c9ce20a
Merge pull request #120 from JanSimek/master
...
Replaced MACOS_X define with standardised __APPLE__. #87
2014-05-20 23:35:59 +02:00
Robert Beckebans
ae4ef25160
Keep mouse grabbed when opening a PDA or menu. fixes #122
2014-05-20 23:33:57 +02:00
Radegast
b8676a513f
Replaced MACOS_X define with standardised __APPLE__. #87
2014-05-20 13:51:53 +01:00
Robert Beckebans
be7d912cf2
Just to be safe. Changed Sys_Yield()
2014-05-20 09:31:40 +02:00
Robert Beckebans
05248cce6d
AStyle
2014-05-20 09:29:08 +02:00
Radegast
5304284e90
Added CLOCK_REALTIME support to our custom clock_gettime() function for OS X. #87
...
The monotonic part was written by Gavin Beatty
https://github.com/gavinbeatty/python-monotonic-time/blob/master/darwin.c
2014-05-19 22:53:46 +01:00
Radegast
ca5c463bbd
Added clock_gettime() for OS X which always returns monotonic time. #87
2014-05-19 16:53:20 +01:00
Radegast
764b067825
Avoid 'unknown event' spam when testing with touchpad. #87
2014-05-19 15:52:33 +01:00
Radegast
0ae98f62c4
It's no fun without textures. #87
2014-05-18 23:49:03 +01:00
Radegast
9b4f849cd5
Get RAM in MB. #87
2014-05-18 23:33:08 +01:00
Radegast
812fb78d52
Initial OS X support. #87
2014-05-18 23:14:28 +01:00
Robert Beckebans
185f2aaf90
Disabled some GL_CheckErrors() calls that can be a slowdown
2014-05-18 15:17:15 +02:00
Robert Beckebans
952907fa77
ATI hotfix for shadow mapping. #116
2014-05-17 10:53:14 +02:00
Robert Beckebans
63add75e7f
Disabled MSAA 16x option which is a performance killer in combination with shadow mapping
2014-05-16 23:57:17 +02:00
Robert Beckebans
66889f5c81
Bumped engine version to 1.0.2
2014-05-16 22:49:23 +02:00
Robert Beckebans
54c31bff8f
Fixed r_shadowMapJitterScale for Poisson disc algorithm
2014-05-16 22:32:56 +02:00
Robert Beckebans
3dcade4c15
Updated embedded shadow mapping using rotated Poisson disc
2014-05-16 21:52:31 +02:00
Robert Beckebans
c17773306c
Revert "Changed r_useShadowMapping 1: medium+faster, 2: high quality"
...
This reverts commit 87b0040f92
.
Conflicts:
neo/renderer/RenderSystem_init.cpp
neo/renderer/tr_backend_draw.cpp
neo/renderer/tr_local.h
2014-05-16 21:50:49 +02:00
Robert Beckebans
ef9869972d
Improved shadow mapping performance using randomly rotated Poisson discs
2014-05-16 21:33:39 +02:00
Robert Beckebans
7f0f7f8a41
Commented out #include <inttypes.h>. fixes #112
2014-05-16 10:47:42 +02:00
Robert Beckebans
e0c8243ee7
Make high quality shadow mapping the default
2014-05-16 00:22:34 +02:00
Robert Beckebans
87b0040f92
Changed r_useShadowMapping 1: medium+faster, 2: high quality
2014-05-16 00:14:42 +02:00
Robert Beckebans
cd3ed5a927
Sacrificed texture bias option for shadows option. fixes #109
...
We can't add new graphics options without altering the original Flash menu
files which we don't have. I disabled the r_lodBias functionality which
can make the game look worse by adding a bias to the texture lookup
functions which cause choosing texture mip maps that are smaller than the
original image size in every view even though we want the first mip map
level 0 which is the best quality.
2014-05-15 23:46:53 +02:00
Robert Beckebans
d356c6e156
Merge remote-tracking branch 'RBDOOM-3-BFG/master'
...
Conflicts:
neo/renderer/RenderProgs.cpp
neo/renderer/RenderProgs.h
neo/renderer/RenderWorld_portals.cpp
neo/renderer/tr_backend_rendertools.cpp
2014-05-15 17:03:28 +02:00
Robert Beckebans
e13fc0f4e9
Added cvar r_useHalfLambertLighting to make it optional, it requires reloadShaders
2014-05-15 16:37:55 +02:00
Robert Beckebans
42874cfd05
Added graphics option to make soft shadows optional
2014-05-15 12:14:37 +02:00
Robert Beckebans
c300acd507
Fixed typo. Now all videos should work on Linux. refs #100
2014-05-15 10:48:37 +02:00
Robert Beckebans
837cb4dff2
Changed file testing for .bik videos to support fs_game. fixes #100
2014-05-14 23:14:37 +02:00
Robert Beckebans
ee09662c10
Added custom content support by looking for all content in all maps/*.resources.
...
This changes the filesystem to work a bit more like previous id tech
engines and allows to run mods and custom content like the Wulfen high
resolution textures in those mods with
+set fs_game <modname> +set fs_resourceLoadPriority 0
2014-05-14 22:32:34 +02:00
Robert Beckebans
26bb497b3c
Supress warnings about failed #include global.inc when using embedded Cg shaders
2014-05-14 19:14:21 +02:00
Robert Beckebans
a66859f09c
Only use 2048^2 shadow maps for cascaded shadow mapping
2014-05-14 18:57:12 +02:00
Robert Beckebans
4a68a5ef59
Made interactionSM shader sampler loop to use r_shadowMapSamples many iterations
2014-05-14 18:49:56 +02:00
Robert Beckebans
7d6d8b4641
Reduced FFmpeg debug console prints
2014-05-12 20:02:20 +02:00
Robert Beckebans
a67f99acda
Fixed shadow mapping problems with the ATI Catalyst driver
2014-05-12 19:54:09 +02:00
Robert Beckebans
c1b7308862
Fixed problems when building for Win64 and using FFmpeg. fixes #106
2014-05-12 09:51:41 +02:00
Robert Beckebans
f95076984f
Shadow LOD fix for parallel lights
2014-05-11 22:59:21 +02:00
Robert Beckebans
0eaaea4b96
Improved shadow mapping performance using the shadow LOD and tweaked
...
polygon offsets to fight shadow acne
2014-05-11 22:30:01 +02:00
Robert Beckebans
5153422d0d
Added shadow LOD calculation
2014-05-11 17:24:24 +02:00
Robert Beckebans
6d25a20b80
Updated ENGINE_VERSION
2014-05-11 14:44:31 +02:00
Robert Beckebans
fc51a7cf70
Updated embedded shaders
2014-05-11 14:37:58 +02:00
Robert Beckebans
2307a94d53
Added r_forceShadowMapsOnAlphaTestedSurfaces 1
2014-05-11 14:36:51 +02:00
Robert Beckebans
0ca7667fd2
Removed glewExperimental = GL_TRUE hack for SDL 2
2014-05-11 12:28:29 +02:00
Robert Beckebans
5c0fedf190
Patched GLEW to get the extensions with OpenGL >= 3.2 for the case that glGetString(GL_EXTENSIONS) fails
2014-05-11 12:19:10 +02:00
Robert Beckebans
f72d98a1eb
Disabled shadow mapping for Mesa drivers fixes #103
2014-05-11 11:49:14 +02:00
Robert Beckebans
11456a231d
Changed Mesa backend to output GLSL ES 3.00 in order to support shadow mapping
2014-05-11 11:30:56 +02:00
Robert Beckebans
14f87fe9db
Added support for loading .png image files as textures and changed screenshot command to write in .png format
2014-05-10 18:15:33 +02:00
Robert Beckebans
0c8463ea5b
Added -Wno-inline-new-delete for Clang
2014-05-10 16:11:47 +02:00
Robert Beckebans
887773cb24
Removed dangerous and obsolete memset
2014-05-10 16:03:28 +02:00
Robert Beckebans
96e879361d
Fixed a problem with the searching for embedding local and embedded shaders
2014-05-10 16:00:18 +02:00
Robert Beckebans
12fd563fce
Merge branch 'advanced-renderer-upgrades' of github.com:RobertBeckebans/RBDOOM-3-BFG into advanced-renderer-upgrades
2014-05-10 15:30:55 +02:00
Robert Beckebans
ade5c434f8
Replaced QGL with GLEW in sdl_glimp.cpp
2014-05-10 15:30:48 +02:00
Robert Beckebans
485417ab41
Removed obsolete sdl_qgl.cpp and fixed some compile errors
2014-05-10 15:29:59 +02:00
Robert Beckebans
08cacdfe17
Added utility functions for dmap
2014-05-10 15:03:06 +02:00
Robert Beckebans
277964f074
Because I can :)
...
- Implemented soft shadows using PCF hardware shadow mapping
The implementation uses sampler2DArrayShadow and PCF which usually
requires Direct3D 10.1 however it is in the OpenGL 3.2 core so it should
be widely supported.
All 3 light types are supported which means parallel lights (sun) use
scene independent cascaded shadow mapping.
The implementation is very fast with single taps (400 fps average per
scene on a GTX 660 ti OC) however I defaulted it to 16 taps so the shadows look
really good which should you give stable 100 fps on todays hardware.
The shadow filtering algorithm is based on Carmack's research which was
released in the original Doom 3 GPL release draw_exp.cpp.
- Changed interaction shaders to use Half-Lambert lighting like in HL2 to
make the game less dark
- Fixed some of the renderer debugging/development tools like r_showTris
2014-05-10 14:40:01 +02:00
Robert Beckebans
b983156829
Updated GLEW to version 1.10.0
2014-05-10 12:12:32 +02:00
RobertBeckebans
e1661f8cde
Merge branch 'master' into glew
2014-04-30 12:05:30 +02:00
RobertBeckebans
6b2793ed6a
Removed null characters from RenderProgs_embedded.h
2014-04-28 11:29:11 +02:00
RobertBeckebans
853eaa5a00
Added missing neo/premake/embed.lua
2014-04-26 14:28:09 +02:00
Robert Beckebans
34025e08cb
Added cmake-linux-release.sh Bash script
2014-04-26 14:26:26 +02:00
RobertBeckebans
cacf1bb46b
Embedded Cg renderprog sources into the renderer using Lua/Premake. Now the renderer can export the renderprogs to any GLSL version without having the user to copy the renderprogs/* shaders to the Doom 3 BFG installation directory. fixes #95
2014-04-26 14:13:25 +02:00
RobertBeckebans
7008c661a5
Removed obsolete includes
2014-04-25 20:29:36 +02:00
RobertBeckebans
60ccf3567b
Merge branch 'master' into glew
2014-04-25 20:24:30 +02:00
RobertBeckebans
055cc09c8b
GLEW fixes
2014-04-25 20:23:34 +02:00
Robert Beckebans
740cc0d2e8
Merge pull request #94 from dekadenZ/size-format-macros
...
Attempt at removing the kludge concerning non-standard printf format references
2014-04-25 19:48:48 +02:00
dekadenZ
e4605633f0
Move format specifier macros to idlib/sys/sys_defines.h
2014-04-25 15:22:15 +02:00
Robert Beckebans
d326d49cf0
Merge pull request #93 from dekadenZ/fix-renderer-string-cmp
...
Fix length error in prefix comparison
2014-04-25 11:07:12 +02:00
dekadenZ
69f26fbe11
Replaced sizeof format references with macro
2014-04-25 03:30:03 +02:00
dekadenZ
27e25cfb08
Macros for format references to size_t
2014-04-25 03:23:34 +02:00
dekadenZ
20e5cf5ae2
Fix length error in prefix comparison
2014-04-25 02:39:49 +02:00
Robert Beckebans
8943a6d4a2
Fixed FFmpeg video timings and crashes. Also fixes the black screen problem with Ubuntu 14.04 #92
2014-04-21 23:56:46 +02:00
Robert Beckebans
e47429f532
Disabled FFmpeg by default because there are some serious issues with ffmpeg on Ubuntu 14.04 which cause a black screen after the intro video #92
2014-04-21 20:33:19 +02:00
RobertBeckebans
8018378c3c
Merge branch 'master' into glew
...
Conflicts:
neo/renderer/OpenGL/glext.h
neo/renderer/OpenGL/qgl.h
neo/renderer/OpenGL/wglext.h
neo/renderer/RenderProgs.cpp
neo/renderer/RenderProgs_GLSL.cpp
neo/renderer/RenderSystem_init.cpp
neo/renderer/tr_backend_draw.cpp
neo/sys/win32/win_qgl.cpp
2014-04-21 15:01:50 +02:00
RobertBeckebans
b0b0d8ed76
gfxInfo Typo
2014-04-20 17:55:03 +02:00
Robert Beckebans
a8cda090c1
Disabled timing queries when using the Mesa driver #90
2014-04-20 17:50:37 +02:00
Robert Beckebans
3b19aa7991
Added glConfig.vendorType settings for Linux and disabled unused shaders. #90
2014-04-20 17:20:50 +02:00
RobertBeckebans
cce21e0d76
Added GLSL ES 1.0 backend for Mesa drivers #90
2014-04-20 16:29:58 +02:00
RobertBeckebans
e61eae499c
Replaced sizeof format references %lu with %zu (GCC, Clang) and %Iu (MSVC) #88
2014-04-16 11:08:05 +02:00
Robert Beckebans
1115b52dd2
Fixed another crash in cinametic code. Now it should be stable
2014-04-11 10:28:53 +02:00
RobertBeckebans
647a3ebad8
Fixed crashes in cinematic code
2014-04-06 12:15:27 +02:00
RobertBeckebans
899982b0b2
Made FFmpeg optional and fixed potential crashes
2014-04-06 11:38:38 +02:00
Robert Beckebans
1e443f6857
Bink support on Linux with CMake
2014-04-05 17:38:42 +02:00
RobertBeckebans
17ff91664b
Added FindFFMPEG.cmake
2014-04-05 16:30:41 +02:00
RobertBeckebans
730a1f2baa
Merged FFmpeg Bink video support from DOOM-3-BFG-VR fork
2014-04-05 15:41:19 +02:00
RobertBeckebans
c9249bd05c
Added ffmpeg win32 dev libs
2014-04-05 15:40:20 +02:00
Robert Beckebans
5d390301d6
Suppress warnings about multichar literals
2014-02-23 20:04:24 +01:00
Andreas Bergmeier
f66591f244
Force format invocations to be correct (on gcc and clang) and fix them.
2014-02-23 19:16:23 +01:00
RobertBeckebans
70108766d4
Updated astyle.exe to AStyle 2.03
2014-02-23 15:23:10 +01:00
Robert Beckebans
a315630d7d
Changed astyle-code.sh script to use the system astyle which is 2.03 on Kubuntu 13.10
2014-02-23 15:19:11 +01:00
Robert Beckebans
4a124390a4
Merge pull request #75 from abergmeier/fix_trigraphs
...
Fix usage of trigraphs.
2014-02-23 15:15:14 +01:00
Andreas Bergmeier
be49ad4151
Add format analysis to format functions in Common.
2014-02-22 18:24:25 +01:00
Andreas Bergmeier
4d9970b148
Properly handle format analysis
...
Rename ATTRIBUTE_PRINTF to
- ID_STATIC_ATTRIBUTE_PRINTF
- ID_INSTANCE_ATTRIBUTE_PRINTF
since for instance functions, this has to be taken into account, too.
Add format analysis to idLib, DeclManager and idTokenParser functions.
Add support for clang.
2014-02-22 17:02:06 +01:00
Andreas Bergmeier
69f7f0eba6
Fix usage of trigraphs.
2014-02-22 11:54:04 +01:00
RobertBeckebans
7b6ceb48c8
Formatted code with AStyle
2014-02-18 11:57:59 +01:00
Robert Beckebans
47cc4f37b6
Merge pull request #72 from abergmeier/fix_constr_order
...
Correct initialization order of idSoundVoice_OpenAL constructor.
2014-02-18 10:03:37 +01:00
Robert Beckebans
3d1d78e528
Merge pull request #71 from abergmeier/fix_array_access
...
Fix accessing array in PrintFloat by char instead of int.
2014-02-18 10:03:28 +01:00
Robert Beckebans
8bd15e6f55
Merge pull request #70 from abergmeier/fix_64_bit
...
Handle st_lwPolygon::surf for 64bit.
2014-02-18 10:02:58 +01:00
Robert Beckebans
71a62beaac
Merge pull request #65 from ckorn/typos
...
Fix typos
2014-02-18 09:56:44 +01:00
Andreas Bergmeier
beed9b7b4c
Correct initialization order of idSoundVoice_OpenAL constructor.
2014-02-17 15:54:00 +01:00
Andreas Bergmeier
bf283af184
Fix accessing array in PrintFloat by char instead of int.
2014-02-17 15:41:33 +01:00
Andreas Bergmeier
a7b258ac2b
Fix multiple compiler warnings and properly handle st_lwPolygon::surf for 64bit.
...
Changed surf member to now be a union of a intptr_t index and a lwSurface*.
Index member has to be signed to prevent overflow (by assigning a possibly negative short).
For most platforms, sizeof(int*) should be the same as sizeof(lwSurface*), though this might still be a race condition.
2014-02-17 14:22:01 +01:00
Robert Beckebans
dd22a2a85a
Merge branch 'master' into glew
2014-02-15 11:53:30 +01:00
Robert Beckebans
cb2754884d
Updated credits
2014-02-15 11:45:27 +01:00
RobertBeckebans
c710c9577f
Merge branch 'master' into glew
2014-02-13 13:51:36 +01:00
RobertBeckebans
4a865cbbe5
Added .bat files for quick VS 2013 projects creation
2014-02-13 13:50:31 +01:00
Robert Beckebans
573905e295
Compile fix
2014-01-09 17:53:30 +01:00
Christoph Korn
cf9ae278f9
Fix another typo
...
Small typo fix.
2013-12-31 02:37:42 +01:00
Christoph Korn
264ffcb6f7
Fix typos
...
Just fix some typos.
2013-12-31 02:23:16 +01:00
Robert Beckebans
7690fb4b8e
Merge branch 'master' into glew
...
Conflicts:
neo/renderer/OpenGL/glext.h
neo/renderer/RenderSystem_init.cpp
2013-12-24 15:49:06 +01:00
Robert Beckebans
223b7ee527
Merge pull request #63 from felixrg/doomclassic
...
Add 64-bit and OpenAL support for Doom Classic
2013-11-16 10:28:42 -08:00
Felix Rueegg
502b9fa180
Fixed doomclassic compiler warnings
2013-11-16 16:22:42 +01:00
Felix Rueegg
41d44b38d5
Added OpenAL for doomclassic to CMake and fixed the sound stub problem
2013-11-13 18:36:15 +01:00
Felix Rueegg
ad2a82ebb2
Added OpenAL support for doomclassic
2013-11-13 18:20:39 +01:00
Robert Beckebans
aaed5dd0b7
Added major contributors to the credits menu
2013-11-04 16:33:20 +01:00
Felix Rueegg
513fc0ee8f
Added doomclassic for Linux to CMake
2013-10-31 21:25:05 +01:00
Robert Beckebans
1464e0be66
Merge remote-tracking branch 'RBDOOM-3-BFG/master'
2013-10-30 11:45:10 +01:00
Robert Beckebans
a92a49dc2f
Astyle
2013-10-30 09:42:24 +01:00
Jonathan Young
db626df078
Fixed the autosave dialog being stuck on the screen when starting a map (map or devmap) via the command line, or before selecting Doom 3.
2013-10-19 16:43:39 +10:00
Jonathan Young
2555b804d6
Fixed ERR_DROP resulting in a glitched screen with only the console accessible - show the main menu instead.
2013-09-29 21:03:32 +10:00
Robert Beckebans
9e7230de34
Disabled tunnel vision. Fixes #33 Red screen flash on damage does not dissapear until load or full health
2013-09-25 09:19:21 +02:00
Robert Beckebans
c603add210
Reverted fs_resourceLoadPriority. Be aware to keep this changed if you work on mods or standalones. fixes #59 Player starts out with Soul Cube in Doom 3
2013-09-25 09:09:09 +02:00
Jonathan Young
c925f05f85
Fixed warp effect not being centered when r_useVirtualScreenResolution was 0.
2013-09-22 13:50:49 +10:00
Jonathan Young
bb2e41b5d7
Added r_useVirtualScreenResolution cvar to control whether to do 2D rendering at 640x480 and stretch to the current resolution (default), or render at the current resolution.
2013-09-21 22:12:42 +10:00
Jonathan Young
b3983e582a
astyle
2013-09-21 19:37:12 +10:00
Jonathan Young
4c7a2c5de3
Prioritize source SWF and image (for SWF atlas) files over their binary equivalents in resources files when not in production mode. Now you can replace individual menus without having to extract and delete all the base/*.resources files first.
2013-09-21 19:35:00 +10:00
Jonathan Young
adf2b63e88
Skip some common SWF tags (FileAttributes, Metadata and SetBackgroundColor) instead of failing to load a SWF file if any of them are encountered.
2013-09-21 19:27:03 +10:00
Jonathan Young
a1776a22d0
r_vidMode sanity check was off by 1.
2013-09-18 12:39:31 +10:00
Jonathan Young
45ea17fd70
Removed unused FileSystem variables.
2013-09-17 20:36:18 +10:00
Jonathan Young
1c500b710b
Mirror source code directory structure in generated MSVC projects.
2013-09-16 17:54:14 +10:00
Daniel Gibson
9372fddabb
Fix compile when system GLDEBUGPROCARB signature is without const
...
.. by just casting our DebugCallback to GLDEBUGPROCARB.
It shouldn't make a difference ABI-wise, if there is a const at
a parameter or not.
Fixes #61
2013-08-31 19:23:45 +02:00
Robert Beckebans
d3ddf61d9c
Changed signature of GLDEBUGPROCARB to match OpenGL GL_ARB_debug_output specs
2013-08-29 09:38:52 +02:00
Robert Beckebans
bc45492d9c
Fixed typo that hid the sys/*.h files in the VS solutions
2013-08-14 02:48:07 +02:00
Daniel Gibson
1f5579a697
Fix compilation with SDL2 Release
...
.. they removed ev.key.keysym.unicode - but checking for
SDL_SCANCODE_GRAVE is better anyway to handle console key
2013-08-13 23:08:48 +02:00
Robert Beckebans
47e754e44d
Merge remote-tracking branch 'RBDOOM-3-BFG/master'
2013-07-13 11:54:09 +02:00
Daniel Gibson
88b23611f9
Fix DEBUG_THREADS on FreeBSD
...
There was a typo in an #include, furthermore FreeBSD has no
pthread_getname_np equivalent.
I added Sys_GetThreadName() so the code is a bit cleaner.
2013-06-23 19:16:23 +02:00
Dmitry Shapovalov
e6b4326f86
Code duplication in idWeapon::Clear
2013-06-03 14:56:25 +06:00
Robert Beckebans
3b67eabf79
Fixed critical bug in the generic C++ code of DotProduct_SIMD that caused massive errors in the physics system
2013-06-01 18:29:12 +02:00
Robert Beckebans
2a4970c86c
Added CMake batch file for OpenAL
2013-06-01 15:15:18 +02:00
Robert Beckebans
db715535cc
Merged generic C++ fallbacks for SSE optimized code to allow support for non-x86 based platforms like ARM
2013-06-01 15:13:00 +02:00
Robert Beckebans
e510691c36
Changed model loader to not generate binary files for defaulted models. closes #39
2013-05-24 19:27:18 +02:00
Robert Beckebans
3fd3a6b284
Merge remote-tracking branch 'RBDOOM-3-BFG/master'
2013-05-24 19:00:00 +02:00
Robert Beckebans
bdfc2aadb1
Allow slow-motion sound effect for OpenAL sounds
2013-05-24 18:55:56 +02:00
Robert Beckebans
fe22638fdd
Merge branch 'master' into glew and fixed a crash on Intel HD drivers
2013-04-23 00:43:00 +02:00
Robert Beckebans
aefa4ac6e3
Merge branch 'master' into glew and fixed a crash on Intel HD drivers
2013-04-23 00:41:54 +02:00
Robert Beckebans
e7ffc153c2
Added back workaround in RB_DrawElementsWithCounters
2013-04-10 02:40:09 +02:00
Robert Beckebans
d176bca1e7
Fixed critical out of bounds bug in RB_DrawShaderPasses()
2013-04-10 02:13:27 +02:00
Robert Beckebans
3023533e57
Added pthread priority code but it is disabled by default because it requires root privileges
2013-03-26 13:43:30 +01:00
Robert Beckebans
cbd696cc67
Merge remote-tracking branch 'DanielGibson/improve-threading'
2013-03-26 09:58:14 +01:00
Robert Beckebans
dcae311b7f
Renamed in_kbd to in_keyboard
2013-03-26 09:56:48 +01:00
Daniel Gibson
3c755e490b
change threadnames so they fit into 15chars
...
+ terminating null byte - that's the limit of threadnames on linux
Furthermore: idJobThread::Start used va() to create the threadname.
va() isn't threadsafe... so I replaced it with a local buffer and
idStr::snPrintf()
2013-03-26 00:36:04 +01:00
Daniel Gibson
da9ab07e9c
Refactor setting threadname on POSIX systems
...
* setting threadname is now done in a seperate function
* if setting the threadname fails, it just prints a warning now
instead of terminating the game with a FatalError
2013-03-26 00:36:04 +01:00
Daniel Gibson
fe18a49303
Improve POSIX threading code
...
* setting threadname is now done in a seperate function so it's a bit
cleaner (it's different for every platform..)
* replace/refactor signaling code (based on my SDL threading branch and
the old pthread signaling code from RB):
- The interface is like on win32 now (Sys_Signal* functions instead of
overwriting idSysSignal class)
- created a custom signalHandle_t struct for that, which contains all
needed information
- Mimic Windows functions used in win32 implementation more closely,
e.g. signal all waiting threads on manualReset signalRaise, count
waiting threads etc. I'm pretty sure the behavior on Win32 and POSIX
now is identical (as far as possible).
2013-03-25 22:05:02 +01:00
Daniel Gibson
ae02bb54a1
Make it compile with SDL2 again
...
For some reason SDL.h (or headers included by it) need some
string functions (like strncmp) in inline-functions (that we
don't even use).
Str.h has #defines preventing their usage.. so #undef those in
the (few) sourcefiles that need SDL headers
2013-03-24 23:44:13 +01:00
Robert Beckebans
4a02fc26cc
Fixed some render debugging tools
2013-03-24 15:39:52 +01:00
Robert Beckebans
75f7fa3aa8
Removed obsolete old renderer SMP code
2013-03-23 21:33:40 +01:00
Robert Beckebans
a916fd71fc
Added openal-soft library for Win32
2013-03-23 21:32:07 +01:00
Robert Beckebans
3f29e641eb
Fixed missing CVAR_ARCHIVE flag to g_fov
2013-03-23 17:45:48 +01:00
Daniel Gibson
07524dadb0
Adapt #includes for moved files, make it build again
...
socket_net.cpp needed some small fixes to build again,
because of imcompatibilities between Winsock and the
real POSIX sockets API.
2013-03-18 00:38:58 +01:00
Daniel Gibson
cec460d38c
Move stuff from sys/posix/ and sys/win32/ to sys/common/
...
All these files were almost identical, so there is no good reason to
have them twice..
and change CMakeLists.txt accordingly
(Not that this commit won't compile because some #includes are still
broken - will be fixed in the next one)
2013-03-18 00:38:58 +01:00
Daniel Gibson
95a1066004
prepare unification of more sys/win32/ and sys/posix/ stuff
...
because the code is almost the same anyway, so
* add win32 support to sys/posix/posix_signin.cpp
* add posix support to sys/win32/win_savegame.cpp
2013-03-18 00:38:40 +01:00
Daniel Gibson
c635566bcc
Move sys/posix/posix_net.cpp to sys/common/socket_net.cpp, remove win_net.cpp
...
and adjust the CMakeLists.txt accordingly
2013-03-17 23:35:12 +01:00
Daniel Gibson
a2be306fed
Add Winsock support to posix_net.cpp (to remove code duplication)
...
win_net.cpp and posix_net.cpp were almost identical, i.e. caused a lot
of duplicated code.
To get rid of that, unify both files - by adding Winsock support to
posix_net.cpp and, in the next step, moving posix_net.cpp to sys/common/
and removing win_net.cpp
2013-03-17 23:35:12 +01:00
Daniel Gibson
e2359ba333
Add CVar r_displayGLSLCompilerMessages to suppress AMD driver warnings
...
The AMD drivers output a lot of useless warnings when compiling the shaders.
Those are pretty annoying, especially as idRenderProgManager::LoadGLSLShader
prints out the whole shader with them..
So I added this CVar to suppress them (when it's set to 0)
2013-03-17 23:35:12 +01:00
Daniel Gibson
d5898abfa4
Don't use net_port as port to connect to
...
the connect commands supports adding the port with ":"
like "connect 10.1.2.3:27016" - if no port is set, it defaults to 27015
net_port is still used as the port to listen on and to send from.
2013-03-17 23:35:12 +01:00
Daniel Gibson
b38aff8995
Fix sending clients from lobby to game when lobby and game are on same server
...
In the current case (only "direct" lobby backend, i.e. connect to a
server directly), lobby and game are always on the same server anyway..
It used to send the IP of the first network interface.. that kinda works
on Windows and FreeBSD in LANs (i.e. not over the internet or even
behind a NAT), but not at all on Linux, because the first device seems
to be the loopback device there (at least on my machine)..
Now it sends net_ip (so it should even work behind NAT) or, if net_ip is
set to "localhost" (the default), 0.0.0.0 is sent, which the client
interprets as "just use the IP of the lobby you're already connected to"
2013-03-17 23:35:12 +01:00
Daniel Gibson
6e6703b93f
Print net checksums as unsigned int
...
because it actually *is* unsigned and the negative values look strange
2013-03-17 23:35:12 +01:00
Daniel Gibson
e8c8a04c07
rewrote posix_net.cpp based on win_net.cpp
...
And suddenly hosting a server on linux works at least locally
(with client and server on the same machine).
Even though there are still strange bugs (massive lags in one
direction, doesn't work in LAN), at least it works at all now.
2013-03-17 23:33:39 +01:00
Daniel Gibson
5001b49841
try to fix console deadkey problem
2013-03-16 14:32:47 +01:00
Daniel Gibson
9aa63e4074
Some timer-related improvements for POSIX
...
* idSysSignal::Wait should now handle timeouts > 1s better (or at all)
* Use clock_gettime for Sys_Milliseconds()
* Use CLOCK_MONOTONIC_RAW (and CLOCK_MONOTONIC as fallback if
that's not available) for Sys_Milliseconds() and Sys_Microseconds()
CLOCK_MONOTONIC can behave strange when NTP is used
* Small fixes in Sys_Microseconds(): use 64bit int to store time
(like return type...), divide by 1000 (not 1000000) for nsec=>musec
2013-03-16 14:32:47 +01:00
Daniel Gibson
a203345897
Configurable username for Multi-Player (ui_name), com_pause no cheat
...
D3BFG gets the username from Steam, in the GPL release it just
uses the hostname.
Now it's possible to set a custom name with the ui_name CVAR
(like in classic doom3). If ui_name is empty ("") the hostname
is used.
The window losing focus in MP resulted in the console being spammed
with "changing com_pause not allowed in Multi Player" (or similar)
messages. Added CVAR_NOCHEAT flag to com_pause to get rid of that.
2013-03-16 14:32:47 +01:00
Daniel Gibson
4040a3a9ef
shut up compiler warnings
...
and a small comment
2013-03-16 14:32:47 +01:00
Yamagi Burmeister
a2dca39727
There's no libdl on FreeBSD
2013-03-16 14:32:47 +01:00
Yamagi Burmeister
63b1816be6
Add an explicit cast to shut up g++47 on FreeBSD
2013-03-16 14:32:47 +01:00
Yamagi Burmeister
649577e9be
Include stddef.h for ptrdiff_t on FreeBSD
2013-03-16 14:32:46 +01:00
Yamagi Burmeister
f51688a470
Add FreeBSD defines
2013-03-16 14:32:46 +01:00
Yamagi Burmeister
da31237ed0
Replace malloc.h by stdlib.h
...
On true unices malloc.h was never available and on Linux one should
include stdlib.h instead. While this change is necessary to build
rbdoom3 on FreeBSD and other true unices, the big question is what
it means to Windows.
2013-03-16 01:38:53 +01:00
Reto Schneider
f7b532df63
SDL_GetWindowDisplay got renamed to SDL_GetWindowDisplayIndex
...
SDL2 commit: http://hg.libsdl.org/SDL/rev/7174fb08017a
2013-02-05 07:07:49 +01:00
Daniel Gibson
deb41fb69f
Add classic com_showFPS mode
...
That only displays the fps.
It's com_showFPS 2
2013-01-20 15:58:32 +01:00
RobertBeckebans
592da5df54
Merge pull request #35 from DanielGibson/fix-relaunch
...
Implement Sys_ReLaunch() for Linux, refactor it
2013-01-20 02:12:01 -08:00
Daniel Gibson
b044526ddb
Implement Sys_ReLaunch() for Linux, refactor it
...
It now works on Linux so executing it doesn't freeze the game
like described in
https://github.com/RobertBeckebans/RBDOOM-3-BFG/issues/33
Furthermore, this function doesn't have any parameters anymore
(on any platform) because the only thing supplied was the original
program arguments +"+set com_skipIntroVideos 1" anyway - this is now
done in Sys_ReLaunch() (also on Windows).
Having the program arguments as one string is bad on Linux/POSIX
because there it's expected that the program arguments are one
C-string per argument.
2013-01-20 04:32:11 +01:00
Daniel Gibson
1d56411f56
Fix console-input in SDL1.2 for lots of unmapped keys
...
A lot of keys (especially keys not available on US keyboards) just weren't
supported for console input with SDL1.2 (SDL2 uses a different mechanism for
that).
This is fixed now by reordering a few lines in sdl_events.cpp
Please note that still only ASCII characters are supported and those keys
still can not be used in bindings - only for text input!
2013-01-20 04:16:19 +01:00
Robert Beckebans
c038a836f2
Merge branch 'master' into glew
2013-01-14 17:33:25 +01:00
Robert Beckebans
98093a4e8d
Added long neck GCC compiler workaround from dhewm3
2013-01-14 00:24:11 +01:00
Robert Beckebans
83b3439e87
Disabled unused OpenAL code requiring the AL_SOFT_buffer_samples extension
2013-01-08 18:08:24 +01:00
Daniel Gibson
155e5e589e
Also check for com_pause when USE_DOOMCLASSIC
...
oops, somehow forgot this one
2013-01-07 08:36:53 +01:00
Robert Beckebans
5234e4cd77
Cleaned up OpenAL code. Updated README.txt
2013-01-06 17:47:40 +01:00
Robert Beckebans
4884cc5793
Fixed OpenAL bug when deleting the OpenAL buffers that caused the game to hang.
2013-01-06 13:03:56 +01:00
Robert Beckebans
699e0e39f5
Fixed problems in the ADPCM decoder. Sound is working.
2013-01-05 19:00:22 +01:00
Robert Beckebans
27b83db50d
Added missing add_executable(RBDoom3BFG ...)
2013-01-05 17:17:13 +01:00
Robert Beckebans
5bef3a327f
Added MS ADPCM decoder from SDL2
2013-01-05 17:02:48 +01:00
Robert Beckebans
0b66e57359
Merge branch 'master' into openal
2013-01-05 11:50:21 +01:00
Robert Beckebans
64a2c6c39c
Merge remote-tracking branch 'DanielGibson/gcc-pch'
2013-01-05 11:36:03 +01:00
Robert Beckebans
0881085589
Merge remote-tracking branch 'DanielGibson/improve-window-handling'
2013-01-05 11:35:52 +01:00
Robert Beckebans
00a9c353f3
Defaulted OPENAL=ON for the openal branch
2013-01-05 00:14:55 +01:00
Robert Beckebans
b55d668c5c
Merge branch 'master' into openal
2013-01-05 00:13:51 +01:00
Robert Beckebans
a2fe079600
Changed OpenAL to use buffers instead of streaming
2013-01-05 00:13:35 +01:00
Robert Beckebans
0cf039bfdb
Changed project to use the DirectX10 SDK on Windows 8
2013-01-04 22:51:30 +01:00
Robert Beckebans
9ac405223b
Changed idSoundSample_OpenAL::MakeDefault() to generated a proper beep sound
2013-01-04 18:12:20 +01:00
Daniel Gibson
c58f0d4749
Precompiled Headers for GCC+Clang
2013-01-04 17:01:40 +01:00
Daniel Gibson
cf8d287a4e
Fix Sys_ListFiles() on POSIX once again
...
Turned out that as "extension" (which is really more like a pattern
that matches the whole file) was even used with patterns like "*.*"
so we do proper matching using fnmatch() now - which is even easier
than the old way.
Now deleting savegames on POSIX works.
2013-01-04 14:40:35 +01:00
Daniel Gibson
a405b37f13
Pause when window loses focus, introduce com_pause
...
If the window loses focus com_pause is set to 1, when it regains focus
it's set to 0.
The behaviour on Win32 stayed the same (the implementation is less
hacky though) and Linux now matchces that.
2013-01-04 14:40:35 +01:00
Daniel Gibson
732d8987d3
support ctrl-g for (un)grabbing mouse
...
Many Linux Games support that
2013-01-04 14:40:35 +01:00
Daniel Gibson
a1c1f1b6b2
Support resizing windows for SDL1.2
...
By implementing GLimp_SetScreenParms() for SDL1.2
and enhancing the event handling
2013-01-04 14:40:35 +01:00
Daniel Gibson
d6c32cd49b
Support resizing windows + improve fullscreen for SDL2
...
By implementing GLimp_SetScreenParms() and enhancing the
event handling
2013-01-04 14:40:35 +01:00
Daniel Gibson
19effdad2c
fix zlib include path in zip.h
2013-01-04 14:40:35 +01:00
Robert Beckebans
33774e2225
Added OpenAL support to Linux
2013-01-04 13:24:52 +01:00
Robert Beckebans
c47e78d6f3
Misc changes
2013-01-03 21:25:34 +01:00
Robert Beckebans
00a459c61b
OpenAL plays first scratchy sounds
2013-01-03 20:17:54 +01:00
Robert Beckebans
038037e524
Replaced most XAudio2 calls with OpenAL
2013-01-03 16:56:25 +01:00
Robert Beckebans
9a40f246b6
Copied neo/sound/XAudio2/XA2_* to neo/sound/OpenAL/AL_*
2013-01-02 21:45:47 +01:00
Robert Beckebans
946768ad9f
Moved minizip contrib code to libs/zlib/minizip/
2013-01-02 17:09:45 +01:00
Robert Beckebans
3830118767
Merge remote-tracking branch 'DanielGibson/update-zip'
2013-01-02 16:01:35 +01:00
Daniel Gibson
66ed216ad8
Update zip code to minizip 1.1
...
.. from zlib-1.2.7/contrib/minizip/
It resides next to the unzip code in framework/minizip/
This updates makes the code a bit cleaner and creating zip64
with the idZipBuilder is now more feasible and update to future
minizip versions should be easier as I didn't change the original
files from minizip 1.1 very much.
2013-01-02 05:29:56 +01:00
Daniel Gibson
ca112294b8
Update unzip code to minizip 1.1
...
.. from zlib-1.2.7/contrib/minizip/
The original source was minizip 0.15beta from 1998.
This update brings zip64 support (untested) and cleaner code.
Furthermore, updates to future minizip should be much easier now, as
my changes to the original source files from minizip are quite small.
To make diffing to upstream minizip-src easier, I added the minizip
source as exceptions in the astyle-scripts and left them in their own
directory.
Two custom functions from idSoftware - unzSetCurrentFileInfoPosition()
and unzGetCurrentFileInfoPosition() - aren't needed anymore as
minizip 1.1 has functions that do the same.
2013-01-02 05:29:56 +01:00
Daniel Gibson
634f7ea630
Update zlib to version 1.2.7
2013-01-02 05:29:56 +01:00
Daniel Gibson
a102d9d469
also do Sys_Sleep for less then 20ms
...
Sys_Sleep(10) is used quite often throughout the code.
2012-12-30 16:26:24 +01:00
Daniel Gibson
478d7e4f6e
Workaround for erebus1 crash in debug mode on Linux
2012-12-30 16:24:12 +01:00
Daniel Gibson
edb4856abd
Set timestamp for savegames on POSIX
...
So they can be sorted correctly etc
2012-12-29 05:29:56 +01:00
Daniel Gibson
1e3bc3429b
Fix Sys_ListFiles() on POSIX as needed for savegames
...
In Sys_ListFiles() the extension was abused to match whole
filenames (of savegames), not just their extensions - that
didn't work with the POSIX backend, now it does.
Sys_ListFiles() now also supports "*" as a wildcard that matches
all files - needed for deleting savegames.
However, things like "bl*" or "*ub" don't work.
While at it, I replaced readdir() with the thread-safe readdir_r()
2012-12-29 05:29:29 +01:00
Daniel Gibson
f77ca851d5
Small fix in Mem_Alloc16(): int->size_t
2012-12-29 04:27:01 +01:00
Robert Beckebans
e3584014b9
Fixed MSVC C++ exception warnings
2012-12-24 12:34:18 +01:00
Daniel Gibson
876aa96637
Fix messed up view angle after taking screenshots
...
Pretty much like https://github.com/dhewm/dhewm3/issues/18
but here it took some more changes
2012-12-23 06:43:20 +01:00
Daniel Gibson
7cfe7dd69a
Improve CMakeLists.txt
...
* manage warning flags in a variable, they're reused for
each profile anyway (but this way profile-specific flags can
still be added before or after the generic ones)
* added some disable-warning flags specifically for clang
2012-12-23 06:40:48 +01:00
Daniel Gibson
cca3053069
Prevent segfault on shutdown
...
This should also happen on Windows, I'm really surprised
this hasn't been noticed there
2012-12-23 06:40:48 +01:00
Daniel Gibson
ba126dde3a
Fixed various warnings from clang
2012-12-23 06:40:47 +01:00
Robert Beckebans
9280732913
Fixed Linux build.
2012-12-22 16:34:02 +01:00
Robert Beckebans
dd9b8a8710
Added support for precompiled headers for MSVC which reduced the compiled time from 4 minutes to 67 seconds.
2012-12-22 16:18:19 +01:00
Robert Beckebans
865ee792c0
Disabled usage of pthread_{get,set}_name because it does not work on all Linux systems.
2012-12-22 13:15:47 +01:00
Daniel Gibson
742ef7da83
Fix scrolling in Menus for SDL2
...
scrolling didn't stop, e.g. in the resolution selection menu
2012-12-22 03:26:01 +01:00
Daniel Gibson
f0dfe7e499
restore SDL1-support in sdl_events.cpp
...
* add define for SDL_SCANCODE_GRAVE - seems like only SDL2
has names for the values
* add some missing keys to SDL_KeyToDoom3Key
* add scancode to unmapped-key warning
* backspace needs to be handled the same for SDL1 as in SDL2
(i.e. a new event must be created for it) to work in console
2012-12-22 03:25:33 +01:00
Robert Beckebans
26d3ef7e54
Changed SAVE_PATH on Windows so we don't break the savegames of the original game.
2012-12-21 16:02:42 +01:00
Daniel Gibson
0be69a3162
Fix console on Linux
...
* Add support for Console-Key independently of KB Layout (with scancode)
* add support for TAB key
* Add hack so console is empty after opening it (SDL-only)
2012-12-21 04:58:50 +01:00
Daniel Gibson
ab86006668
Improve console behavior
...
* Pressing up and down again in the console will result in an empty line,
not the stay at the last line from history
* Pressing up will really show the last command, not the last-but-one
2012-12-21 04:58:50 +01:00
Robert Beckebans
731428164f
Fixed error: class idLocalUserWin has no member named StorageSizeAvailable
2012-12-20 02:38:01 +01:00
Robert Beckebans
6b918aef86
Disabled broken savegame and profile storage checks for the PC
2012-12-19 23:56:20 +01:00
Robert Beckebans
f57d92a1ab
Renamed RBDoom3 to RBDoom3BFG
2012-12-19 15:23:57 +01:00
Daniel Gibson
b1dabf3efd
Improve R_GetModeListForDisplay()
...
* Fixed small bug when only one display mode was found by SDL2
* removed some redundant and dead code
* improved warnings
2012-12-18 22:50:59 +01:00
Daniel Gibson
4863f11607
Fix bug in vidMode_t constructor
...
it caused the default/static video mode list to contain only garbage
2012-12-18 22:49:22 +01:00
Robert Beckebans
978044d491
Merge branch 'master' into glew
2012-12-18 11:36:38 +01:00
Daniel Gibson
f3c4948b2f
R_GetModeListForDisplay() for SDL2
2012-12-18 01:11:21 +01:00
Daniel Gibson
dd987814f7
Fix cursor in menus
...
it didn't work correctly because the mouse isn't grabbed
(in contrast to dhewm3).
It's fixed now by returning absolute coordinates when a menu
is open, furthermore the cursor is now always hidden.
2012-12-18 01:10:38 +01:00
Robert Beckebans
9c477c6bd9
Possible fix for the linker problems on Ubuntu 12.04 64 bit
2012-12-17 20:36:11 +01:00
Robert Beckebans
ff531907c7
Replaced QGL with GLEW.
2012-12-17 17:30:59 +01:00
Robert Beckebans
99166faf71
Fixed compile problems on Win64
2012-12-17 12:24:31 +01:00
Daniel Gibson
e42a886b29
remove deprecated glShadeModel stuff
...
it's only for fixed function opengl, thus it's not needed and deprecated in OpenGL 3.2
AMD's driver complains about this.
2012-12-17 01:02:53 +01:00
Daniel Gibson
ddaa0c8f70
Fix crash when loading mc_underground map
...
it was because in Window.cpp/h a lot of pointers were castet to ints..
if such abomination is done at least use intptr_t...
2012-12-17 00:54:48 +01:00
Robert Beckebans
63f9d4000f
First playable version on Linux.
2012-12-16 17:31:21 +01:00
Robert Beckebans
823ea36ffe
Added support for OpenGL 3.2 context debugging using SDL 2.0
2012-12-16 12:22:07 +01:00
Robert Beckebans
b7d3481f57
Fixed missing 16 byte alignment on 32 bit Linux for SSE structs.
2012-12-15 14:53:11 +01:00
Robert Beckebans
d7888cf99d
Added support for SDL 2.0
2012-12-14 19:03:30 +01:00
Robert Beckebans
202c54ffff
Fixed backslashes bug in idRenderProgManager::LoadGLSLShader()
2012-12-14 14:21:50 +01:00
Robert Beckebans
8c9a2d3e0b
Some changes to the filesystem to give local files a higher priority than resource files.
2012-12-14 14:20:04 +01:00
Robert Beckebans
8b8cfe7d25
Small changes to pthreads.
2012-12-14 13:10:52 +01:00
Robert Beckebans
776b1a2938
Merge remote-tracking branch 'DanielGibson/linux'
2012-12-14 12:06:40 +01:00
Robert Beckebans
3e533d1e29
Merge branch 'linux' of https://github.com/RobertBeckebans/RBDOOM-3-BFG into linux
2012-12-14 11:50:29 +01:00
Robert Beckebans
7b43a34f37
Changed idSysSignal pthread implementation to consider the manualReset parameter
2012-12-14 11:50:20 +01:00
Daniel Gibson
a5f5d75e82
Use -O0 for Debug builds, make sure that compiles
...
because of some GCC bug the included refactoring in
PacketProcessor.* was necessary
2012-12-14 00:52:31 +01:00
Daniel Gibson
67d6a5a1fa
Make sure SDL_Init() was called before SDL_VideoInfo()
...
by adding GLimp_PreInit()
2012-12-14 00:51:22 +01:00
Daniel Gibson
ebbb98c9bd
eliminate more longs
...
for 64bit compatibility.
2012-12-13 22:07:49 +01:00
Robert Beckebans
ca85c4d27b
Added changes to compile for Win64
2012-12-13 20:37:55 +01:00
Daniel Gibson
ee88148bd1
eliminate more longs
...
for 64bit compatibility.
2012-12-13 01:28:41 +01:00
Robert Beckebans
86deed26b8
Merged 64 bit fixes.
2012-12-12 12:11:55 +01:00
Robert Beckebans
2952f227ea
Merge remote-tracking branch 'DanielGibson/linux' into linux
2012-12-12 11:35:19 +01:00
Robert Beckebans
baac8780a5
Fixed some bugs in idSysSignal.
2012-12-12 11:29:55 +01:00
Robert Beckebans
47f3f1b999
Fixed bug in Sys_CPUCount()
2012-12-12 00:37:01 +01:00
Robert Beckebans
6c4590d8d4
Fixed stupid backslashes bug in idFileSystemLocal::CreateOSPath()
2012-12-12 00:36:07 +01:00
Daniel Gibson
9eeea7adf3
Fix tons of compiler warnings
...
mostly -Wreorder, use const char* instead of char* for "static strings",
fix inappropriate usage of NULL (e.g. instead of '\0' or (int)0)
2012-12-11 23:57:05 +01:00
Robert Beckebans
b848312904
Fixed missing SDL video initialization.
2012-12-11 23:49:41 +01:00
Robert Beckebans
99f144c32f
Added missing neo/sys/sdl/sdl_local.h
2012-12-11 23:23:17 +01:00
Robert Beckebans
a1730fa430
Supplemented Linux backend with missing functions. -> [100%] Built target RBDoom3 on Kubuntu 12.10
2012-12-11 23:17:23 +01:00
Robert Beckebans
f7279b850c
Disabled -Wall option
2012-12-09 02:10:01 +01:00
Robert Beckebans
6d70f04cc9
Ported the Win32 threads to POSIX pthreads.
2012-12-09 01:55:59 +01:00
Robert Beckebans
3b0dabe30a
Formatted code.
2012-12-08 18:20:13 +01:00
Robert Beckebans
8812f6f0a4
Merge branch 'linux' of https://github.com/RobertBeckebans/RBDOOM-3-BFG into linux
2012-12-07 21:25:01 +01:00
Robert Beckebans
bc6d7fbb8c
Fixed wrong assert
2012-12-07 21:24:45 +01:00
Robert Beckebans
3639ba0c7b
Everything compiles on Linux. Now we can fix the linker problems! :)
2012-12-07 18:29:47 +01:00
Robert Beckebans
948865123d
More Linux specific fixes, especially 64 bit
2012-12-07 17:06:44 +01:00
Robert Beckebans
55cc6b3946
Minifix for idCommonLocal
2012-12-07 00:23:27 +01:00
Robert Beckebans
1feaa335df
More compile fixes for Linux.
2012-12-07 00:09:53 +01:00
Robert Beckebans
9cc36a111e
More Linux specific fixes. idlib compiles on Kubuntu 12.10 64 bit
2012-12-06 21:31:33 +01:00
Robert Beckebans
37a6018233
Added some macro defines for Linux.
2012-12-06 01:00:05 +01:00
Robert Beckebans
afaf66ef40
Formatted code
2012-12-04 12:11:14 +01:00
Robert Beckebans
5e582222cf
Removed unused callstack traces API. All C++ files compile with MinGW.
2012-12-04 02:30:46 +01:00
Robert Beckebans
e0c79bd2d2
More work on MinGW support.
2012-12-03 23:55:27 +01:00
Robert Beckebans
180cb328a4
Added neo/cmake-eclipse-mingw-release.bat
2012-12-03 17:30:42 +01:00
Robert Beckebans
5e05fa58c3
Added Doom 3 GCC compile options.
2012-12-03 14:21:45 +01:00
Daniel Gibson
d949bc9410
Fix compiler warnings and errors in MinGW
...
many of the warnings -Wreorder and #includes with invalid path because of
case-errors (windows may not care, but linux does)
2012-12-03 09:29:14 +01:00
Daniel Gibson
948b3777eb
xinput.h for mingw
...
the one from the dx sdk is incompatible.. again..
2012-12-02 22:37:21 +01:00
Daniel Gibson
18139ebcc2
Remove unavailable includes
...
Why didn't MSVC complain about this?
2012-12-02 22:33:03 +01:00
Daniel Gibson
7cd400ad02
One more small change
...
.. before fighting with xinput
2012-12-02 16:20:23 +01:00
Daniel Gibson
e738de183b
Some more small changes for MinGW build
2012-12-02 06:00:08 +01:00
Daniel Gibson
25e9e8bf1d
Stubs for __asm in DXTEncoder.cpp to make it compile
...
TODO: needs implementation with intrinsics and/or plain C(++)!
2012-12-02 06:00:07 +01:00
Daniel Gibson
91301c893f
Stub away XAudio2 for non-MSVC builds
...
Getting it to work with MinGW seems impossible..
and on Linux/OSX it won't work anyway, so nevermind
2012-12-02 06:00:07 +01:00
Robert Beckebans
b6dd24ec4e
More MinGW specific compile fixes.
2012-12-02 06:00:07 +01:00
Robert Beckebans
536de6932a
Added missing #include <stdint.h> for uinptr_t with MinGW.
2012-12-02 06:00:06 +01:00
Robert Beckebans
f43305fe59
Added Eclipse CDT4 - MinGW Makefiles configuration.
2012-12-02 06:00:06 +01:00
Daniel Gibson
259f164d28
Make idlib build with MinGW
...
but it probably is buggy and still has a lot of warnings.
The rest still has errors, i.e. you can't build a doom executable with
MinGW yet
2012-12-02 06:00:05 +01:00
Daniel Gibson
a3f45c984c
Some headers needed for compilation with MinGW
...
* sal.h is missing in MinGW
* wine-dsound.h replaces the DirectX dsound.h which uses tons of
annotations that are incompatible with MinGW
2012-12-01 05:34:33 +01:00
Daniel Gibson
364a85fa5d
(more) GCC/MinGW support in CMakeLists.txt
2012-12-01 05:27:22 +01:00
Daniel Gibson
af67d970c5
Comment out two noisy assertions
...
they spam the console in debug builds (at least on my system)
2012-11-28 21:48:52 +01:00
Daniel Gibson
2c4db750b7
Compile VS runtime library statically
...
.. so MSVCP100D.dll (from VS runtime) or similar isn't needed to run
the binaries
2012-11-28 21:47:24 +01:00
Robert Beckebans
f55a763ca4
Formatted code using Artistic Style for better readability.
2012-11-28 16:47:07 +01:00
Robert Beckebans
d40e661b3e
Added Artistic Style 2.02.1 C++ beautifier.
2012-11-28 16:36:17 +01:00
Robert Beckebans
fb51d8ec80
Moved TiMidity to neo/libs/
2012-11-28 11:46:51 +01:00
Robert Beckebans
991c9992b6
Removed old obsolete VS 2010 project files.
2012-11-28 11:32:11 +01:00
Robert Beckebans
1c08bda8dd
Fixed compile and linker problems on Windows 7 with Visual C++ 2010 Express Edition
2012-11-28 11:27:27 +01:00
Robert Beckebans
ac30c96ccb
Added missing cmake/FindDirectX.cmake
2012-11-27 23:45:49 +01:00
Robert Beckebans
683861eb45
Added initial CMake configuration.
2012-11-27 23:23:32 +01:00
Robert Beckebans
c2f45c550c
Moved third-party libs to libs/
2012-11-27 21:26:06 +01:00
Robert Beckebans
59bea9900c
Added a few hacks to get it compiling on Windows 8 with VS 2012.
2012-11-27 15:21:05 +01:00
Brian Harris
5016f605b8
Initial commit
2012-11-26 12:58:24 -06:00