ScriptableObjectVariant
ScriptableObjectVariant copied to clipboard
Unity Odin editor helper which permits to set a "SOVariant" attribute to a ScriptableObject and override, or not, certain fields (similar to prefab variants but for scriptable objects).
This looks really interesting, I just searched the internet and ended up here. Do you have a link to a discussion around this project on the Unity forums maybe ?...
In factm you dont need original values. Your header + small flag eat 50% of space. Also you even not need a flag, Blue line with Unity prefab override system...
I use 'HideLabel' to save space of Inspector, but you draw it ignoring my attribute
I've List of references to another ScriptableObjects, and IsOverriden is true, but if I turn it off, I can't turn it on back
Odin is only used for display in the Editor, is there a better way to achieve this and remove the need for Odin?
Given that a list of variable names defines the overrides, changing the variable name will not propagate to the overrides. The list could maybe be built when first selecting the...
The selected parent should be of the exact same class as the overriden item (otherwise fields might be missing) and should not be the child itself. This check is currently...
The attribute `[SOVariant]` only acts as tagger, which is then looked for in `SOVariantAttributeProcessor:OdinPropertyProcessor -> ProcessMemberProperties`, where the first line reads: ```csharp if(!Property.Attributes.Select(attribute => attribute.GetType()).Contains(typeof(SOVariantAttribute))) return; ``` The problem with...
So in my use case, I have something like: ``` [SOVariant] [CreateAssetMenu(menuName = "MyGame/Player Config")] public class PlayerConfig: ScriptableObject { public int health = 100; public float moveSpeed; public ShotProperties...