This addresses quirks with the lighting engine and how it interacts with custom shaders.
Futile is a bit of a frankenstein's monster when it comes to iteroperability with base Unity systems; while Unity shaders work, the behavior is overshadowed by Futile's layer system. This caused me to spend more hours than I care to admit trying to figure out why an unlit holographic/additive shader I wrote was casting shadows, and I want to prevent that pain for anyone else who may be reading.
This section covers shader information. It is directed towards those that already understand fundamental shader concepts.
- The
ZWrite
andZTest
commands (among less common others) are ignored. Futile does not have a depth buffer.1 - Vanilla uses certain declarations that are useless as well (their inclusion is erroneous). These are: