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

Add "Use strong CRC for texture dump" option. #2820

Merged
merged 6 commits into from
Mar 24, 2024

Conversation

gonetz
Copy link
Owner

@gonetz gonetz commented Feb 25, 2024

Problem: RiceCRC fails to calculate different CRC for some textures, see #2806

Solution:
add new dump mode: "Use strong CRC for texture dump".
If some textures fail to dump with RiceCRC, texture artist should use alternative dump mode.
Texture format remains the same, only checksum in texture name is different.
During textures load, graphics plugin will first try to load HD texture as usual, with RiceCRC.
If load fails, the plugin calculates alternative CRC and tries to load HD texture with it.

When this option is on, textures dumped with alternative strong CRC.

Dumps with strong CRC are stored in "strong_crc" subfolder of dump folder.

Hires texture load is changed:
if HD texture with RiceCRC is not found, the plugin tries to load HD texture with alternative strong CRC.
@GhostlyDark
Copy link
Contributor

I am stumbling into crashing issues with these changes. Most easily reproducible is running GoldenEye with HD textures on and firing a gun. This does not happen with latest master it seems.

@gonetz
Copy link
Owner Author

gonetz commented Mar 10, 2024

I am stumbling into crashing issues with these changes. Most easily reproducible is running GoldenEye with HD textures on and firing a gun. This does not happen with latest master it seems.

I'll check it, thanks!

@gonetz
Copy link
Owner Author

gonetz commented Mar 17, 2024

I am stumbling into crashing issues with these changes. Most easily reproducible is running GoldenEye with HD textures on and firing a gun. This does not happen with latest master it seems.

I'll check it, thanks!

Fixed.

@gonetz gonetz merged commit ded38f8 into master Mar 24, 2024
20 checks passed
@gonetz gonetz deleted the 2806_strong_hd_texture_hash branch March 24, 2024 11:19
cheinr pushed a commit to cheinr/GLideN64 that referenced this pull request Sep 8, 2024
* [GLideNHQ] Add checksum64strong(...) function for strong checksum calculation.

* Add "Use strong CRC for texture dump" option.
When this option is on, textures dumped with alternative strong CRC.

Dumps with strong CRC are stored in "strong_crc" subfolder of dump folder.

Hires texture load is changed:
if HD texture with RiceCRC is not found, the plugin tries to load HD texture with alternative strong CRC.
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.

2 participants