版本:Unity 6(6000.0)
语言英语
  • C#

Handles.DrawSolidRectangleWithOutline

提出更改建议

成功!

感谢您帮助我们提高 Unity 文档的质量。尽管我们无法接受所有投稿,但我们确实阅读每一条用户提出的更改建议,并在适用情况下进行更新。

关闭

提交失败

由于某种原因,无法提交您提出的更改建议。请在几分钟后<a>重试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static void DrawSolidRectangleWithOutline(Vector3[] verts, Color faceColor, Color outlineColor);

参数

verts 世界坐标系中矩形的 4 个顶点。
faceColor 矩形表面的颜色。
outlineColor 矩形轮廓的颜色。

说明

在 3D 空间中绘制一个实心轮廓矩形。


场景视口中带黑色轮廓的实心矩形。

// Create a semi transparent rectangle that lets you modify
// the "range" that resides in "SolidRectangleExample.cs"

using UnityEngine; using UnityEditor;

[CustomEditor(typeof(SolidRectangleExample))] public class DrawSolidRectangle : Editor { void OnSceneGUI() { SolidRectangleExample t = target as SolidRectangleExample; Vector3 pos = t.transform.position;

Vector3[] verts = new Vector3[] { new Vector3(pos.x - t.range, pos.y, pos.z - t.range), new Vector3(pos.x - t.range, pos.y, pos.z + t.range), new Vector3(pos.x + t.range, pos.y, pos.z + t.range), new Vector3(pos.x + t.range, pos.y, pos.z - t.range) };

Handles.DrawSolidRectangleWithOutline(verts, new Color(0.5f, 0.5f, 0.5f, 0.1f), new Color(0, 0, 0, 1));

foreach (Vector3 posCube in verts) { t.range = Handles.ScaleValueHandle(t.range, posCube, Quaternion.identity, 1.0f, Handles.CubeHandleCap, 1.0f); } } }

附加到此控制器的脚本

using UnityEngine;

public class SolidRectangleExample : MonoBehaviour { public float range = 5.0f; }