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

Support PowerPC 64 Little Endian #260

Merged
merged 1 commit into from
Jan 27, 2023
Merged

Support PowerPC 64 Little Endian #260

merged 1 commit into from
Jan 27, 2023

Conversation

runlevel5
Copy link
Contributor

Changes

  • Add default C flags for ppc64le
  • Add library and runtime output name for ppc64le

Screenshots

Screenshot from 2023-01-22 23-57-33

@apanteleev apanteleev merged commit f6ec0e4 into NVIDIA:master Jan 27, 2023
@runlevel5 runlevel5 deleted the ppc64le branch August 1, 2023 07:16
res2k pushed a commit to res2k/Q2RTX that referenced this pull request Sep 21, 2023
When GMF_CLIENTNUM feature was introduced, it was expected that client
POV number will only be set to valid client slot numbers in range [0,
255). Therefore, clientNum has been transmitted as a byte, with 255
(CLIENTNUM_NONE) reserved for a special case to indicate no current POV
number (this has always been buggy, see below).

However, one might want to set client POV to any entity >= 256, not just
client entitites (to view the game from monster POV, for example). Thus,
make clientNum strictly mean ‘number of POV entity minus 1’ and transmit
it as a short in range [-1, MAX_EDICTS - 1).

To accomodate older Q2PRO clients, reset clientNum to client slot number
and zero out POV entity modelindex if clientNum is >= 255.

clientNum == -1 is legal, and can happen e.g. when playing a MVD without
dummy MVD observer spawned. -1 maps to 255 (CLIENTNUM_NONE) upon reading
on older Q2PRO clients. This is buggy, as it will make entity 256
invisible, but there doesn't seem to be a proper fix. Mapping -1 to
client slot number will make random _player_ entity invisible instead,
which is worse. So don't change anything about -1.

For newer Q2PRO clients clientNum == -1 will be transmitted as literal
-1. This will map to entity 0 (world) and things will work as expected.

This was (and still is) a huge mess. Fixes NVIDIA#260.
res2k pushed a commit to res2k/Q2RTX that referenced this pull request Jan 21, 2024
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