I'm getting some _really_ weird material instance problems:
- Certain parameters have less and less effect depending on how many times
I open and save the package (without modifying anything).
- When opening a map using the problematic material, I keep getting the
prompt informing me that a package needs re-saving because the parent
material has changed. Over and over again, when nothing has changed
in the parent or in it's package.
- Changing something in the child material instance (in its own package) makes
the _parent_ material's package dirty.
- The same matinst looks different in the viewport than in PIE. It changes look
in the viewport if I open matinee once (without changing anything). The different
look is due to the weirdness going on with those certain parameters.
I tried to following to fix this:
- Update UDK from February to May.
- Replace the affected 3 scalar parameters with a single vector.
- Copied and reassigned the parent material.
- Rebuilt the material instances from scratch.
- Removed the affected parameters, saved everything, closed the editor then
added everything back with a different name.
- Fixed up redirectors.
- Deleted the shader cache.
At the last step I finally saw a warning in the log:
Warning: ConditionalFlattenMaterial: Invalid FlattenType: 2
Which, along with the other clues, seem to indicate that something in the
node tree is hard to stomach for the engine. I didn't find anything on this
message on the internet.
The parameters are linked to simple multiply nodes so no custom code nodes
or any other exotic stuff is used.
I'd appreciate any pointers.