Subversion Repositories eduke32

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
8716 589d 16h terminx /source/duke3d/src/network.cpp Move FPS limiter to engine and rework functionality (again)  
8582 628d 10h hendricks266 /source/duke3d/src/network.cpp Maphacks: Add mdpos[xyz]off tokens and md[xyz]off synonyms mdpiv[xyz]off

Backported from NBlood.
 
8176 733d 17h terminx /source/duke3d/src/network.cpp These changes are on top of the enet.h from the previous commit and are what I needed to build under MSYS2 without warnings or errors  
8175 733d 17h terminx /source/duke3d/src/network.cpp Swap out our old deprecated version of ENet for a single-file header-based fork, including features like IPv6 support  
8140 733d 17h terminx /source/duke3d/src/network.cpp G_HandleAsync() -> gameHandleEvents()  
8139 733d 17h terminx /source/duke3d/src/network.cpp Partial timer cleanup

After this revision, the only place timerUpdate() is called is from within handleevents(). S_Cleanup(), MUSIC_Update(), and G_HandleSpecialKeys() are now called from a timer callback set with timerSetCallback(). This more or less deprecates the usage of faketimerhandler() in EDuke32 and Mapster32, but other games still rely on the functionality.
 
8050 787d 3h pogokeen /source/duke3d/src/network.cpp Change some clocks to support sub-tick precision using a new class, ClockTicks.
Using that higher precision, interpolate at a higher granularity.
Further, truncate the target interpolation time to vertical blank boundaries to avoid producing temporal artifacts.
Fix issues caused by interpolation calculations being handled differently in multiple places (and fix cases where smoothratios were being thrown away only to be redone without checking all proper conditions).
Ensure ClockTicks changes do not break other targets (EKenBuild, VoidSW), but note any interpolation there is not similarly updated.
 
7775 837d 16h terminx /source/duke3d/src/network.cpp Rename stupid structure member I probably named when I was high  
7730 849d 22h pogokeen /source/duke3d/src/network.cpp Fix latency issue introduced by G_FPSLimit() handling of videoNextPage() that was causing frames to be delayed presentation until after the next frame is prepared.
videoNextPage() is now called immediately after preparing the frame for drawing, outside of G_FPSLimit() but on the condition that its return value is true.
 
7705 850d 5h terminx /source/duke3d/src/network.cpp Added Xfree() function to accompany the Xmalloc() family of functions and change all uses of Bfree() to Xfree()

This was necessary because everything is already allocated with the Xmalloc() functions, but a future commit will make blocks allocated with those functions no longer compatible with the system implementation of free(), which Bfree() wraps.
 
7676 887d 13h terminx /source/duke3d/src/network.cpp Move S_Update() out of game loop and into Net_GetPackets()

This improves, but doesn't fix, the issue with sound popping when the player angle changes.
 
7673 887d 13h terminx /source/duke3d/src/network.cpp Convert loops using unsigned integers as iterators to use regular signed ints instead

https://kristerw.blogspot.com/2016/02/how-undefined-signed-overflow-enables.html

Doing this as cleanly as possible involved demoting several function parameters concerning object sizes and counts from size_t to int--I'm fine with this change as the functions in question are not actually capable of handling input with sizes larger than what can be stored in a signed 32-bit integer, making the use of size_t here misleading at best.
 
7443 946d 14h hendricks266 /source/duke3d/src/network.cpp Rename net.* to network.*  
7359 966d 8h hendricks266 /source/duke3d/src/network.cpp Add buildvfs, abstraction layer for file I/O.

Currently it passes calls through to the system libraries as before.

Also adds an incomplete implementation on PhysFS.
 
7354 967d 10h hendricks266 /source/duke3d/src/network.cpp Clean up unused warnings  
7353 967d 10h hendricks266 /source/duke3d/src/network.cpp Fix net.cpp compilation failure under clang  
7302 1014d 17h terminx /source/duke3d/src/network.cpp Fix buffer overrun  
7296 1040d 17h terminx /source/duke3d/src/network.cpp MSVC build fix  
7295 1041d 18h terminx /source/duke3d/src/network.cpp Fix NETCODE_DISABLED builds. We should probably rename Net_GetPackets() to something else, because it does other required things.  
7288 1042d 15h terminx /source/duke3d/src/network.cpp This should fix the too many sprites spawned issue in single player  

Show All