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

Don't special handle RF_FRAMELERP on the client. #352

Merged
merged 1 commit into from
Nov 2, 2023

Conversation

res2k
Copy link
Contributor

@res2k res2k commented Oct 31, 2023

Purpose of this flag is unknown. It doesn't seem to do anything useful. Effectively, it just disables entity origin interpolation in CL_AddPacketEntities(), and requires the renderer to do interpolation instead. Use of RF_FRAMELERP also requires old_origin to be always valid. While Q2PRO server guarantees this, other servers may not.

RF_FRAMELERP is actually harmful: because lerp_origin is stepped discretely, effects like particle trails look odd on RF_FRAMELERP entities. Also, since Q2PRO renderer only interpolates origin if RF_FRAMELERP is set, interpolation of linked entities with this flag cleared is broken.

Simply remove special handling of RF_FRAMELERP from client and renderer.

Fixes choppy enemy movement in GL renderer, introduced by 5e2a2d3.

Purpose of this flag is unknown. It doesn't seem to do anything
useful. Effectively, it just disables entity origin interpolation in
CL_AddPacketEntities(), and requires the renderer to do interpolation
instead. Use of RF_FRAMELERP also requires old_origin to be always
valid. While Q2PRO server guarantees this, other servers may not.

RF_FRAMELERP is actually harmful: because lerp_origin is stepped
discretely, effects like particle trails look odd on RF_FRAMELERP
entities. Also, since Q2PRO renderer only interpolates origin if
RF_FRAMELERP is set, interpolation of linked entities with this flag
cleared is broken.

Simply remove special handling of RF_FRAMELERP from client and renderer.
@res2k res2k marked this pull request as ready for review October 31, 2023 11:45
@apanteleev apanteleev merged commit a4d4855 into NVIDIA:master Nov 2, 2023
2 checks passed
@res2k res2k deleted the fix-framelerp branch November 20, 2023 23:45
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

Successfully merging this pull request may close these issues.

3 participants