Alam Ed Arias
f5e1d9722f
Merge branch 'master' into next
2022-11-11 22:03:58 -05:00
Alam Ed Arias
4e1976839b
Cleanup whitespace changes from SRB2_release_2.1.25
2022-11-11 21:19:28 -05:00
Eidolon
12c2ddb115
Merge branch 'uncappedrevengeance' into next
...
Uncapped
See merge request STJr/SRB2!1856
# Conflicts:
# src/dummy/i_system.c
# src/win32/win_sys.c
2022-11-08 21:13:50 -06:00
Eidolon
90b4f8720e
cmake: Remove asset hashing, CMAKE_ASSETS_DIR
...
Simplifies build setup for cmake.
2022-11-05 23:56:43 -05:00
Eidolon
a015be2a54
cmake: Build all deps and static link
2022-11-05 00:12:09 -05:00
sphere
e08ebac5c8
Merge branch 'depth-buffer-24' into 'next'
...
Request 24-bit depth buffer from SDL
See merge request STJr/SRB2!1635
2022-09-30 14:01:33 +00:00
sphere
21808e883b
Merge branch 'better-wad-search' into 'next'
...
Clean up the WAD searching code a little.
See merge request STJr/SRB2!1678
2022-09-28 21:33:30 +00:00
Eidolon
69c5da2720
Merge branch 'next' into uncappedrevengeance
2022-07-15 00:14:27 -05:00
Eidolon
0e5b5bf5d9
cmake: Set plist properties for macOS bundle
...
yay icon
2022-07-14 23:57:53 -05:00
Eidolon
66ab96363c
cmake: Fix rpath issues in macOS bundle fixup
2022-07-14 23:32:34 -05:00
Eidolon
a3ffd04223
cmake: Adjust linkage for macOS
...
This properly links dylibs set during build instead of expecting
the libraries to be in the system path.
2022-07-14 18:37:17 -05:00
Eidolon
f0d7d8467f
Refactor timing code even more
...
System layer is greatly simplified and framecap
logic has been moved internally. I_Sleep now
takes a sleep duration and I_SleepDuration
generically implements a precise sleep with spin
loop.
2022-05-01 00:32:46 -05:00
Eidolon
e79654a33a
Completely refactor timing system
...
Time is now tracked internally in the game using I_GetPreciseTime
and I_UpdateTime. I_Time now pulls from this internal timer. The
system code no longer needs to keep track of time itself.
This significantly improves frame and tic timing in interp mode,
resulting in a much smoother image with essentially no judder at
any framerate.
2022-04-30 16:33:23 -05:00
Sally Coolatta
d2282c98cc
Precalculate refresh rate
...
Slower PCs can have issue querying mode over and over. This might kinda suck for windowed mode if you have different refresh rate displays but oh well
2022-04-27 21:47:19 -05:00
Sally Coolatta
a76968c6d9
Enable timescale outside of DEVELOP builds
...
It has NETVAR, so it should be fine -- put an end to useful debugging features excluded in multiplayer!
2022-04-27 18:37:45 -05:00
Sally Coolatta
bb6d4d10b5
Add timescale cvar
...
Slow the game down to debug animations / interpolation problems! Speed it up if you need to get somewhere quickly while mapping!
2022-04-27 18:37:45 -05:00
Sally Coolatta
c3340959de
Fix I_FrameCapSleep not respecting cpusleep
...
Jonathan Joestar bruh
2022-04-27 16:26:41 -05:00
Sally Coolatta
9b4e485686
Fix frame pacing when game lags behind
...
The frame timestamp should've been made at the start of the frame, not the end.
2022-04-27 16:06:03 -05:00
Sally Coolatta
80cb9994d5
Move I_FinishUpdate to D_SRB2Loop to sync screen updates with FPS cap, use timestamps in I_FrameCapSleep to simplify the code
2022-04-26 20:56:33 -05:00
Sally Coolatta
f482218913
I_GetFrameTime to try and improve frame pace
...
(It doesn't feel that much better though.)
2022-04-26 20:56:33 -05:00
Sally Coolatta
b18e53417a
Handle the sleep at the end of D_SRB2Loop instead of the start
...
Simplifies logic in the other parts of the loop, and fixes problems with it frequently waiting too long.
2022-04-26 20:56:33 -05:00
Sally Coolatta
685190fe40
Improve the framerate limiter's timing for extreme stable FPS
2022-04-26 20:56:32 -05:00
Sally Coolatta
c186d6402b
Lots of FPS stuff
...
- Disabled VSync, due to the numerous problems it has.
- Instead, added an FPS cap.
- Frame interpolation is now tied to fpscap != 35.
- By default, the FPS cap is set to the monitor's refresh rate.
- Rewrote the FPS counter.
(This also consolidates several more commits ahead of this
fixing various issues. -eid)
2022-04-26 20:56:32 -05:00
Sally Coolatta
41997c4549
Keep rect in memory
...
Feel better about this than creating one all da time
2022-04-26 20:56:32 -05:00
Sally Coolatta
40b021d6e4
Calculate FPS stuff even if frame is skipped
...
I decided ultimately to actually keep the frame skip optimization disabled, because I think it is actually a little bit helpful that you can still get accurate rendering perfstats while paused, however if we decide otherwise then we can have this optimization back without making the game act like it's lagging.
2022-04-26 20:56:32 -05:00
James R
1b49a96eed
Interpolate from time of previous tic
...
Previously interpolated from last 35th of a second, which
may be offset from game time due to connection lag.
Consider this the proper fix to 54148a0dd0 too.
2022-04-26 20:56:31 -05:00
Eidolon
b625076c87
Implement interpolation at the renderer level
...
Instead of interpolating thinkers, we interpolate mobjs inside the
renderer. Further interpolation is TBI.
2022-04-26 20:31:37 -05:00
spherallic
14295ac7de
2022
2022-03-03 20:24:46 +01:00
GoldenTails
c49dd5f535
Make dedicated servers not pop up that annoying SDL error window
...
So they don't mess with shell scripts that expect SRB2 to exit when it crashes (like most other programs)
2022-02-05 18:19:00 -06:00
sphere
0ca74432f9
Merge branch 'ogl-better-gpu-error' into 'next'
...
Improve OpenGL GDI Generic error message
See merge request STJr/SRB2!1673
2022-01-11 21:16:32 +00:00
MascaraSnake
5149699def
Update VS project files
2022-01-07 18:00:56 +01:00
GoldenTails
9282a18d82
oops forgot to remove the old hardcoded defines
2021-12-11 20:11:46 -06:00
GoldenTails
20987eba92
Use lookup tables, macros, and for loops to shorten up the wad search code.
...
The old inline mess needed to go badly.
2021-12-11 20:00:00 -06:00
Hannu Hanhi
f3c5addab7
Improve OpenGL GDI Generic error message
2021-12-07 22:35:04 +02:00
Hannu Hanhi
270c7701b4
Timestamp function for Lua
2021-11-08 01:17:30 +02:00
Hannu Hanhi
91aeba6c66
Request 24-bit depth buffer from SDL
...
Should fix problems caused by 16-bit depth buffer usage
2021-10-08 22:47:22 +03:00
SteelT
0f4074f22d
Remove unused I_GetMouseGrab function
2021-09-23 13:46:26 -04:00
James R
fec5f2778e
Fix compiler warnings
2021-09-12 19:03:39 -07:00
SteelT
e2ea480af9
Merge branch 'master' into next
2021-09-12 15:46:32 -04:00
LJ Sonic
9b7263855e
Prevent input.setMouseGrab from interfering with window focus
2021-08-18 20:58:13 +02:00
LJ Sonic
5bc0ce7a62
Give fields in event_t better names
2021-08-14 23:42:39 +02:00
LJ Sonic
38e82e55fc
Add a "repeated" field to event_t
2021-08-14 20:33:20 +02:00
SteelT
71f905f95b
Fix gme support being effectively disabled
...
I found this easier than trying to adjust the makefile, as it uses the same thing to automatically generate the various NO* compile options.
2021-07-16 15:26:09 -04:00
LJ Sonic
c319f46462
Merge branch 'hooklib-refactor' into 'next'
...
Hooklib refactor
See merge request STJr/SRB2!1307
2021-06-22 09:52:12 -04:00
James R
fa7a674113
Merge remote-tracking branch 'origin/master' into next
2021-06-19 19:39:15 -07:00
James R
c1aca51fc3
Fix basic warnings
2021-06-19 18:32:56 -07:00
LJ Sonic
e3a5da3f6f
Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2.git into HEAD
...
# Conflicts:
# src/lua_hook.h
# src/lua_hooklib.c
2021-06-19 20:49:12 +02:00
LJ Sonic
cfa48574be
Merge branch 'next' into 'lua-inputs'
...
# Conflicts:
# src/lua_script.c
2021-06-19 10:34:48 -04:00
James R
c325306ddf
Merge remote-tracking branch 'origin/master' into makefile-revision-final
2021-06-07 18:36:01 -07:00
James R
4d22b9f17f
Merge remote-tracking branch 'origin/next' into hooklib-refactor
2021-06-07 18:12:52 -07:00