]> git.rm.cloudns.org Git - xonotic/darkplaces.git/log
xonotic/darkplaces.git
3 years agocmake: Remove commented line
Cloudwalk [Tue, 14 Sep 2021 15:49:25 +0000 (11:49 -0400)]
cmake: Remove commented line

3 years agocmake: Initial working implementation of cmake build system
Cloudwalk [Tue, 14 Sep 2021 03:20:46 +0000 (23:20 -0400)]
cmake: Initial working implementation of cmake build system

This took way too long but I'm happy to be able to commit something
that at least builds the engine. It's a mess but I gotta start
somewhere. It is based on the build system of an old fork that I wrote
for "fun".

dpconfig.cmake is a special file you can drop into your project root
and it'll control the build configuration. I might look into a better
way of doing something like that.

I also added cmake-variants.json for vscode users and updated the
.gitignore appropriately.

3 years agocommon: Move com_game headers to new com_game.h
Cloudwalk [Sat, 31 Jul 2021 16:55:59 +0000 (12:55 -0400)]
common: Move com_game headers to new com_game.h

3 years agocommon: Move filematch headers to new filematch.h
Cloudwalk [Sat, 31 Jul 2021 16:45:42 +0000 (12:45 -0400)]
common: Move filematch headers to new filematch.h

3 years agocommon: Move infostring functions to new com_infostring.c
Cloudwalk [Sat, 31 Jul 2021 16:41:58 +0000 (12:41 -0400)]
common: Move infostring functions to new com_infostring.c

3 years agocommon: Update OpenBSD strlcpy and strlcat implementation
Cloudwalk [Sat, 31 Jul 2021 16:27:43 +0000 (12:27 -0400)]
common: Update OpenBSD strlcpy and strlcat implementation

3 years agovs2017: Fix indentation
Cloudwalk [Sat, 31 Jul 2021 16:45:53 +0000 (12:45 -0400)]
vs2017: Fix indentation

3 years agoqdefs: Define separate FLOAT_ and DOUBLE_ versions of lossless format and true for...
Cloudwalk [Fri, 30 Jul 2021 18:04:52 +0000 (14:04 -0400)]
qdefs: Define separate FLOAT_ and DOUBLE_ versions of lossless format and true for int. Define PRVM_ prefixed aliases for either

3 years agoprogs: Extend USEODE ifdef to cover defines too
Cloudwalk [Fri, 30 Jul 2021 17:56:47 +0000 (13:56 -0400)]
progs: Extend USEODE ifdef to cover defines too

3 years agoqdefs: Implement DP_FUNC_ALWAYSINLINE macro for platform-specific inline forcing
Cloudwalk [Fri, 30 Jul 2021 17:55:28 +0000 (13:55 -0400)]
qdefs: Implement DP_FUNC_ALWAYSINLINE macro for platform-specific inline forcing

3 years agomakefile: Delete references to nonexistent files
Cloudwalk [Fri, 30 Jul 2021 16:58:30 +0000 (12:58 -0400)]
makefile: Delete references to nonexistent files

3 years agokeysym2ucs: Delete. Was only used for the GLX client which no longer exists
Cloudwalk [Fri, 30 Jul 2021 16:51:57 +0000 (12:51 -0400)]
keysym2ucs: Delete. Was only used for the GLX client which no longer exists

3 years agosys_win: Delete sys_win and conproc. We no longer use these.
Cloudwalk [Fri, 30 Jul 2021 16:46:03 +0000 (12:46 -0400)]
sys_win: Delete sys_win and conproc. We no longer use these.

3 years agosys: Rename Sys_Print(f)ToTerminal to Sys_Print(f) for consistency
Cloudwalk [Fri, 30 Jul 2021 15:17:02 +0000 (11:17 -0400)]
sys: Rename Sys_Print(f)ToTerminal to Sys_Print(f) for consistency

3 years agosv_save: Call CL_Disconnect and ToggleMenu via hook
Cloudwalk [Thu, 22 Jul 2021 23:13:20 +0000 (19:13 -0400)]
sv_save: Call CL_Disconnect and ToggleMenu via hook

3 years agocl_main: Keep old CL_Disconnect for simplicity. Move guts to CL_DisconnectEx
Cloudwalk [Thu, 22 Jul 2021 23:04:06 +0000 (19:04 -0400)]
cl_main: Keep old CL_Disconnect for simplicity. Move guts to CL_DisconnectEx

3 years agocsqc: Implement builtin #177 "localsound"
Cloudwalk [Thu, 22 Jul 2021 22:25:49 +0000 (18:25 -0400)]
csqc: Implement builtin #177 "localsound"

3 years agolibcurl: Use the generic linked list
Cloudwalk [Thu, 22 Jul 2021 21:31:41 +0000 (17:31 -0400)]
libcurl: Use the generic linked list

3 years agozone: Use the generic linked list
Cloudwalk [Thu, 22 Jul 2021 18:19:57 +0000 (14:19 -0400)]
zone: Use the generic linked list

3 years agocl_main: Fix double free of meshentities texture pool when running gamedir
Cloudwalk [Thu, 22 Jul 2021 16:30:36 +0000 (12:30 -0400)]
cl_main: Fix double free of meshentities texture pool when running gamedir

Implemented start and shutdown routines for its render module

3 years agoMerge branch 'Mario/dpk_support' of gitlab.com:xonotic/darkplaces
Cloudwalk [Thu, 22 Jul 2021 01:47:14 +0000 (21:47 -0400)]
Merge branch 'Mario/dpk_support' of gitlab.com:xonotic/darkplaces

3 years agoprotocol/dp8: Implement parting messages
Cloudwalk [Thu, 22 Jul 2021 01:31:30 +0000 (21:31 -0400)]
protocol/dp8: Implement parting messages

* Extended CL_Disconnect and SV_DropClient for this purpose.
* Add a string parameter to svc_disconnect and clc_disconnect, which
  shall contain the parting message.

3 years agoprotocol: Stub DP8 protocol
Cloudwalk [Thu, 22 Jul 2021 01:22:37 +0000 (21:22 -0400)]
protocol: Stub DP8 protocol

3 years agovid_null: Fix compiler warning on Windows build
Cloudwalk [Wed, 21 Jul 2021 18:59:10 +0000 (14:59 -0400)]
vid_null: Fix compiler warning on Windows build

3 years agomakefile: Remove reference to vid_glx.c as we don't have this anymore
Cloudwalk [Wed, 21 Jul 2021 18:51:02 +0000 (14:51 -0400)]
makefile: Remove reference to vid_glx.c as we don't have this anymore

3 years agolhnet: Use the generic linked list
Cloudwalk [Wed, 21 Jul 2021 18:50:11 +0000 (14:50 -0400)]
lhnet: Use the generic linked list

3 years agomodel_shared: Avoid using R_FrameData_Alloc when building sorted surfaces list
Cloudwalk [Wed, 21 Jul 2021 18:49:35 +0000 (14:49 -0400)]
model_shared: Avoid using R_FrameData_Alloc when building sorted surfaces list

Works around an issue where the r_framedatasize cvar would grow to a
ridiculous size over time. To be investigated further...

3 years agocl_main: Destroy mesh entities on restart to fix memlist getting cluttered
Cloudwalk [Wed, 21 Jul 2021 18:44:16 +0000 (14:44 -0400)]
cl_main: Destroy mesh entities on restart to fix memlist getting cluttered

3 years agocom_list: Actually initialize a list to point to itself...
Cloudwalk [Wed, 21 Jul 2021 18:43:15 +0000 (14:43 -0400)]
com_list: Actually initialize a list to point to itself...

3 years agoode: Disable by default. Minor memory savings in all edict_ts
Cloudwalk [Wed, 21 Jul 2021 16:08:54 +0000 (12:08 -0400)]
ode: Disable by default. Minor memory savings in all edict_ts

3 years agoode: Add more #ifdefs to ensure ODE is fully disabled without -DUSEODE
Cloudwalk [Wed, 21 Jul 2021 22:14:01 +0000 (18:14 -0400)]
ode: Add more #ifdefs to ensure ODE is fully disabled without -DUSEODE

3 years agoedict: Move free and freetime into prvm_edict_t itself
Cloudwalk [Wed, 21 Jul 2021 19:57:40 +0000 (15:57 -0400)]
edict: Move free and freetime into prvm_edict_t itself

3 years agocommon: Use static_assert to prohibit unsafe functions more cleanly. Fixes compile...
Cloudwalk [Wed, 21 Jul 2021 15:49:53 +0000 (11:49 -0400)]
common: Use static_assert to prohibit unsafe functions more cleanly. Fixes compile warning with mingw builds

3 years agocommon: Define DP_STATIC_ASSERT which wraps static_assert
Cloudwalk [Tue, 20 Jul 2021 18:14:54 +0000 (14:14 -0400)]
common: Define DP_STATIC_ASSERT which wraps static_assert

3 years agozone: Pass __FILE__ and __LINE__ to Mem_strdup
Cloudwalk [Tue, 20 Jul 2021 18:10:02 +0000 (14:10 -0400)]
zone: Pass __FILE__ and __LINE__ to Mem_strdup

Made it a macro for _Mem_strdup which is what Mem_strdup was.
We have to call _Mem_Alloc directly to pass __FILE__ and __LINE__
to that function.

3 years agozone: Add Z_ counterparts for Realloc and strdup
Cloudwalk [Tue, 20 Jul 2021 18:05:36 +0000 (14:05 -0400)]
zone: Add Z_ counterparts for Realloc and strdup

3 years agozone: Do a straight malloc on non-Windows
Cloudwalk [Tue, 20 Jul 2021 18:03:39 +0000 (14:03 -0400)]
zone: Do a straight malloc on non-Windows

3 years agoqtypes: Define shorthand typenames for stdint types (i32, u32, etc). Remove the vec5...
Cloudwalk [Sun, 18 Jul 2021 03:36:55 +0000 (23:36 -0400)]
qtypes: Define shorthand typenames for stdint types (i32, u32, etc). Remove the vec5+ types as we have no use for those yet

3 years agocmd: Use a bitshift and subtract to calculate CF_MAXFLAGSVAL
Cloudwalk [Sun, 18 Jul 2021 03:34:20 +0000 (23:34 -0400)]
cmd: Use a bitshift and subtract to calculate CF_MAXFLAGSVAL

3 years agocom_list: Fix spacing. No code changes
Cloudwalk [Wed, 14 Jul 2021 15:08:26 +0000 (11:08 -0400)]
com_list: Fix spacing. No code changes

3 years agoFix file paths.
Rudolf Polzer [Thu, 8 Jul 2021 13:47:53 +0000 (06:47 -0700)]
Fix file paths.

3 years agoAlso actually include the .enc file for the key.
Rudolf Polzer [Thu, 8 Jul 2021 13:31:42 +0000 (06:31 -0700)]
Also actually include the .enc file for the key.

3 years agoNow with new Travis secret key.
Rudolf Polzer [Thu, 8 Jul 2021 12:48:56 +0000 (05:48 -0700)]
Now with new Travis secret key.

This breaks building on srv03 - was impossible to retain anyway due to travis-ci.com migration.

3 years agoRename host_t -> host_static_t.
Rudolf Polzer [Thu, 8 Jul 2021 12:09:01 +0000 (05:09 -0700)]
Rename host_t -> host_static_t.

Fixes build on OS X, as host_t is already a typedef for mach_port_t.

3 years agoTemporarily upload DarkPlaces autobuilds to both Xonotic build servers.
Rudolf Polzer [Thu, 8 Jul 2021 11:35:32 +0000 (04:35 -0700)]
Temporarily upload DarkPlaces autobuilds to both Xonotic build servers.

We are migrating from srv03 to srv04 and moving components one by one.

3 years agocvar: Rename Cvar_RegisterAlias to Cvar_RegisterVirtual
Cloudwalk [Mon, 5 Jul 2021 17:22:36 +0000 (13:22 -0400)]
cvar: Rename Cvar_RegisterAlias to Cvar_RegisterVirtual

They're now called "virtual cvars" to avoid confusion with actual
aliases. And it's just a better name for them.

3 years agoRemove redundant ampersand breaking ContainerOf and List_For_Each_Entry. Make all...
Cloudwalk [Sat, 3 Jul 2021 16:46:00 +0000 (12:46 -0400)]
Remove redundant ampersand breaking ContainerOf and List_For_Each_Entry. Make all current loops use List_For_Each_Entry instead

3 years agoAdd support for the .dpk package format used by Unvanquished Mario/dpk_support
Mario [Fri, 18 Jun 2021 15:20:49 +0000 (01:20 +1000)]
Add support for the .dpk package format used by Unvanquished

3 years agocom_list.h: Fix copy/paste oversight where List_For_Each_Entry went backwards like...
Cloudwalk [Tue, 8 Jun 2021 12:18:36 +0000 (08:18 -0400)]
com_list.h: Fix copy/paste oversight where List_For_Each_Entry went backwards like its Prev counterpart

3 years agoAdd .md extension to README so it actually parses the markdown
Cloudwalk [Sun, 30 May 2021 15:42:04 +0000 (11:42 -0400)]
Add .md extension to README so it actually parses the markdown

3 years agoAdd a proper README with build instructions and links to the available chats. To...
Cloudwalk [Sun, 30 May 2021 15:17:41 +0000 (11:17 -0400)]
Add a proper README with build instructions and links to the available chats. To be continued.

3 years agocvar: Don't memset cvar->aliases before it's even allocated
Cloudwalk [Sat, 29 May 2021 18:13:00 +0000 (14:13 -0400)]
cvar: Don't memset cvar->aliases before it's even allocated

3 years agocvar, prvm_cmds: Remove redundant Cmd_Exists checks
Cloudwalk [Tue, 25 May 2021 23:21:59 +0000 (19:21 -0400)]
cvar, prvm_cmds: Remove redundant Cmd_Exists checks

3 years agocvar: Rename aliasindex to aliases_size and only use it for size of the aliases array...
Cloudwalk [Tue, 25 May 2021 23:16:07 +0000 (19:16 -0400)]
cvar: Rename aliasindex to aliases_size and only use it for size of the aliases array. Simplify iterating over cvar aliases.

3 years agocvar: Remove unused ignore_callback variable
Cloudwalk [Tue, 25 May 2021 21:19:58 +0000 (17:19 -0400)]
cvar: Remove unused ignore_callback variable

3 years agoAdd/update license headers across various files
Cloudwalk [Tue, 25 May 2021 20:55:20 +0000 (16:55 -0400)]
Add/update license headers across various files

3 years agocurves.c and .h: Remove whitespace at the top of both files
Cloudwalk [Tue, 25 May 2021 20:15:41 +0000 (16:15 -0400)]
curves.c and .h: Remove whitespace at the top of both files

3 years agovpk: Include stdint.h only
Cloudwalk [Tue, 25 May 2021 20:15:04 +0000 (16:15 -0400)]
vpk: Include stdint.h only

3 years agoCREDITS: Add name
Cloudwalk [Tue, 25 May 2021 20:13:41 +0000 (16:13 -0400)]
CREDITS: Add name

3 years agoMerge intoverflow.h into qdefs.h
Cloudwalk [Tue, 25 May 2021 20:13:24 +0000 (16:13 -0400)]
Merge intoverflow.h into qdefs.h

3 years agocmd: Add comments to better explain the overly complicated cbuf system, to aid later...
Cloudwalk [Tue, 25 May 2021 03:21:50 +0000 (23:21 -0400)]
cmd: Add comments to better explain the overly complicated cbuf system, to aid later rewriting

3 years agoAdd the Visual Studio .vs folder to gitignore.
Ashley 'LadyHavoc' Hale [Mon, 24 May 2021 01:26:10 +0000 (18:26 -0700)]
Add the Visual Studio .vs folder to gitignore.

3 years agoAdd CREDITS.md. To be continued... (contact information, who did what, etc)
cloudwalk [Sun, 16 May 2021 18:23:53 +0000 (18:23 +0000)]
Add CREDITS.md. To be continued... (contact information, who did what, etc)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13142 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoclient: Add SV_Shutdown hook and remove all direct calls in non-server code. Lock...
cloudwalk [Fri, 14 May 2021 16:24:24 +0000 (16:24 +0000)]
client: Add SV_Shutdown hook and remove all direct calls in non-server code. Lock the server mutex within SV_Shutdown itself. Call the hook directly from CL_Disconnect.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13141 d7cf8633-e32d-0410-b094-e92efae38249

3 years agosv_main: Remove redundant client variable set from server code
cloudwalk [Fri, 14 May 2021 16:23:59 +0000 (16:23 +0000)]
sv_main: Remove redundant client variable set from server code

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13140 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_parse: Remove redundant disconnect print
cloudwalk [Fri, 14 May 2021 16:23:35 +0000 (16:23 +0000)]
cl_parse: Remove redundant disconnect print

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13139 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_parse: break on qw_svc_disconnect instead of return, consistent with regular svc_d...
cloudwalk [Fri, 14 May 2021 16:23:09 +0000 (16:23 +0000)]
cl_parse: break on qw_svc_disconnect instead of return, consistent with regular svc_disconnect

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13138 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_demo: Move demo playback functionality to a separate function
cloudwalk [Fri, 14 May 2021 16:22:44 +0000 (16:22 +0000)]
cl_demo: Move demo playback functionality to a separate function

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13137 d7cf8633-e32d-0410-b094-e92efae38249

3 years agosv_save: Remove SV_CanSave hook and just call it directly. Move it to sv_save.c
cloudwalk [Fri, 14 May 2021 16:22:19 +0000 (16:22 +0000)]
sv_save: Remove SV_CanSave hook and just call it directly. Move it to sv_save.c

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13136 d7cf8633-e32d-0410-b094-e92efae38249

3 years agohost: Clean it up. Give some functions new names and new homes.
cloudwalk [Fri, 14 May 2021 16:22:11 +0000 (16:22 +0000)]
host: Clean it up. Give some functions new names and new homes.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13135 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoUpdate a few cl_* cvar descriptions
cloudwalk [Mon, 10 May 2021 02:47:42 +0000 (02:47 +0000)]
Update a few cl_* cvar descriptions

(cherry picked from commit 90ac504e2287c6750d931ea1d741cca178759667)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13134 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix a possible divide by zero in Mod_PSKMODEL_Load.
havoc [Sun, 9 May 2021 20:21:47 +0000 (20:21 +0000)]
Fix a possible divide by zero in Mod_PSKMODEL_Load.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13133 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix some warnings in MSVC++2019. Add SDL2-nuget package as a dependency of the MSVC...
havoc [Sun, 9 May 2021 20:16:20 +0000 (20:16 +0000)]
Fix some warnings in MSVC++2019.  Add SDL2-nuget package as a dependency of the MSVC++2019 project.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13132 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoOptimize FS_FileExtension
cloudwalk [Sun, 9 May 2021 04:45:06 +0000 (04:45 +0000)]
Optimize FS_FileExtension

(cherry picked from commit f7c1ec5c94e7356ac7ab9061c3c1f6fac6010336)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13131 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRevert "gl_draw, model_shared: Refactor vertex adding. Add faster codepath that skips...
cloudwalk [Sun, 9 May 2021 04:45:05 +0000 (04:45 +0000)]
Revert "gl_draw, model_shared: Refactor vertex adding. Add faster codepath that skips hash function for drawing lines. Modest improvement in netgraph performance."

This reverts commit 5ad6c0e8577478422c10d7ae79fb61b88ac5ae85.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13130 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocmd: Merge cmd_client and cmd_server into cmd_local. Third time's a charm. 97/merge
cloudwalk [Tue, 20 Apr 2021 18:39:54 +0000 (18:39 +0000)]
cmd: Merge cmd_client and cmd_server into cmd_local. Third time's a charm.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13129 d7cf8633-e32d-0410-b094-e92efae38249

3 years agomenu: Partially implement MQC built-in #352 (registercommand). Not enabled yet due...
cloudwalk [Tue, 20 Apr 2021 13:24:11 +0000 (13:24 +0000)]
menu: Partially implement MQC built-in #352 (registercommand). Not enabled yet due to design considerations.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13128 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoprvm: Deduplicate console command handler
cloudwalk [Tue, 20 Apr 2021 13:24:10 +0000 (13:24 +0000)]
prvm: Deduplicate console command handler

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13127 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocmd: Use per-interpreter hooks to handle commands, to replace an ugly hack
cloudwalk [Tue, 20 Apr 2021 13:24:09 +0000 (13:24 +0000)]
cmd: Use per-interpreter hooks to handle commands, to replace an ugly hack

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13126 d7cf8633-e32d-0410-b094-e92efae38249

3 years agosys: Don't bother doing Host_Shutdown on Sys_Error
cloudwalk [Sat, 17 Apr 2021 17:12:48 +0000 (17:12 +0000)]
sys: Don't bother doing Host_Shutdown on Sys_Error

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13125 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_main: Slight refactor 14/merge
cloudwalk [Tue, 13 Apr 2021 16:31:44 +0000 (16:31 +0000)]
cl_main: Slight refactor

Authored by bones_was_here and Cloudwalk
https://gitlab.com/xonotic/darkplaces/-/merge_requests/116

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13124 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocom_list: Move all functions to the header and inline them. Include where needed
cloudwalk [Tue, 13 Apr 2021 16:31:41 +0000 (16:31 +0000)]
com_list: Move all functions to the header and inline them. Include where needed

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13123 d7cf8633-e32d-0410-b094-e92efae38249

3 years agohost: Move Host_GetConsoleCommands and rename it for consistency. Add comment
cloudwalk [Tue, 13 Apr 2021 16:31:41 +0000 (16:31 +0000)]
host: Move Host_GetConsoleCommands and rename it for consistency. Add comment

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13122 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocurl: Rename Curl_Run to Curl_Frame. Fix typo in comment
cloudwalk [Tue, 13 Apr 2021 16:31:40 +0000 (16:31 +0000)]
curl: Rename Curl_Run to Curl_Frame. Fix typo in comment

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13121 d7cf8633-e32d-0410-b094-e92efae38249

3 years agohost, netconn: Use cvar callbacks on (cl_)port to reduce branching in main loop
cloudwalk [Tue, 13 Apr 2021 16:31:40 +0000 (16:31 +0000)]
host, netconn: Use cvar callbacks on (cl_)port to reduce branching in main loop

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13120 d7cf8633-e32d-0410-b094-e92efae38249

3 years agohost: Refactor Host_Frame; simplify control flow.
cloudwalk [Tue, 13 Apr 2021 16:31:39 +0000 (16:31 +0000)]
host: Refactor Host_Frame; simplify control flow.

Authored by bones_was_here and Cloudwalk
https://gitlab.com/xonotic/darkplaces/-/merge_requests/116

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13119 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix a use of FALSE in some JPEG code.
divverent [Mon, 12 Apr 2021 13:00:54 +0000 (13:00 +0000)]
Fix a use of FALSE in some JPEG code.

Should fix build for OS X.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13118 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoimage: Sanitize paths on *all* images rather than images loaded from Q3 shaders
cloudwalk [Sun, 11 Apr 2021 19:23:23 +0000 (19:23 +0000)]
image: Sanitize paths on *all* images rather than images loaded from Q3 shaders

Implemented FS_SanitizePath. Perhaps expand on this? Not really a clean
way to do it that I can think of, but I can't see the harm in doing this
for all filepaths.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13117 d7cf8633-e32d-0410-b094-e92efae38249

3 years agohost: Make delta non-static in Host_Sleep
cloudwalk [Sun, 11 Apr 2021 16:46:15 +0000 (16:46 +0000)]
host: Make delta non-static in Host_Sleep

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13116 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_parse: Implement 7th mode for cl_nettimesyncboundmode; jitter compensated dynamic...
cloudwalk [Sun, 11 Apr 2021 16:46:15 +0000 (16:46 +0000)]
cl_parse: Implement 7th mode for cl_nettimesyncboundmode; jitter compensated dynamic adjustment rate

This mode aims to prevent network jitter or other disturbances from
significantly affecting the client's timekeeping,
by correcting gradually (max 10% of mean error per tic).

The rolling harmonic mean gives large time error outliers low significance.

Correction rate is dynamic, determined by mean error size.
Time is correct within a few tics of connect/map start despite no hard bounding.

The adjustment approach is from mode 5 and can achieve
microsecond accuracy if client frametime is a multiple of server frametime.

Prevents 0ms move frame times with uncapped fps.

Smoothest mode esp for vsynced clients on servers with aggressive inputtimeout.

Authored by bones_was_here
https://gitlab.com/xonotic/darkplaces/-/merge_requests/112

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13115 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_input: Don't floor cl.cmd.frametime to the nearest millisecond in CL_SendMove
cloudwalk [Sun, 11 Apr 2021 16:46:14 +0000 (16:46 +0000)]
cl_input: Don't floor cl.cmd.frametime to the nearest millisecond in CL_SendMove

Removes the requirement of integer millisecond client and server frame times (eg 125fps) to get the smoothest asynchronous movement.

Authored by bones_was_here
https://gitlab.com/xonotic/darkplaces/-/merge_requests/112

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13114 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoclient: Improve input packet timing (netfps)
cloudwalk [Sun, 11 Apr 2021 16:46:13 +0000 (16:46 +0000)]
client: Improve input packet timing (netfps)

Increase min netfps to 10 (matches min ticrate).

Skip packettime calculations for 0ms packets.

Cap netfps when ticrate stat is available:
soft limit 2x, hard limit < 4x server frame rate.

Set packettime to (largest multiple of realframetime) <= packettime.
Prevents packet rates lower than cl_netfps or server frame rate,
eg: cl_netfps 60 and cl_maxfps 250 would otherwise send only 50 netfps.

Allow for float error when deciding if it's time to send yet.

Accumulate realframetime instead of storing host.realtime.
Fixes low packet rates in some configurations,
eg: with cl_maxfps 125 and cl_netfps 125 it would not send every frame,
as host.realtime - lastpackettime was often well below (or above) 8ms.

Authored by bones_was_here
https://gitlab.com/xonotic/darkplaces/-/merge_requests/112

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13113 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_parse: Clarify a few cvar descriptions
cloudwalk [Sun, 11 Apr 2021 16:46:13 +0000 (16:46 +0000)]
cl_parse: Clarify a few cvar descriptions

Authored by bones_was_here
https://gitlab.com/xonotic/darkplaces/-/merge_requests/112

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13112 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_parse: Further optimize CL_NetworkTimeReceived
cloudwalk [Sun, 11 Apr 2021 16:46:12 +0000 (16:46 +0000)]
cl_parse: Further optimize CL_NetworkTimeReceived

Authored by bones_was_here
https://gitlab.com/xonotic/darkplaces/-/merge_requests/112

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13111 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_parse: Refactor cl_nettimesyncboundmode check into a switch block
cloudwalk [Sun, 11 Apr 2021 16:46:12 +0000 (16:46 +0000)]
cl_parse: Refactor cl_nettimesyncboundmode check into a switch block

Authored by bones_was_here
https://gitlab.com/xonotic/darkplaces/-/merge_requests/112

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13110 d7cf8633-e32d-0410-b094-e92efae38249

3 years agosv_main: Let the other players know if a connected player has timed out
cloudwalk [Sun, 11 Apr 2021 16:46:11 +0000 (16:46 +0000)]
sv_main: Let the other players know if a connected player has timed out

Authored by bones_was_here
https://gitlab.com/xonotic/darkplaces/-/merge_requests/114

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13109 d7cf8633-e32d-0410-b094-e92efae38249

3 years agorender: Refactor R_CullBox to simplify it. 114/merge
cloudwalk [Sun, 11 Apr 2021 15:18:38 +0000 (15:18 +0000)]
render: Refactor R_CullBox to simplify it.

Use bitwise comparisons instead of the previous switch. Skip the
nearclip plane on the view frustum.

From divVerent. Cleaned up further by Cloudwalk.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13108 d7cf8633-e32d-0410-b094-e92efae38249

3 years agosv_user: Check if frametime is positive
cloudwalk [Tue, 30 Mar 2021 16:19:13 +0000 (16:19 +0000)]
sv_user: Check if frametime is positive

From bones_was_here

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13107 d7cf8633-e32d-0410-b094-e92efae38249

3 years agosv_user: Don't bound moveframetime to a multiple of frametime when frametime is...
cloudwalk [Tue, 30 Mar 2021 16:11:38 +0000 (16:11 +0000)]
sv_user:  Don't bound moveframetime to a multiple of frametime when frametime is zero

Fixes https://gitlab.com/xonotic/darkplaces/-/issues/347

From bones_was_here

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13106 d7cf8633-e32d-0410-b094-e92efae38249

3 years agocl_screen: Finish frames even if we're minimized, if recording video
cloudwalk [Mon, 29 Mar 2021 21:17:42 +0000 (21:17 +0000)]
cl_screen: Finish frames even if we're minimized, if recording video

From malice

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@13105 d7cf8633-e32d-0410-b094-e92efae38249