private void OnDisable() { for (int i = 0; i < ObjAndMaskList.Count; i++) { //ObjAndMaskList[i].Save(); ObjAndMaskList[i].EndStep(); } Reset = true; Clean = true; Edit = false; Target = null; }
public void UpdateHitInfo(Transform hitTrans, Vector2 uv, bool paint, bool finish) { if (Edit) { Uv = uv; if (Target != null && Target.Obj == hitTrans && Target.ShowMat != null) { Target.ShowMat.SetVector("_BrushPos", Uv); Target.ShowMat.SetFloat("_BrushSize", BrushSize); Target.DrawMat.SetVector("_BrushPos", Uv); Target.DrawMat.SetFloat("_BrushSize", BrushSize); Target.DrawMat.SetColor("_BrushColor", BrushColor); if (paint) { /*if (PaintState == false) * { * Target.SaveLastStep(); * }*/ Cpt++; PaintState = true; if (Cpt % Flow == 0) { Target.Draw(Uv, BrushSize); } } else if (PaintState == true && finish) { PaintState = false; Target.FinishDraw(); } } else { if (Target != null && Target.ShowMat != null) { Target.ShowMat.SetFloat("_BrushSize", 0); Target = null; } for (int i = 0; i < ObjAndMaskList.Count; i++) { if (ObjAndMaskList[i].Obj == hitTrans) { Target = ObjAndMaskList[i]; break; } } } } }