cbhacks / CrashEdit

Unofficial Crash Bandicoot 1/2/3 Level Editor
https://www.cbhacks.com/tools/crashedit/
Other
135 stars 27 forks source link

8-bit and 4-bit indexed texture viewing tabs #95

Closed ManDude closed 4 years ago

ManDude commented 8 years ago

Kind of like PVV does:

warenhuis commented 8 years ago

Are you guys sure that the BGR555 option gives the right colors for the 8- and 4-bit textures? I reversed-engineered a CLUT-line for the '?' Box in chunk Cr10T, and can not find the right 'CLUT' line in the chunk.

ughman commented 8 years ago

Are you guys sure that the BGR555 option gives the right colors for the 8- and 4-bit textures?

I'm not really sure of that, no. The only reason I "know" the colors are "right" is because they do appear correct for the 16-bit universal logo from crash 2's title screen 3C.NSF.

warenhuis commented 8 years ago

Ok, it is right, I found the line for the '?' Box with the help of PVV and it matched the lines in the BGR555 option, but it was in an unexpected order. Now I will try to rethink how the CLUT-id's are ordered, because my own line was in a chronological order (of the data, 0 to 15) which did not work. clut

ManDude commented 8 years ago

They're not ordered in any specific way, so you'll just have to try out everything.

ughman commented 8 years ago

According to this page http://problemkaputt.de/psx-spx.htm#gpurenderingattributes the CLUT attribute for the GPU textured poly commands has the low 6 bits as the X coordinate, and the next 9 bits as the Y coordinate (plus one bit unused). The key is the X coordinate is in 16-texel (32-byte) units, so cluts are always 16-texel aligned.

Not sure if that's what you're talking about, though. Just trying to help.

warenhuis commented 8 years ago

I was trying to find out how the 16-bit pixels inside a CLUT line were ordered. Sorry if I was ambigious on that (I found out now, so no problem). I do have some comments on textures however, these attribute settings sound familiar with what I found in the textureinfo of the models in CB2.

But I figured that one doesn't actually need the GPU if all we want is the colors, as all required references are inside the same texture chunk (the one exception is when a 8-bit texture is specified in section '4' (each chunk has 4 sections, 4 is the rightmost one) with relative UV-offsets that are bigger than 128, in which case the selectionregion shifts to the next chunk in VRAM), but for now I'm going to assume that such a specification never occurs in the texinfo.

The GPU will become important when we need all the different colormodes.

Thanks for the help though.