void Init(ITarget target) { Renderer r = GetTarget(target) as Renderer; if (r) { Material mat = GetMaterial(r); if (mat) { mMatCtrl = r.GetComponent <MaterialController>(); if (!mMatCtrl) { mMatCtrl = r.gameObject.AddComponent <MaterialController>(); } materialInstance = mMatCtrl.Instance(_matInd, mat); } else { Debug.LogWarning("Material not found for track: " + name); } } else { Debug.LogWarning("Renderer not found for track: " + name); } mPropId = Shader.PropertyToID(_property); mIsInit = true; }
public override void ClearEditCache() { mMat = null; mMats = null; if (mMatCtrl) { mMatCtrl.Deinit(); mMatCtrl = null; } materialInstance = null; mIsInit = false; }