PrismaticFlower / shaderpatch

Improved shaders (and fun stuff for modders) for Star Wars Battlefront II (2005) - Incompatible with Classic Collection
MIT License
39 stars 2 forks source link

Another 'unlit' shader state missing #119

Closed DoctorAnsem closed 3 years ago

DoctorAnsem commented 3 years ago

Got another weird crash that didn't happen before with the exact same material configs - the only difference, again, is that I stopped passing the material flags during munge.

[ERROR] 15:44:34 Failed to find shader state 'unlit opaque' for material shader 'pbr.emissive'! I thought PBR wasn't supposed to even have 'unlit' states as a possibility? I don't understand where this is coming from at all.

Another thing I really need to ask about: as mentioned, I stopped passing the material flags and figured since the feature is deprecated and ultimately redundant, I wouldn't need to have the flags in materials for nothing. It turns out this is not the case, as I get several handfuls of "Error munging xxx.mtrl: Null Flags YAML node" messages. Is this supposed to happen?

PrismaticFlower commented 3 years ago

I don't understand where this is coming from at all.

Neither do I, it'll be easy enough to add the shader state definitions to keep the game happy though.

It turns out this is not the case, as I get several handfuls of "Error munging xxx.mtrl: Null Flags YAML node" messages. Is this supposed to happen?

That is a mistake on my end, the flags section will go unused without --usemtrlflags getting passed in but apparently it still looks for the Flags section regardless of if it's going to use it.

I will aim to put out a patch (soon) to fix both these issues.

PrismaticFlower commented 3 years ago

The first part of the issue should now be fixed (once and for all, I tried to be quite thorough this time) in the next release. I expect to get to the second part (the Flags bug) later today.

EDIT:

And it's done! 29d0c5adf272cce6d219a7a00c657315d80cb8a2 That'll be in the next release as well which shouldn't be too far away.