I want to avoid using dynamic material instances where possible, and this system doesn’t require using dynamic materials. However, it seems pretty wonky. Is there a better way of doing this?
yeah exactly. There shouldn’t be any reason to not use a Dynamic Material really, creating them is super straightforward and you can apply one DMI to as many objects as you like.