marco-calautti / Rainbow

A texture format converter for different consoles' graphics formats.
GNU General Public License v2.0
81 stars 8 forks source link

SEGA Heroes textures #16

Open Brian151 opened 4 years ago

Brian151 commented 4 years ago

With the game closing down, it's been decided by some to officially make a mad dash to rip EVERYTHING

amy-samples.zip

These files are supposedly DDS using Ericsson Texture Compression, but thus far, there's been no luck reading them. It is also possible that these files contain multiple textures.

Noesis "reads" them as white rectangles, but there is NO way that is accurate... even a quick glance in tiledGGD shows a 'corrupted' image of Amy Rose from the provided files.

I even tried the ARM Malia app to read the ETC textures, no luck whatsoever...

So, here's an opportunity for you to implement support if interested

marco-calautti commented 4 years ago

There is actually a tool that "supports" that format. You can find it here. It supports DDS as containers with compressed textures like ETC1 and ETC2, and is able to convert these textures to png. The only problem is that it assumes a fourCC for the compression format different than ETC1, and then it does not open the DDS you attached directly. However, with a simple modification to the source code, I was able to convert these DDS to png (they are the same image, but each of decreased resolution): test test2 test3

I made a fork of detex, with the changes applied. The only catch I only built it for Linux, as I don't have a build tool-chain on Windows at the moment, so you might need to compile the tool on your own. It should be easy to run make detex-convert on the Windows Subsystem for Linux (WSL), after installing a compiler with apt-get install build-essentials

marco-calautti commented 4 years ago

I just compiled some binaries for windows. You can find them here Simply rename your files to .dds and run from a command line: detex-convert.exe <your-texture.dds> <converted-texture.png>

To convert a png back to dds with ETC1 you can use rwgtex. You can find binaries in the win32 folder of the repository here Just run: rwgtex.exe <you file.png> -o <target-file.dds> -etc1 I don't know if the dds file you get will work in the game.

Note: you might want to set the option generatemipmaps=no in the .ini file of rwgtex to avoid including also the mipmaps in the resulting dds, since the originals don't have them.

marco-calautti commented 4 years ago

It seems that each file you sent me actually contains two dds files in it. So, you better separate them first, and then convert them back and forth. It seems the second DDS is a mask: mask

You should now have enough information to manage the images of this game as you prefer.

Brian151 commented 4 years ago

the mask thing does make perfect sense. that's what i figured was going on decreasing resolution makes the task more tolerable. i somewhat doubt anyone would complain skipping smaller versions, which i might do

well, thanks [also, while typing this, was informed some of the people working on this project don't have 64-bit machines... if making a 32-bit build is not too much of a hassle?]

i figured some tool did exist, because the very few threads with information on breaking the archive container did indeed have some example textures, but there was a lack of information on how that happened, and i don't have accounts on several places, unlike some...lol

marco-calautti commented 4 years ago

Here it is https://github.com/marco-calautti/detex/releases/download/v0.1/detex-convert-win32-bin.zip.

You keep mentioning other people interested. Who are these guys?

Brian151 commented 4 years ago

oh, just some folks from VGR/TSR, if you know which site that is?