private void DestroyShadowEdge(ShadowEdge shadowEdge) { if (shadowEdge != null) { var g = shadowEdge.gameObject; shadowEdge.Destroy(); Destroy(g); } }
private void SetTarget(ref ShadowEdge edge, LineSegment?target) { if (edge == null && target != null) { edge = Util.CreateChild <ShadowEdge>(transform); edge.Init(lightSource, illuminatedSide, caster); } if (edge != null && target == null) { DestroyShadowEdge(ref edge); } if (target is LineSegment t) { edge.SetTarget(t); } }
private void DestroyShadowEdge(ref ShadowEdge shadowEdge) { DestroyShadowEdge(shadowEdge); shadowEdge = null; }