Unity编辑器类
在Scene上绘制一个可拖动3D滑板柄,该控制柄被约束滑动沿着3D空间的向量方向。
绿色箭头是可以用鼠标拖动的,但是方向被代码限制,看代码
在Editor文件夹下创建脚本HandlerTest
using UnityEngine;
using System.Collections;
using UnityEditor;
[CustomEditor(typeof(Arraw))]
public class HandlerTest : Editor {
int circleSize = 5;
void OnSceneGUI()
{
Arraw arraw = (Arraw)target;
Handles.color = Color.green;
//滑动方向被限制为 位置1 arraw.vectorPoint, 和位置 2 arraw.transform.position两个点所在的线上
arraw.vectorPoint = Handles.Slider(arraw.vectorPoint,
arraw.transform.position); //点击箭头是可以滑动的,但是滑动方向只能在 参数1和参数2所在的直线上
if (GUI.changed)
EditorUtility.SetDirty(target);
}
}
Arraw脚本如下
using UnityEngine;
using System.Collections;
public class Arraw : MonoBehaviour {
public Vector3 vectorPoint = Vector3.zero;
}