/// <summary> /// Sets up the greenscreen with saved data. /// Used exclusively by ZEDSteamVRControllerManager to make sure this happens after controllers are set up. /// Otherwise, included logic gets set elsewhere in different places. /// </summary> public void PadReady() { if (garbageMatteData.numberMeshes != 0 && garbageMatte != null) { if (enableGarbageMatte) { garbageMatte = new GarbageMatte(GetComponent <Camera>(), finalMat, transform, garbageMatte); } garbageMatte.LoadData(garbageMatteData); } }
/// <summary> /// Fills the current chroma keys with the data from a file. /// </summary> public void LoadGreenScreenData(bool forcegarbagemate = false) { GreenScreenData gsData; if (LoadData(out gsData)) { ChromaKeyData chromaKeyData = gsData.chromaKeyData; garbageMatteData = gsData.garbageMatteData; erosion = chromaKeyData.erosion; sigma_ = chromaKeyData.blurPower; numberBlurIterations = chromaKeyData.numberBlurIterations; whiteClip = chromaKeyData.whiteClip; blackClip = chromaKeyData.blackClip; spill = chromaKeyData.spill; keyColors = chromaKeyData.chromaKeys.color; smoothness = chromaKeyData.chromaKeys.smoothness; range = chromaKeyData.chromaKeys.range; } UpdateShader(); if (forcegarbagemate && garbageMatte != null) { if (!garbageMatte.IsInit && cameraManager != null) { garbageMatte = new GarbageMatte(cameraManager, finalMat, transform, garbageMatte); } enableGarbageMatte = true; garbageMatte.LoadData(gsData.garbageMatteData); garbageMatte.ApplyGarbageMatte(); } }