protected override void HandleDataChanged() { base.HandleDataChanged(); MixCastData.IsolationMode newMode = MixCastData.IsolationMode.None; if (context.Data != null) { newMode = context.Data.isolationMode; } foreach (Transform child in transform) { child.gameObject.SetActive(false); } foreach (Transform child in transform) { if (child.gameObject.name == newMode.ToString()) { child.gameObject.SetActive(true); } } lastMode = newMode; }
bool IsModeActive(MixCastData.IsolationMode mode) { switch (mode) { case MixCastData.IsolationMode.StaticSubtraction: return(context.Data.staticSubtractionData.active); case MixCastData.IsolationMode.Chromakey: return(context.Data.chromakeying.active); case MixCastData.IsolationMode.StaticDepth: return(context.Data.staticDepthData.active); default: return(false); } }