Commit Graph

263 Commits

Author SHA1 Message Date
SNMetamorph
9bcd36cc24 engine: voice code minor refactoring 2022-08-18 04:46:11 +03:00
SNMetamorph
a254a342b1 engine: voice: minor code fixes 2022-08-18 04:46:11 +03:00
Velaron
2b9e050f57 engine: voice support 2022-08-18 04:46:11 +03:00
Alibek Omarov
7157c3b441 engine: platform: sdl: don't enable high dpi code for Apple
It seems enables HighDPI awareness but doesn't create HighDPI OpenGL context
It needs some plist magic to be enabled back again
2022-08-08 23:53:20 +03:00
SNMetamorph
a8674c18df engine: platform: win32: fixed build for Windows 2022-08-01 12:54:26 +03:00
Alibek Omarov
5e4fc64430 filesystem: introduce new module, based on engine filesystem.
The goal is to share filesystem code between engine and
utilities and provide C++ VFileSystem interface in the future
2022-07-28 18:56:02 +03:00
Alibek Omarov
5e1f189db3 engine: platform: posix: use RTLD_NOW instead of lazy.
It actually was a misconception coming from old engine fork
We want to track unresolved symbols before library could be loaded

Also, disable "symbol not found" spam in FunctionFromName. Due to how
savefile mangling convert works and compatibility with GoldSrc saves,
this function is used to bruteforce possible symbol names.
2022-07-13 19:26:38 +03:00
SNMetamorph
fbdfed84be engine: platform: sdl: fixed bug with unhidable mouse cursor in center of screen 2022-07-09 00:31:49 +03:00
Alibek Omarov
79dc090aae engine: platform: sdl: use SetClassLongPtr function to be compatible with 64-bit Windows API 2022-06-29 02:44:50 +03:00
Alibek Omarov
5285f51a26 engine: platform: sdl: fix loading ICO when it's in RoDir 2022-06-25 17:12:08 +03:00
Alibek Omarov
3e23634369 engine: platform: sdl: enable ICO support on Win64 2022-06-25 17:04:02 +03:00
Alibek Omarov
4e295622be Revert "engine: platform: sdl: try to enable ICO icons for 64-bit Windows, ignore TGA flip attribute for icons"
This reverts commit 2182ba9630.
2022-06-25 17:03:11 +03:00
Alibek Omarov
2182ba9630 engine: platform: sdl: try to enable ICO icons for 64-bit Windows, ignore TGA flip attribute for icons 2022-06-24 19:15:28 +03:00
Alibek Omarov
ac308f7298 engine: platform: sdl: fix SDL1.2 build 2022-06-13 04:27:54 +03:00
Velaron
437630d26d platform: win32: remove forgotten code 2022-06-10 23:25:43 +03:00
Bohdan Shulyar
341c9dae39 paltform: win32: fix typo >_< 2022-06-10 23:25:43 +03:00
Velaron
4c7bf1ff44 platform: win32: improve error reporting when loading DLLs and move custom DLL loader to a separate file 2022-06-10 23:25:43 +03:00
Alibek Omarov
bd1bfea695 engine: second iteration of IPv6 support
Made code smaller
Fixed problem where v6 and v4 socket can't use same port
Added support for v4-to-v6 mapped addresses, although it's kept unused
Probably final version
2022-06-09 03:10:02 +03:00
Alibek Omarov
13f93412cd engine: platform: sdl: forgot to add an include, sorry\! 2022-06-02 03:01:58 +03:00
Alibek Omarov
d1de9e2802 engine: platform: sdl: proper cursors allocation and free 2022-05-30 03:33:03 +03:00
SNMetamorph
641f0632ef engine: client: fixed compilation errors on Android 2022-05-02 03:29:24 +03:00
SNMetamorph
cfcd58dd78 engine: client: extended VGUI API interface 2022-05-02 03:29:24 +03:00
SNMetamorph
8044d23e7f engine: platform: sdl: fixed Key_Event callback when text input enabled 2022-05-02 03:29:24 +03:00
SNMetamorph
d3e213aa1b engine: platform: added Platform_GetKeyModifiers 2022-05-02 03:29:24 +03:00
SNMetamorph
26e09c240a engine: platform: added Platform_SetCursorType 2022-05-02 03:29:24 +03:00
SNMetamorph
15eb6808c4 engine: platform: updated clipboard read/write functions 2022-05-02 03:29:24 +03:00
Alibek Omarov
81c4acab66 platform: sdl: fix right mouse button issuing wrong key code 2022-04-10 19:40:11 +03:00
SNMetamorph
66dc20dc2d engine: platform: con_win: fixed console window visibility without developer mode (fix #818) 2022-04-08 14:18:38 +03:00
SNMetamorph
22815d2784 engine: server: sv_main: added status line for dedicated server console 2022-04-06 15:17:15 +03:00
SNMetamorph
95ee88720c engine: platform: win32: major refactoring of console code 2022-04-06 15:17:15 +03:00
Alibek Omarov
89baa633c8 engine: sdl: fix mouse activated when focus gained but not game is active 2022-01-28 01:20:14 +03:00
Alibek Omarov
abbd0f92a4 engine: input: fix incorrect client notifying about mouse button states 2022-01-13 15:52:59 +03:00
Alibek Omarov
a2f741fe8a engine: platform: sdl: try to fix 1.2 build 2022-01-04 08:39:11 +03:00
Alibek Omarov
d0a39ef492 engine: client: rework mouse input again, do what GoldSrc does, minimize SDL mouse calls 2022-01-04 08:39:11 +03:00
Alibek Omarov
284eeea3c3 engine: client: rework mouse input, use IN_MouseEvent for clientdll, don't emit mouse events when mouse is visible or touch emulate is used 2022-01-04 08:39:11 +03:00
Alibek Omarov
7cb06956c2 engine: platform: win32: fix compile 2021-12-28 00:16:06 +03:00
Alibek Omarov
ebfa8e6ffc engine: platform: android: fix compile 2021-12-27 03:19:50 +03:00
Alibek Omarov
4f89288ccf common: cleanup port.h 2021-12-23 19:17:11 +03:00
Alibek Omarov
25c0557f7f engine: platform: sdl: fix building with SDL1.2 2021-11-27 05:26:09 +03:00
Alibek Omarov
94dc74a37f engine: restrict potentially harmful engine commands 2021-11-23 05:23:38 +03:00
SNMetamorph
c366e25a10 ref_gl: cvar gl_wgl_msaa_samples renamed to gl_msaa_samples 2021-11-23 05:17:19 +03:00
Alibek Omarov
a0af256641 engine: library: fix saves on 64-bit Windows, compile custom loader only on x86 2021-06-27 00:03:39 +03:00
Alibek Omarov
f8e6033ae6 engine: move TIMER_LINUX to TIMER_POSIX, enabling dedicated builds for FreeBSD and other *nix platforms 2021-06-26 00:19:49 +03:00
Alibek Omarov
5bc4359a2f engine: implement platform neutral saves, now we can load saves made in Linux on Windows and vice-versa 2021-06-20 19:59:16 +03:00
Alibek Omarov
17d3eaa590 engine: win32: remove normal win32 library loader, from now on every win32 port must port custom loader 2021-06-20 19:59:16 +03:00
exstrim401
db3e71bfcc engine: Removed unused Haiku variables 2021-06-07 19:39:52 +03:00
exstrim401
2b436dced0 engine: Remove XASH3D_MIRRORDIR
also make XASH3D_GAME for all platforms
2021-06-07 19:39:52 +03:00
exstrim401
a89f9fa181 engine: Haiku BeGameLauncher support 2021-06-07 19:39:52 +03:00
Alibek Omarov
523798857b engine: platform: fix opensles audio 2021-03-10 13:45:02 +03:00
Alibek Omarov
2edc8b16ae engine: platform: fix sdl audio 2021-03-10 13:44:25 +03:00
Alibek Omarov
a93d9ac71c engine: platform: simplify sound code
Remove SNDDMA_GetSoundtime, because it was mostly copypasted from one
platform code to another.
SNDDMA_GetDMAPos gets removed too, as we have dma.samplepos for that.
2021-03-10 00:16:13 +03:00
Alibek Omarov
c68af64fe5 engine: platform: fix access to uninitialized audio subsystem when -nosound was passed 2021-03-10 00:03:12 +03:00
Alibek Omarov
3d9a4560d5 client: make sound cvars statically allocated, to avoid access to invalid pointers in the future 2021-03-09 23:59:29 +03:00
Alibek Omarov
ca84a1a10e engine: fix building with SDL older than 2.0.4 2021-03-01 21:48:31 +03:00
a1batross
3b192ca490 engine: sdl: don't free NULL vidmodes 2021-02-27 00:08:42 +03:00
SNMetamorph
56d5f08128 platform: win32: fixed crashes in COM_CheckLibraryDirectDependency 2021-02-26 16:05:34 +03:00
Ivan Avdeev
1b426b67e7 partially fix amd64 build on windows
Quality of this commit is questionable. I have no idea whether what I did
here makes sense or not.
But it compiles and runs (provided with hlsdk-xash3d amd64 build, which
is another story).

This omits necessary waf changes that are necessary to make a valid
64-bit build. Apparently it's not enough to just pass `-8` on Windows,
you also need to hack wscript to add `x64` target to MSVC. I'll do that
later when I figure out how.

This change is a precursor for RTX Vulkan effort --
VK_KHR_ray_tracing_pipeline and friends are only available on 64-bit
nvidia drivers (no idea about AMD, pls send GPUs onegai).
2021-02-26 16:04:45 +03:00
lewa_j
63c4b2748c platform: win32: sdl: Fix zombie processes after early Sys_Error on windows+sdl 2021-01-16 01:13:57 +03:00
Gleb Mazovetskiy
4daa7c23a0 SDL2 GameController: Map axes to engine explicitly 2021-01-07 17:37:37 +03:00
Gleb Mazovetskiy
3e8e751dc7 GameController: Add separate D-Pad bindings
1. Adds separate D-Pad bindings so that they don't conflict with arrow
   keys on the keyboard.
2. Also adds some basic defaults for gamepad buttons.
2021-01-07 17:37:37 +03:00
Gleb Mazovetskiy
5e0a0765ce Trim all trailing whitespace
The `.editorconfig` file in this repo is configured to trim all trailing
whitespace regardless of whether the line is modified.

Trims all trailing whitespace in the repository to make the codebase easier
to work with in editors that respect `.editorconfig`.

`git blame` becomes less useful on these lines but it already isn't very useful.

Commands:

```
find . -type f -name '*.h' -exec sed --in-place 's/[[:space:]]\+$//' {} \+
find . -type f -name '*.c' -exec sed --in-place 's/[[:space:]]\+$//' {} \+
```
2021-01-04 20:55:10 +03:00
Gleb Mazovetskiy
9452a389a5 SDL GameController: Hotplug and multiple gamepads
1. Process events from all game controllers.
2. Support controller hotplug.
2021-01-02 18:00:36 +03:00
Gleb Mazovetskiy
33ba1f25f3 sys_linux.c: Increase buffer size for /proc/self/status
Fixes #263
2021-01-02 04:21:01 +03:00
Gleb Mazovetskiy
5a36a26dd1 Fix SDL_GAMECONTROLLER handling
1. Do not disable SDL_JOYSTICK events. Disabling these events causes
   game controller events to be disabled as well. Instead, filter these events out.

2. Fix button mapping (it was off by one).
2020-12-28 16:11:19 +03:00
Velaron
03668116d7 platform: win32: COM_CheckLibraryDirectDependency fixes 2020-09-03 22:04:13 +03:00
Velaron
d015e97eae engine: client: m_rawinput support on windows 2020-08-24 21:22:02 +03:00
Velaron
b4aecfbf23 engine: move some input code 2020-08-24 21:22:02 +03:00
mittorn
e96271a8a9 platform/android: make host.state actual in Android_UpdateSurface call 2020-07-12 05:16:08 +07:00
mittorn
f0c9aa1585 vid_android: workaround small output buffer 2020-07-10 09:51:00 +07:00
mittorn
4515d3e3cb platform/android: implement native software blitter, fix lost context on resize, fix safegl 2020-07-08 08:48:46 +07:00
mittorn
bef873e1f8 platform/android: enable dynamic dladdr, fix build 2020-07-08 08:45:24 +07:00
mittorn
98ffbaf87a android: fix fallbacks 2020-07-07 00:22:01 +07:00
Alibek Omarov
82c54b1b54 engine: disallow zero-width strings for getenv() 2020-04-19 13:02:51 +03:00
Alibek Omarov
88ab42cc15 Merge branch 'master' of https://github.com/FWGS/xash3d-fwgs 2020-03-29 17:46:12 +03:00
Alibek Omarov
89ca0dec5e platform: android: slightly more verbosity 2020-03-29 17:44:23 +03:00
FOTMarut
79a7b7b1a3 engine: platform: sdl: Fix mousewheel in SDL2
- See issue 143
- Tested on SDL2
- Untested on SDL1.2
2020-03-29 11:27:08 +03:00
mittorn
84a3f6883d sdl: add EGL hint 2020-02-25 12:59:04 +07:00
mittorn
02c68c3a70 platform/sdl: add missing Platform_Shutdown 2020-02-08 23:48:52 +07:00
mittorn
a0d09c9954 lib_static: fix warnings 2020-02-08 23:39:35 +07:00
mittorn
70cc52e203 posix/sdl: fix build 2020-02-08 23:38:19 +07:00
mittorn
51849c6140 platform: DOS4GW port 2020-02-08 23:15:40 +07:00
mittorn
3e3aff040e platform: add Platfrom_Init, Platform_Shutdown, Platform_MouseMove move platform-specific code from host.c 2020-02-08 23:15:40 +07:00
mittorn
2b90790071 network: add stub for systems without BSD sockets, WATTCP support 2020-02-08 23:15:40 +07:00
mittorn
3a416636f1 engine: mark GAME_EXPORT's 2020-01-19 08:15:54 +07:00
mittorn
bbd033c254 lib: restore dll loader support 2020-01-19 07:38:37 +07:00
mittorn
22dc5b7416 Merge branch 'lib' of https://github.com/FWGS/xash3d-fwgs 2020-01-18 07:15:45 +07:00
Alibek Omarov
d0dbd185ad engine: android: fix enum-conversion 2019-12-23 06:55:00 +03:00
Alibek Omarov
8399107826 engine: platform: android: remake video backend to use EGL through Java code 2019-12-02 01:01:39 +03:00
Alibek Omarov
fec0a6baf6 engine: platform: android: change package name 2019-12-01 02:17:51 +03:00
Alibek Omarov
0c3be639c5 engine: reliably tell client.dll about vid mode changes 2019-11-26 02:47:48 +03:00
Alibek Omarov
9421457b3a engine: big refactoring commit, instead of using platform-specific platform-specific macros, use appropriate macros set by public/build.h 2019-11-24 03:52:08 +03:00
Alibek Omarov
744f75d4a3
engine: linux: simplify Platform_DoubleTime 2019-11-20 16:45:55 +03:00
mittorn
37435365e2 platform/posix: fix _GNU_SOURCE define in lib_posix 2019-11-18 23:48:49 +07:00
mittorn
94fc0febc7 fix some comments 2019-11-18 21:13:21 +07:00
mittorn
177f8ed653 platform: introduce lib backends, add static linking, wscript: add optional projects support, add static linking support, scripts: add xshlib for advanced linking options 2019-11-18 03:31:55 +07:00
Alibek Omarov
0636dc45bd engine: sdl: fix resizing event handling 2019-11-12 02:04:18 +03:00
Alibek Omarov
4b930c7854 Revert "engine: platform: magx: add pre-init platform-specific hook"
This reverts commit 2958b14cc2.
2019-11-07 05:06:24 +03:00
Alibek Omarov
0cb591821a Merge sdl12-port into master 2019-11-06 22:29:04 +03:00
Alibek Omarov
79adaa11e0 lowmemory: merge 2019-11-05 01:15:31 +03:00
mittorn
1365020302 ref: add enum for screen rotation 2019-11-04 20:27:46 +07:00