在这篇教程中你会学习如何扩展你的Unity3D编辑器,以便在你的项目中更好的使用它。你将会学习如何绘制你自己的gizmo,用代码来实现创建和删除物体,创建编辑器窗口,使用组件,并且允许用户撤销他们所作出的任何动作,这些全部都是用编辑器脚本来实现的。

这篇教程假设你已经熟悉Unity的基本工作流程。如果你知道如何在编辑器中创建物体、预设、场景并且知道如何移动它们,知道如何添加组件,那么你可以开始本教程的学习了。

最终结果预览

让我们看一下我们做出的最终结果是什么样子: 
泰课在线 
如你所见,我们会创建一个编辑器窗口,里面有一个颜色拾取器,我们可以用所选取的颜色来绘制网格。我们也能够创建和删除物体,把他们对齐到网格,并且能够撤销这些动作。


Step 1: Gizmos

首先我们来学习如何使用gizmo。这里有一些内置gizmo的例子: 
泰课在线 
你可能会经常在Unity中看到这个gizmo,因为它会为每一个拥有transform组件的物体绘制,因此基本上每一个被选中的物体都会有这个gizmo。 
泰课在线 
这是另一个gizmo,它能够让我们知道绑定在我们游戏对象上的BoxCollider的大小。

Step 2: 创建一个Grid脚本

创建一个C#脚本Grid.cs,我们用它来为一个物体绘制我们自己的gizmo;我们会在编辑器中绘制一个简单的网格(Grid)来作为一个例子。

1
2
3
4
5
6
7
8
9
10
11
12
13
using UnityEngine;
using System.Collections;
 
public class Grid : MonoBehaviour
{
    void Start()
    {
    }
 
    void Update()
    {
    }
}

对于一个网格,我们需要添加2个变量:width和height

1
2
3
4
5
6
7
8
9
10
11
12
13
标签: Unity
0