10-09-2019, 06:47 AM
I'm using this page as a source for how BRRES shaders work, and I think I have the major parts down, but I'm running into some things that don't make sense and would basically like a second opinion.
[attachment=10031]
This is a standard shader that I can translate into Blender as "simple material with single texture (maybe with an alpha texture)". It interpolates from zero (black) to the texture colour based on the lighting ("raster") colour. But if that's correct, I can't understand how this could be:
[attachment=10032]
This is a three-part shader: part one is a base colour, part two is a scrolling glow, and part three layers the two based on a mask. There are several things I don't get:
I have further confusions but will wait to see if they happen to get solved by an answer first.
[attachment=10031]
This is a standard shader that I can translate into Blender as "simple material with single texture (maybe with an alpha texture)". It interpolates from zero (black) to the texture colour based on the lighting ("raster") colour. But if that's correct, I can't understand how this could be:
[attachment=10032]
This is a three-part shader: part one is a base colour, part two is a scrolling glow, and part three layers the two based on a mask. There are several things I don't get:
- Part 1 interpolates from zero (black) to...the lighting colour based on the texture colour? Isn't that backwards? This part is known to have the same appearance as the first shader in-game so this doesn't make sense.
- What's the deal with the two constants in the top? I get where the KSel_* ones are coming from (the material calling the shader), but what's Constant3_8? (I don't get why the _Green and _Blue constants specifically are being used here, but that's not all that important.)
- What is the alpha segment doing in parts 2 and 3? Part is looks like a simple "use texture alpha straight", but then the other parts both look like "raise alpha by 85 (on the 255 scale)" (both constants are 85 here). This doesn't seem right because it would make the material a lot more opaque than it should be on the transparent bits.
I have further confusions but will wait to see if they happen to get solved by an answer first.