Version: 2022.2

Handles.DrawDottedLine

切换到手册
public static void DrawDottedLine (Vector3 p1, Vector3 p2, float screenSpaceSize);

参数

p1 起点。
p2 终点。
screenSpaceSize 线段长度及其间距的大小(以像素为单位)。

描述

绘制一条从 **p1** 到 **p2** 的虚线。

\ 在场景视图中绘制线条。

// Draw lines to the connected game objects that a script has.
// If the target object doesn't have any game objects attached
// then it draws a line from the object to (0, 0, 0).

using UnityEditor; using UnityEngine;

[CustomEditor(typeof(ConnectedObjectsExample))] class ConnectLineHandleExample : Editor { float dashSize = 4.0f; void OnSceneGUI() { ConnectedObjectsExample connectedObjects = target as ConnectedObjectsExample; if (connectedObjects.objs == null) return;

Vector3 center = connectedObjects.transform.position; for (int i = 0; i < connectedObjects.objs.Length; i++) { GameObject connectedObject = connectedObjects.objs[i]; if (connectedObject) { Handles.DrawDottedLine(center, connectedObject.transform.position, dashSize); } else { Handles.DrawDottedLine(center, Vector3.zero, dashSize); } } } }

附加到此手柄的脚本:

using UnityEngine;
using System.Collections;

public class ConnectedObjectsExample : MonoBehaviour { public GameObject[] objs = null; }