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

Quake 64 hirestextures don't show up after using gliden64 cache extract and cygwin #2821

Open
Knight09able opened this issue Feb 26, 2024 · 1 comment

Comments

@Knight09able
Copy link

I'm having trouble getting gliden64 to read an extracted htc file of Quake 64

I'm using Project 64 Dev-4.0.0.5752

I extract the htc file in order to have a folder of png files. I use cygwin along with the gliden64 cache extract. The issue I'm having is gliden64 is able to load the png files for hirestextures, but it won't read them once I play the game. I just have the original graphics. There is actually an htc cache file in the folder once everything has loaded up, but it just shows the original graphics, regardless of what's in the cache, and hirestextures folders. The paths are all correct also.

Use file storage instead of memory cache doesn't work

Both compress, and uncompress texture cache doesn't work either

None of the settings work.

For cygwin I use the following steps

WINDOWS
Install Cygwin with the following packages (including all of their dependencies):
gcc-core
git
ImageMagick
make
pkg-config

CYGWIN
Run Cygwin

Clone gliden64-cache-extract from GitHub using the following command:
git clone https://github.com/ecsv/gliden64-cache-extract.git

This will create:
/home/[USER]/gliden64-cache-extract

Compile the gliden64-cache-extract by using the following command:
make

This will create:
gliden64_cache_extract.exe

Copy gliden64_cache_extract.exe to /bin by using the following command:
cp gliden64_cache_extract.exe /bin/gliden64_cache_extract.exe

Change gliden64_cache_extract.exe permissions to make it executable by using the following command:
chmod +x /bin/gliden64_cache_extract.exe

Change directory back to /home/[USER] by using the following command:
cd ..

Create a new directory called textures by using the following command:
mkdir textures

Change directory to textures by using the following command:
cd textures

WINDOWS
Place *_HIRESTEXTURES.htc in C:\cygwin\home[USER]\textures

CYGWIN

Extract Quake_HIRESTEXTURES.htc by using the following command:
zcat "Quake_HIRESTEXTURES.htc" | gliden64_cache_extract -b -p "Quake" | tar x

This will extract the .bmp texture files.

Convert the extracted .bmp texture files to .png by using the following command:
for i in *.bmp; do convert -strip -define png:format=png32 -define png:compression-level=9 "${i}" "${i%.bmp}.png"; done

Remove the .bmp files by using the following command:
rm *.bmp

Create a new directory called QUAKE by using the following command:
mkdir "QUAKE"

Move the .png files to QUAKE directory by using the following command:
mv *.png "QUAKE"

Here are what my png files look like after using cygwin, and gliden64 cache extract

Message to github 4

I put the folder of png files into the hirestextures folder in project64

Gliden64 is able to load the textures, but is not able to show them in the game. It's just the original graphics that show up.

Message to github 1

Am I using the wrong version of project64? I have Project64 Dev-4.0.0.5752 Or did I extract the htc file wrong, by not having the right commands on cygwin.

If I didn't follow any of the steps properly, please let me know.

Any help is greatly appreciated.

Thanks.

@GhostlyDark
Copy link
Contributor

This is because of #2640. The old cache format lacks the texture format and size information (everything being #3#0 is not correct), which is now crucial for loading the textures. You have the option to use an older or modified build to work around this:
https://github.com/GhostlyDark/GLideN64/tree/emg_ocf

The only real solution to fix the file names involves dumping the textures to create a renaming script or something similar.

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

2 participants