Commit graph

397 commits

Author SHA1 Message Date
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
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
a7c6f4973b Fixed warnings with Clang 3.6 2015-05-01 14:57:31 +02: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
06d0434f32 Improved modding support and loading of custom models/anims 2015-02-25 15:45:16 +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