Version: 2018.2
public static void DrawPolyLine (params Vector3[] points);

Description

Draw a line going through the list of points.

Важно: Используйте HandleUtility.GetHandleSize если вам нужны маркеры постоянного размера.


PolyLine that connects all the objects in the Scene View.

// Draw lines between selected GameObjects.

using UnityEditor; using UnityEngine; using System.Collections;

[CustomEditor(typeof(DrawPolyLineExample))] public class PolyLineDraw : Editor { private Vector3[] positions;

void OnSceneGUI() { DrawPolyLineExample connectedObjects = target as DrawPolyLineExample; if (connectedObjects.objs == null) { return; }

if (connectedObjects.objs.Length > 0) { positions = new Vector3[connectedObjects.objs.Length]; }

for (var i = 0; i < connectedObjects.objs.Length; i++) { if (connectedObjects.objs[i]) { positions[i] = connectedObjects.objs[i].transform.position; } else { positions[i] = Vector3.zero; } }

Handles.DrawPolyLine(positions); } }

И скрипт, прикрепленный к данному маркеру:

using UnityEngine;

public class DrawPolyLineExample : MonoBehaviour { public GameObject[] objs; }