-
-
Notifications
You must be signed in to change notification settings - Fork 172
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
Theoretically better unlag based on bose position restoring #624
base: master
Are you sure you want to change the base?
Conversation
Also, don't forget to set up sv_bone_unlag 1 in game config. Interpolation is done at a4f4e34 |
rehlds/engine/sv_user.cpp
Outdated
frame = &_host_client->frames[SV_UPDATE_MASK & (_host_client->netchan.outgoing_sequence)]; | ||
|
||
// not a studio model | ||
if( g_psv.models[i]->type != mod_studio ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i
-> edict->v.modelindex
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oops. Thanks :)
@@ -1152,6 +1159,89 @@ entity_state_t *SV_FindEntInPack(int index, packet_entities_t *pack) | |||
return NULL; | |||
} | |||
|
|||
#ifdef REHLDS_FIXES | |||
void VectorsAngles( const vec3_t forward, const vec3_t right, const vec3_t up, vec3_t angles ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No need to include this under REHLDS_FIXES
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@In-line ok, will remove in next commit.
is this the same as how source handles it? if so, PLEASE DONT FUCKING TOUCH IT |
@di57inct I don't know how Source doing it. |
Sounds to me like that's it. |
@di57inct I hear only common words, without the details. Will the reasoning be better? Or just childish "it's cancerous"? |
I don't have the patience to argue or explain it to you. |
That's how it currently works (without this commit). |
Okay I sure hope so. Thanks for the info. |
Broken CS1.6 hitboxes? Of course not. It only makes them correct for small
time window when the animation switches.
2ReHLDS devs: I don't care about this patch anymore. Feel free to close it
or rework it without attribution.
пт, 5 февр. 2021 г., 19:26 Very Strange Karaulov <[email protected]>:
… This is not fix for bad hitboxes ?))
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#624 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAYQTALPOWKPP3QF4M3K2RDS5QLZ5ANCNFSM4FD3ARRA>
.
|
Is it still actual? It'll be cool to implement it, because there are issues with hitreg in fast-paced mods |
@SNMetamorph nah, not really. You can try reimplement it for Xash though. |
@a1batross hope this PR will be completed & merged |
No video with how to it works? No possibility to merge it?) |
43df0ba
to
de3679f
Compare
How it (should) work?
The main idea is to remember client's bone position on each frame. It's intended to help with situation where one player is updated in real-time, but lagging second player not yet got this updates. Unlag fixes it only for player position(i.e. working when player is running) and does not restores any other states.
Example:
Let's say we have a server with two players and they "see" each other at one frame lag.
Frame[0]:
Frame[1]:
Frame[2]:
Yes, this demonstrates only sequence changing(i.e. ducking) but due to unlag imperfection, there can be more real life examples.
P.S. I did not tested this at all as I don't have any server and players. :)
P. P. S. Originally I thought to make this for Xash3D, but it would be faster to check this concept on bigger community.