Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jittery Movement #18

Open
snekyo opened this issue Mar 20, 2024 · 8 comments
Open

Jittery Movement #18

snekyo opened this issue Mar 20, 2024 · 8 comments

Comments

@snekyo
Copy link

snekyo commented Mar 20, 2024

The player's movement is jittery.
I also experience a bunch of screen tearing, even though I have the "sync every frame" option on. This may be an unrelated bug.

@rohit-n
Copy link
Owner

rohit-n commented Mar 21, 2024

What platform are you running on? Can you go to the console and try to set cl_maxfps to a lower value, like 10?

@snekyo
Copy link
Author

snekyo commented Mar 22, 2024

I'm using Windows 10, and vsync should be on. I'll try and run it on Steam to see the fps counter.

@snekyo
Copy link
Author

snekyo commented Mar 22, 2024

Huh, even with "sync every frame" on, which I'm guessing is vsync, I'm getting around 600 fps. I have a 60 Hz monitor.
I'm still having the jittery movement too, while I'm getting this high amount of fps.

@WulfBloodfang
Copy link

Just for your own reference in figuring out what's going on;

I had the same issue at default FPS of 60.
144 Hz monitor.
Windows 11.
Steam copy of SiN Gold.

Turned on vsync, or "sync every frame" which I assume is vsync, and the issue was fixed. Mostly.
When moving from one large area to another the issue will crop up again. Like, in empty, connecting hallways. Take from that what you will.

@snekyo
Copy link
Author

snekyo commented Jul 9, 2024

Just for your own reference in figuring out what's going on;

I had the same issue at default FPS of 60. 144 Hz monitor. Windows 11. Steam copy of SiN Gold.

Turned on vsync, or "sync every frame" which I assume is vsync, and the issue was fixed. Mostly. When moving from one large area to another the issue will crop up again. Like, in empty, connecting hallways. Take from that what you will.

Hey, were you using an AMD card? The issue is completely gone for me, now that I got an NVIDIA card.

@Grunerd
Copy link

Grunerd commented Aug 27, 2024

It appears to be an issue with Id Tech 2's 10hz tickrate and client-side prediction. When cl_predict is set to 0, this jitter goes away, but due to the nature of a hard-coded tickrate, movement feels delayed and simply wrong.

To read more into this issue: skullernet/q2pro#177

Basically, we'd need to adjust the gamex.dll and ideally implement fps-based tickrates or at least add options for 60, 120, 144 etc.

I experience this with my RX6900XT (Windows 10, i7 7700k, 16gb RAM).

Manually capping FPS (cl_maxfps) or enforcing vsync through the driver has no impact.

@rohit-n
Copy link
Owner

rohit-n commented Aug 27, 2024

Thanks @Grunerd ! I had no idea the issue was in the game library. I'll try to fix this when I have some free time.

@Calinou
Copy link

Calinou commented Nov 8, 2024

Basically, we'd need to adjust the gamex.dll and ideally implement fps-based tickrates or at least add options for 60, 120, 144 etc.

Knowing how Quake engines handle tick rate and FPS limiting, I expect the code not to deal well with tickrates that are not integer values in milliseconds per tick (1000/tickrate). You'd probably want the tickrate to be a multiplier of the base tickrate as well for better consistency with the original gameplay, although this is not a strict requirement.

In practice, this means the viable tickrate values would be 20, 40, 50, 100 and 125. (Values above 125 will likely be too demanding, as the only values usable above that are 250, 500 and 1000.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants