Commit Graph

439 Commits

Author SHA1 Message Date
Alibek Omarov 88ce5fd0b6 engine: modify NetAPI to follow const qualifiers 2021-07-20 16:10:32 +03:00
Alibek Omarov 0efc5e82ec engine: fix some const qualifier lose and pointer-to-int casts 2021-07-20 16:03:06 +03:00
Nord1cWarr1or 8d793521c4
engine: keys: fix misleading comment
Update keys.c (#514)
2021-06-28 20:10:41 +03:00
Alibek Omarov #SupportRMS 79f3a6f60e
engine: sound: code style fix 2021-06-22 00:49:22 +03:00
SNMetamorph a2c83144c0 engine: sound: warn about late precached sounds in developer mode 2021-06-22 00:48:02 +03:00
SNMetamorph 6ceb101ba1 engine: client: correctly named values in net_speeds stats 2021-06-18 08:58:46 +03:00
SNMetamorph f7f069a38b engine: client: added Host_Error for CL_EDICT_NUM (hotfix for issue #434) 2021-06-18 08:58:46 +03:00
Alibek Omarov 32e96bdad1 engine: support legacy net protocol in demos 2021-06-08 01:04:18 +03:00
Alibek Omarov c50f73b892 engine: fix brush model sound spatialization 2021-06-07 22:54:41 +03:00
Alibek Omarov 9313f7e80e engine: replace pool pointer by pool handle 2021-06-07 02:33:15 +03:00
Alibek Omarov ad4062969b engine: client: fix warnings in cl_pmove 2021-06-07 02:22:08 +03:00
Alibek Omarov 60c10333aa engine: client: fix sound not spatialized correctly, remove unused field from rawchan 2021-06-07 02:21:46 +03:00
Alibek Omarov 0f84ce40f0 engine: client: fix cl_smoothtime, don't smooth movements when running local server(singleplayer, listenserve, etc) 2021-06-06 16:22:04 +03:00
Alibek Omarov 3894edcb98 engine: client: enhance cl_showevents for reverse-engineering needs 2021-06-06 16:22:04 +03:00
Alibek Omarov 5b387ba36a engine: client: move Cbuf_Execute out of Host_InputFrame, cbuf will be executed always at ClientBegin. Fixes #482 2021-06-06 16:22:04 +03:00
Velaron d011dccaab engine: client: remove redundant index check 2021-06-06 15:51:41 +03:00
Alibek Omarov 13a3f22001 engine: client: netgraph: add in_graph kbutton support, staticify netgraph 2021-06-01 17:57:03 +03:00
SNMetamorph 386ae2067b engine: client: another interpolation fix 2021-05-30 09:40:03 +03:00
SNMetamorph b289de26a6 engine: client: added cvar cl_nointerp for disabling interpolation 2021-05-30 09:40:03 +03:00
SNMetamorph 415f5baa1c engine: client: CL_LerpPoint hotfix 2021-05-30 09:40:03 +03:00
Velaron 4f31d7504a ref_api: fix remap info allocation (fixes #200) 2021-05-02 20:02:04 +03:00
Alibek Omarov ed0ca2b2d2 engine: fix predicting oldbuttons 2021-03-12 00:10:51 +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 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 4db2aaffc4 client: port fix of spk/speak commands from old engine 2021-03-09 23:34:12 +03:00
Alibek Omarov 155eb1ba58 engine: fix various warnings 2021-03-07 03:40:01 +03:00
Alibek Omarov 0a818f3f3f client: add waveplaylen console command like in GoldSrc 2021-03-07 02:51:03 +03:00
Alibek Omarov a813be7d54 client: add cl_showpos 2021-03-07 00:03:19 +03:00
Alibek Omarov e77957bc81 client: decrease visibility of some cvars 2021-03-06 23:40:04 +03:00
Alibek Omarov 58edfbc485 engine: move cvars that expected to exist by client.dll from render dll to engine
Fixes #316
2021-03-01 20:03:32 +03:00
Alibek Omarov cf5ebd128c client: fix XASH_64BIT check 2021-02-26 16:04:45 +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
SNMetamorph 8d50049db7 netgraph: fixed data usage graphs rendering 2021-02-20 14:22:20 +03:00
SNMetamorph cba9fb1a07 vid_common: added vid_mode cvar for proper working VideoModes menu in game settings 2021-02-20 14:22:20 +03:00
Alibek Omarov 8090db2e75 netgraph: change netgraph buffer size for low memory mode 2021-02-01 10:06:55 +03:00
Gleb Mazovetskiy c95e847890 Fix joystick trigger thresholds
They were negative by default but they should've been positive:

> a value ranging from -32768 to 32767. Triggers, however, range from 0 to 32767 (they never return a negative value).
https://wiki.libsdl.org/SDL_GameControllerGetAxis

This fixes LTRIGGER and RTRIGGER (L2/Zl and R2/Zr on most gamepads)
2021-01-07 17:37:37 +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 12b579bc34 Fix R_CollectRendererNames
Previously R_CollectRendererNames left gaps in the `ref` subarrays.
This caused `R_Init` to fail in some cases because it iterates between `0` and `ref.numRenderers`.
2021-01-07 17:34:34 +03:00
Gleb Mazovetskiy 6d614e028a Fix COM_LibraryError newline handling
1. Do not append a trailing newline to the result of COM_GetLibraryError.
2. Fix call sites.
2021-01-07 17:33:09 +03:00
Gleb Mazovetskiy a234888d44 Remove DEFAULT_(ACCELERATED|SOFTWARE)_RENDERER
This is no longer needed as we now use DEFAULT_RENDERERS order priority
and only try to load the detected renderers.
2021-01-07 17:31:56 +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 3af742f103 in_touch.c: Fix -Wpointer-to-int-cast 2021-01-02 18:01:53 +03:00
Alibek Omarov 766ef84af4 engine: ref: try to bruteforce all available renderers if we're failed to load requested one 2021-01-02 17:59:53 +03:00
Andrey Akhmichin 5aef09ce5d engine: client: simplified strings operations. 2020-12-29 01:07:00 +03:00
mittorn 7b127c23f5 client: fix vgui leaving text input move enabled (breaks CTRL in SDL2) 2020-12-13 10:11:32 +03:00
Alibek Omarov 80a5c53cb2 engine: client: move ref state updating into standalone function 2020-09-14 14:33:43 +03:00
Agent Agrimar e4a71afe63 engine: client: update the ref state before R_NewMap is called
This fixes fades that occur at the beginning of a map being a tad screwy as a result of the ref state not being updated with fresh values, which only happens when a frame is being rendered (loading happens to prevent that).
2020-09-14 14:33:18 +03:00
Logan 5cdb35f508 Pass cl.viewentity into S_StartSound for pfnPlaySoundByNameAtLocation
This fixes a minor bug where sounds played via pfnPlaySoundByNameAtLocation (mainly from viewmodel animations e.g. MP5) would be left where it was emitted in the world, rather than following the local player as it does in Goldsrc.
2020-09-11 22:10:32 +03:00
Velaron f3d8a2bcb0 client: vgui: don't fail if client path not given 2020-09-03 19:22:22 +03:00
Velaron 09ae961221 remove platform-specific macros 2020-08-24 21:22:02 +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
Alibek Omarov 0db1a7743d engine: try to fix -Wmaybe-uninitialized that may be enabled with -Wuninitialized. Diagnostic is prone to false-positives, as compiler don't have enough data for this 2020-05-12 02:00:34 +03:00
Alibek Omarov c39d42cc62 avi: replace longs by ints 2020-04-19 13:02:51 +03:00
Alibek Omarov 5d97a293fe menu_int: add DoubleTime extension 2020-03-04 07:23:38 +03:00
Alibek Omarov 3c8ce640c4 Merge neko/mathlib into master 2020-03-04 05:38:30 +03:00
mittorn 8f8c8e6614 ref: add export that returns GL_GetProcAddress for renderapi 2020-02-25 12:59:04 +07:00
Andrey Akhmichin e3b547c8a9 public: rename mathlib to xash3d_mathlib. 2020-02-12 14:32:26 +05: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 70cddcb9ca client: fix assert when sprite exist, but not loadable 2020-02-08 23:15:40 +07:00
mittorn 26a1ba543f client: add some useful keys to Key_ToUpper 2020-02-08 23:15:40 +07:00
mittorn 2e2a716710 ref_api: fix remap code 2020-01-30 07:15:23 +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
AimlessWanderer 40c73719c0 engine: remove useless defines 2020-01-12 03:56:53 +03:00
AimlessWanderer 022792709d engine: fix build 2020-01-12 03:56:53 +03:00
AimlessWanderer b9ec7ac886 engine: fix dedicated server crash 2020-01-12 03:56:53 +03:00
Alibek Omarov 5d8b770e6c engine: client: declare CL_Quit_f as noreturn 2019-12-24 02:57:08 +03:00
Alibek Omarov e11a08064d engine: fix implicit-fallthrough, uninitialized, enum-conversation compiler diagnostics 2019-12-23 06:48:17 +03:00
Alibek Omarov e424112020 engine: don't update screen when we're only in transition from STATE_RUNFRAME to something else 2019-12-23 06:32:39 +03:00
Alibek Omarov 4a56dfcd00 engine: fix extra zeros in %0 2019-12-23 06:29:20 +03:00
Alibek Omarov 154dd5c9ae engine: console: temporarily disable updating screen when something is printed to console, because it can mess up with textures 2019-12-03 02:17:12 +03:00
Alibek Omarov 612e7560ae engine: client: fix r_showtextures 2019-12-02 02:13:41 +03:00
Alibek Omarov c07109e69c engine: fix -Wincompatible-pointer-types, add it to Werror list 2019-11-28 19:18:50 +03:00
Alibek Omarov d0010cf9cb engine: don't call SCR_VidInit too soon 2019-11-28 17:43:06 +03:00
Alibek Omarov 0c3be639c5 engine: reliably tell client.dll about vid mode changes 2019-11-26 02:47:48 +03:00
Alibek Omarov 3a9801853d engine: client: detailed message if menu failed to load 2019-11-26 02:47:25 +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 7afee98f99 engine: ref: check if refdll was initialized before freeing texture 2019-11-17 18:05:05 +03:00
Alibek Omarov db39f0cc88 engine: client: combine loading or paused icon drawing 2019-11-08 01:28:01 +03:00
Alibek Omarov 3f48bce7da engine: client: fix #79 2019-11-08 01:09:55 +03:00
Andrey Akhmichin 0c34a5081c engine: client: make the code that generates screenshots and demos names simpler. 2019-11-07 23:12:34 +03:00
Alibek Omarov 62cdf2ae5b engine: input: hide SDL_ functions under XASH_SDL macro 2019-11-07 04:44: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 6953e829c4 lowmemory: prevent redefines 2019-11-04 22:34:08 +07:00
mittorn 0e7013eeb0 lowmemory: tune XASH_LOW_MEMORY=1 not breaking multiplayer 2019-11-04 19:58:45 +07:00
Alibek Omarov 2062e55c6a lowmemory: cut up netgraph buffers 2019-11-02 08:56:07 +03:00
Alibek Omarov aa6674b032 engine: support compiling with gcc3 2019-11-02 08:56:07 +03:00
Alibek Omarov 9d826016b0 engine: finish sdl1.2 port 2019-11-02 08:56:07 +03:00
Alibek Omarov 9e99a2bc37 engine: dirty sdl1.2 port 2019-11-02 08:56:07 +03:00
Alibek Omarov 0dd91ceda2 xash3d-fwgs: append missing new line at the end of file 2019-11-02 08:56:07 +03:00
mittorn d6f8112860 gameinfo: add MIN_EDICTS constant instead of magic number 600, low it to 64 2019-11-02 12:46:11 +07:00
mittorn 271d15f989 client: prevent precache overflow 2019-11-01 13:41:30 +07:00
mittorn 5e31e3fad0 keys: rotation support 2019-10-31 13:22:58 +07:00
mittorn 7f6395fa7d ref: display transformation API 2019-10-31 01:36:07 +07:00
mittorn 06cadacb59 lowmemory: cut resources array for legacy mode, only related to downloads 2019-10-29 11:32:32 +07:00
mittorn 57d48b64eb keys: add OSK 2019-10-28 12:28:52 +07:00
mittorn bb48e5209e console: fix wrong line width on start, remove some hard-coded sizes 2019-10-28 12:14:19 +07:00
mittorn 37cba10c14 lowmemory: fix sentences 2019-10-28 12:07:15 +07:00
Alibek Omarov 1decb1c7fb xash3d-fwgs: append missing new line at the end of file 2019-10-27 22:29:03 +03:00
mittorn 114a256675 Implement XASH_LOW_MEMORY, memory-reduced configuration 2019-10-26 07:06:26 +07:00
mittorn 2897e5f17e input: fix evdev macro 2019-10-26 06:53:24 +07:00
iZarif bf8b87c29d engine: client/common: fix a few more format warnings 2019-10-22 17:56:08 +03:00
mittorn 803c396fa2 platform: new fbdev bakend, move in_evdev to bakends 2019-10-22 01:42:02 +07:00
Alibek Omarov 78baf568ae engine: more double promotion fixes 2019-10-18 16:46:54 +03:00
Alibek Omarov c67f065d90 engine: client: explicitly cast literals to floats 2019-10-18 16:46:54 +03:00
Alibek Omarov 880dd2546f engine: client: fix wrong type in DSP 2019-10-18 08:11:05 +03:00
Alibek Omarov c2063c869d engine: client: fix demoplayback type from qboolean to int(can exceed false and true) 2019-10-18 08:04:00 +03:00
Alibek Omarov e0b8c338a8 engine: ref: more verbose refdll loading 2019-10-11 11:46:59 +03:00
Alibek Omarov fa622168a0 engine: fix style, disable XASH_USE_SELECT 2019-10-11 08:51:30 +03:00
Alibek Omarov eff814b148 engine: ref: remove redutant continue, return false in case of failed renderer initialization 2019-10-11 07:57:59 +03:00
Alibek Omarov 898b697b70 engine: ref: allow to set r_refdll or -ref with ref_ prefix 2019-10-11 05:36:17 +03:00
Alibek Omarov 6d8026cd81 engine: ref: fix spamming in console when getting human readable renderer names 2019-10-11 05:11:45 +03:00
Alibek Omarov ff1b28244b engine: client: port ui_renderworld from old engine 2019-10-11 04:12:52 +03:00
Wei Mingzhi 88772a1c34 engine: GetGameDir should return gamedir only. Add proper stub functions for some engine APIs. 2019-10-07 16:08:10 +03:00
Alibek Omarov d2a8cfe614 Revert "engine: client: implement connectionprogress partially"
This reverts commit cb417a3d51.

This commit breaks demo playback. Figure out why, then revert it back.
2019-10-06 07:45:32 +03:00
Alibek Omarov dc207a449c engine: fix -Werror=strict-prototypes 2019-10-05 02:09:45 +03:00
mittorn c0043a5467 touch: implement wheel 2019-09-28 19:35:30 +07:00
mittorn 7770b1a82b input: improve touch emulation 2019-09-28 19:33:57 +07:00
mittorn dba757f0c2 touch: fix wrong dx/dy sign 2019-09-27 02:25:38 +07:00
mittorn 7f3ee9ca71 input: merge touch support again. Fix m_ignore, fix EngineAppendMove 2019-09-27 02:19:03 +07:00
Alibek Omarov 13c1e807ad engine: s_mouth: fix another signed char 2019-09-25 04:10:47 +03:00
Alibek Omarov e8006c3253 engine: move ShellExecute to client, as it cannot be used in dedicated 2019-09-19 17:09:18 +03:00
Alibek Omarov 8323df240b engine: implement menu extensions to allow choosing renderers from GUI 2019-08-09 04:44:50 +03:00
Alibek Omarov a1ae770f70 engine: ref: add optional export to determine actual human readable renderer name 2019-08-09 03:39:24 +03:00
Alibek Omarov 8bb6aa2c51 engine: don't include windows headers, as they globally included by port.h already 2019-08-09 02:46:29 +03:00
Alibek Omarov cb417a3d51 engine: client: implement connectionprogress partially 2019-08-08 07:19:08 +03:00
Alibek Omarov 01dcb52b4c mainui: update submodule, add connectionprogress calls to engine 2019-08-08 07:18:02 +03:00
Alibek Omarov f9269dcc1c engine: ref: implement executing renderer config before creating context from engine and video config before loading refdll, update api, add r_refdll cvar to video.cfg 2019-07-28 00:23:22 +03:00
Alibek Omarov 8f9800eb3c ref: move R_DrawTree from refdll to engine, implement using ref's triapi 2019-07-27 13:27:40 +03:00
Alibek Omarov 938a9f372f engine: add stub function for new undocumented function in clientdll api 2019-07-26 14:51:21 +03:00
Alibek Omarov d9545e5e78 cl_game: fix missing } 2019-07-20 05:09:24 +03:00
Alibek Omarov 2f8fec6b70 Remove trailing spaces, convert mistakenly put spaces to tabs. The most useful commit ever. 2019-07-19 20:23:08 +03:00
Alibek Omarov 4beba75159 engine: fix various compiler warnings 2019-07-13 23:25:03 +03:00
Alibek Omarov 9662ab106f engine: client: implement errormsg, secure client by checking server IP address we're connected to 2019-07-13 20:54:16 +03:00
Alibek Omarov 04ee7c3a55 engine: fix build 2019-07-12 22:43:58 +03:00
Alibek Omarov a85a856215 engine: implement connection warning dialog showing up, update menu 2019-07-12 22:42:13 +03:00
Alibek Omarov 9e30fc253f engine: gameui: add new extended API and declare old engine menu extensions deprecated 2019-07-12 22:42:13 +03:00
Alibek Omarov b2895770b8 platform: remove unneeded argument from SNDDMA_Init 2019-07-12 22:42:13 +03:00
Alibek Omarov 3bf5f19446 keys: fix default binding of ESC button after unbindall command 2019-07-11 03:57:09 +03:00
Alibek Omarov 62fb743a20 engine: sound: clear leftovers from previous commit 2019-07-09 13:24:24 +03:00
Alibek Omarov 40211efa9a engine: sound: remove s_cull and s_phs, because they never worked. It's better to write our own occluder in future or use any opensource library 2019-07-09 13:17:10 +03:00
Alibek Omarov 3e4bd20919 engine: client: implement sending input devices list to server, using protinfo 2019-07-09 03:48:09 +03:00
Alibek Omarov 7d10660b87 engine: keys: give gamepad keys names 2019-07-09 03:48:09 +03:00
Alibek Omarov 6aa4765c3e engine: input: implement input devices collecting 2019-07-09 03:48:09 +03:00
Alibek Omarov fa68108907 engine: input: adapt gamepad code for new engine, remove gamepad ids, as it was never used and probably will never be, small optimizations 2019-07-09 03:48:09 +03:00
Alibek Omarov d347096396 engine: sound: allow cubic sound interpolation 2019-07-07 02:48:19 +03:00
Alibek Omarov 54920f13df engine: rename library naming function, as it returns a full path and not just library name 2019-07-07 02:47:45 +03:00