Yes no documentation at all. I don’t know where it was written but it’s intended use is to reduce shader permutations. It will compile the material to support all the features and a dynamic branch is then used to toggle which are enabled but atm it’s only possible in a static way by creating a new instance in the editor. (You can not make a dynamic instance and toggle the bool) Even though it should be possible.
I tried to plug in float parameter and stuff but it didn’t work. It might just be that they still need to create a bool parameter which works at runtime.
If you want to switch a feature on and off but don’t want to trigger compilation or want to reduce shader permutation its good. But it will have a higher cost in memory (because all features are supported in the shader) and probably a tiny cost for the dynamic branching when executing the shader. I would be very interested how granular you should be with it how many branches you should add. (One dynamic branch for all the special features or for example 20 branches for every single one)
I hope they add that it can be toggled at runtime. Then it can be used for: toggling on hit effects, special effects on materials, weather effects which are not used all the time.
I would love if they made it possible to be used in a parameter collection. So that I can toggle global features. (Like fog, weather effects)