using System.Collections; using System.Collections.Generic; using UnityEngine; public class OutLineSingle { private static OutLineSingle _instance; private List _outLineDrawPams = new List(); private OutLineSingle(){} public static OutLineSingle Instance() { if(_instance==null) { _instance = new OutLineSingle(); } return _instance; } public OutLineDrawPam GetOutLineDrawPam(Renderer[] renders,OutLineDraw draw) { OutLineDrawPam pam = new OutLineDrawPam(); pam.renders = renders; pam.draw = draw; return pam; } public void AddOutLineRender(OutLineDrawPam outLineDrawPam) { _outLineDrawPams.Add(outLineDrawPam); } public void RemoveOutLineRender(OutLineDrawPam outLineDrawPam) { if (_outLineDrawPams.Contains(outLineDrawPam)) { _outLineDrawPams.Remove(outLineDrawPam); } } public void RemoveAllOutLineRenders() { _outLineDrawPams.Clear(); } public List GetOutLineRenders() { return _outLineDrawPams; } } public struct OutLineDrawPam { public Renderer[] renders; public OutLineDraw draw; }