Commit graph

575 commits

Author SHA1 Message Date
Robert Beckebans
edd5ccb9b9 Prepaired SWF images export 2015-10-12 12:34:52 +02:00
Robert Beckebans
54b2753025 SWF export empty .swf 2015-10-12 12:34:52 +02:00
Robert Beckebans
b952f3c594 SWF export 2015-10-12 12:34:51 +02:00
Robert Beckebans
9c58fdf6f9 Added swf_exportAtlas 2015-10-12 12:33:32 +02:00
Robert Beckebans
4502588338 Improved XSWF output 2015-10-12 12:33:31 +02:00
Robert Beckebans
d4a53e6b49 Fixed crash 2015-10-12 12:33:31 +02:00
Robert Beckebans
15fe2a2ae6 Added swf_skip* cvars 2015-10-12 12:33:30 +02:00
Robert Beckebans
ebd9df1202 Extended Shape-Command exports 2015-10-12 12:33:30 +02:00
Robert Beckebans
83c76f576d XML Flash bugfixes 2015-10-12 12:32:49 +02:00
Robert Beckebans
e4c0d05b7e XML Flash almost done 2015-10-12 12:32:49 +02:00
Robert Beckebans
87283f7a70 XML Flash part 2 2015-10-12 12:32:48 +02:00
Robert Beckebans
f7fbfa09f6 XML Flash part 1 2015-10-12 12:32:48 +02:00
y2keeth
f572b942f3 fs_resourceLoadPriority defaulted to 0 2015-10-09 09:56:36 -04:00
y2keeth
c4e4ff207f Increase vertex memory for custom model content 2015-10-09 09:50:57 -04:00
y2keeth
7a2f275c17 Enables muzzle flashes 2015-10-09 09:45:45 -04:00
Daniel Gibson
0fbf83fa49 Implemented Sys_[SG]etClipboardData() for SDL backend
SDL2 only, SDL1.2 doesn't have functions to handle the clipboard
2015-08-02 19:23:26 +02:00
Daniel Gibson
255d135a6c Fix crash when running dmap on existing map
Loading the collision model from binary can fail, but this wasn't
checked, so idCollisionModelManagerLocal::models[i] could contain NULL
which causes crashes later.
2015-08-01 05:18:12 +02:00
Robert Beckebans
6f3fe59b68 Merge branch 'master' into gamma-correction 2015-07-22 12:32:23 +02:00
Robert Beckebans
af2c6b4326 Merge branch 'master' of github.com:RobertBeckebans/RBDOOM-3-BFG 2015-07-11 12:16:04 +02:00
Robert Beckebans
02f6328a0d Set USE_INTRINSICS for MSVC 2015-07-11 12:15:59 +02:00
Tobias Frost
bbb41c7781 Do not force USE_INTRINISCS to be set via source-code 2015-07-11 10:33:04 +02:00
Robert Beckebans
223548d148 astyled pull requests 2015-06-24 11:28:31 +02:00
Robert Beckebans
4fa4537978 Use SSE2 intrinsics on x86 2015-06-24 11:27:54 +02:00
Robert Beckebans
9d4c468f08 Merge pull request #228 from coldtobi/master
rbdoom3: Option to set CPU_ID and to specify CPU Features to be used.
2015-06-24 11:14:30 +02:00
Robert Beckebans
8a8deb63fd Merge pull request #231 from coldtobi/use_cmake_dl_libs
Do use CMAKE_DL_LIBS to determine the linkerflags needed to link against libdl
2015-06-24 11:12:30 +02:00
Robert Beckebans
edc3dfb55a Merge pull request #229 from coldtobi/precompiled-headers-configureable
Make use of precompiled header configureable
2015-06-24 11:10:58 +02:00
Pete Lewis
87c08c30cb Use the default audio device in Win8/XAudio2 2015-06-23 11:56:27 -07:00
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