Tanoda
RendererGizmo.cs
Go to the documentation of this file.
1using System.Collections.Generic;
3using UnityEngine;
4using Vectrosity;
5
7{
9 {
10 private readonly Renderer _renderer;
11 private readonly Renderer[] _childRenderers;
13
14 public RendererGizmo(Renderer renderer, Renderer[] childRenderers)
15 {
16 _renderer = renderer;
17 _childRenderers = childRenderers;
18 VectorLine = new VectorLine(GizmoDrawer.GizmoObjectName + "_Renderer2D", new List<Vector2>(8), 1f, LineType.Discrete);
19 }
20
21 public void Destroy()
22 {
23 VectorLine.Destroy(ref VectorLine);
24 }
25
26 public void Draw()
27 {
28 if (VectorLine == null || !_renderer) return;
29
30 var bounds = _renderer.bounds;
31 if (_childRenderers.Length > 0)
32 bounds.Encapsulate(BoundsUtils.CombineBounds(_childRenderers));
33
34 var rect = bounds.BoundsToScreenRect(Camera.main);
35 VectorLine.MakeRect(rect);
36 VectorLine.SetColor(_renderer.gameObject.activeInHierarchy ? new Color(0.4f, 0.95f, 0.4f) : new Color(0.65f, 0.65f, 0.65f));
37 VectorLine.Draw();
38 }
39 }
40}
UnityEngine.Color Color
Definition: TestScript.cs:32
RendererGizmo(Renderer renderer, Renderer[] childRenderers)
Definition: IGizmoEntry.cs:4