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
Eidolon
66cc234be6
Fix precip crash from missing vars
2022-04-26 20:56:32 -05:00
Sally Coolatta
53c71d35bc
Adjust how FPS cap is checked to improve FPS stability
2022-04-26 20:56:32 -05:00
Sally Coolatta
6e5e74b25f
Allow FPS cap values
2022-04-26 20:56:32 -05:00
Eidolon
0e1b01f206
Update mobj oldstates before all thinkers
2022-04-26 20:56:32 -05:00
Eidolon
84f62f91f4
Fix renderdeltatics with new timing data
2022-04-26 20:56:32 -05:00
Eidolon
a56a57b3d1
Misc changes after Kart cherry-picks
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
James R
e6dff8eedc
Closer OpenGL underwater/heatwave effect to Software
2022-04-26 20:56:31 -05:00
James R
56c0c1f415
Do not speed up underwater/heatwave effect in OpenGL
2022-04-26 20:56:31 -05:00
Sally Coolatta
cd70b499bd
Fully fix drop shadows
...
It used the thing's floorz / ceilingz directly -- that wouldn't account for interpolated coordinates.
2022-04-26 20:56:31 -05:00
Sally Coolatta
e4930535f3
P_InitAngle, to fix angle interpolation on spawning objects
2022-04-26 20:56:31 -05:00
Sally Coolatta
8fb939df79
Add functions to handle interpolation
...
Much less code duplication
2022-04-26 20:56:31 -05:00
Eidolon
ca8698d13e
Interpolate HWR_DrawModel
2022-04-26 20:56:31 -05:00
Eidolon
ab7c2dfb3d
Interpolate mobj angles and player drawangle
2022-04-26 20:56:31 -05:00
Eidolon
5fda1b297f
Delete interpolators associated with thinkers
2022-04-26 20:56:31 -05:00
Eidolon
3e5cec7e72
Intialize interpolator list at a better time
2022-04-26 20:56:31 -05:00
Eidolon
2aa34f0273
Add Polyobj interpolator
2022-04-26 20:56:30 -05:00
Eidolon
330b34ee6b
Add SideScroll interpolator
2022-04-26 20:56:30 -05:00
Eidolon
ba110852a7
Add SectorScroll interpolator
2022-04-26 20:56:30 -05:00
Eidolon
9c8d0a3b6f
Add sector plane level interpolations
2022-04-26 20:56:30 -05:00
Eidolon
ac2510f284
Homogenize mobj interpolations
2022-04-26 20:56:27 -05:00
Eidolon
6dd27af26e
Run anti-lag chasecam at tic frequency
...
Fixes jittery and unstable chasecam in high latency netgames
2022-04-26 20:31:39 -05:00
Eidolon
8908dcccde
Only swap view interp state if a tick is run
2022-04-26 20:31:39 -05:00
Eidolon
f0279e69f2
Reset mobj interp state on TeleportMove
2022-04-26 20:31:39 -05:00
Eidolon
4c31902b98
Reset precip interpolation on snap to ceil
2022-04-26 20:31:39 -05:00
Eidolon
f2a881f385
Add reset interpolation state functions
2022-04-26 20:31:39 -05:00
Eidolon
4ee6027180
Remove unnecessary precipmobj thinker hack
2022-04-26 20:31:39 -05:00
Eidolon
d34ec2ef06
Reset view interpolation on level load
2022-04-26 20:31:38 -05:00
Eidolon
7c9e133eb4
Fix misc dropshadow issues
2022-04-26 20:31:38 -05:00
Eidolon
996f35b592
Always have precise_t defined
2022-04-26 20:31:38 -05:00
Eidolon
bc9251e13b
Ensure + commands get executed before map start
2022-04-26 20:31:38 -05:00
Eidolon
88207e18f9
Ensure viewsector is accurate to viewx/viewy
...
This fixes a potential crash in OpenGL when changing between levels.
2022-04-26 20:31:38 -05:00
Eidolon
056abd0461
Add smooth rendering to Record/NiGHTS Attack, F_SkyScroll
2022-04-26 20:31:38 -05:00
Eidolon
c330c05718
Add smooth rendering to save select screen
2022-04-26 20:31:38 -05:00
Eidolon
61efef2fa9
Add smooth level platter under interpolation, renderdeltatics
...
`renderdeltatics` can be used as a standard delta time in any place,
allowing for smooth menus. It will always be equal to `realtics`
when frame interpolation is turned off, producing consistent
framerate behavior everywhere it is used.
2022-04-26 20:31:38 -05:00
Eidolon
722b04518d
Place Frame Interpolation in "Experimental" video options header
...
This seems like an appropriate way to describe the feature for now.
2022-04-26 20:31:38 -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
sphere
d9799540c6
Merge branch 'ogl-model-blend-flags-fix' into 'next'
...
Fix frame blend flags not working with 3D models
See merge request STJr/SRB2!1778
2022-04-09 14:39:59 +00:00
Jaime Ita Passos
3581d06012
Fix frame blend flags not working with 3D models
2022-04-08 16:01:41 -03:00
Lach
b1c0dd43cd
Merge branch 'fix-paper-roll' into 'next'
...
Fix papersprites being rotated incorrectly in Software when viewing them on the flipped side
See merge request STJr/SRB2!1770
2022-03-28 09:45:55 +00:00
Sally Coolatta
8c62a0d640
Fix papersprites being rotated incorrectly in Software when viewing them on the flipped side
2022-03-22 05:53:21 -04:00
sphere
55854410ac
Merge branch 'line-angle' into 'next'
...
Add angle field to linedef_t
See merge request STJr/SRB2!1602
2022-03-22 09:09:40 +00:00
sphere
563ae7f7ac
Merge branch 'hangster-fix' into 'next'
...
Prevent Hangsters from sliding across the ceiling
Closes #787
See merge request STJr/SRB2!1766
2022-03-22 08:58:46 +00:00
sphere
2b9af0ff24
Merge branch 'unsteal-ideya-spheres' into 'next'
...
Fix Ideya Capture sometimes stealing extra spheres
See merge request STJr/SRB2!1768
2022-03-21 22:53:06 +00:00
sphere
a0aebb2ed0
Merge branch 'fast-r-load-textures' into 'next'
...
Do not reload every texture when adding a wad
See merge request STJr/SRB2!1725
2022-03-21 22:41:04 +00:00