目录
一、前言:
Runtime Transform Gizmos已有介绍很详细的博客。因此本章不再介绍基础功能了。转而实现拓展功能。
二、基础配置:
参考博客:转载链接
三、拓展功能
1、实现按下某按钮,选中某些物体
效果:
方法1(推荐):
EditorObjectSelection脚本添加如下代码:
public void Skode_Press()
{
_selectedObjects.Clear();
_selectedObjects.Add(GameObject.Find("Cube"));
_selectedObjects.Add(GameObject.Find("Cube (1)"));
_selectedObjects.Add(GameObject.Find("Cube (2)"));
FindObjectOfType<EditorGizmoSystem>().GetComponent<EditorGizmoSystem>().ChangeActiveGizmo(GizmoType.Translation);
}
方法2:
该方法测试时发现支持windows平台,不支持WebGL。原因是WebGL不支持动态链接库。
代码:
EditorObjectSelection脚本添加如下代码:(untiy按键键值表)
[DllImport("user32.dll", EntryPoint = "keybd_event")]
public static extern void Keybd_event(
byte bvk,//虚拟键值 ESC键对应的是27
byte bScan,//0
int dwFlags,//0为按下,1按住,2释放
int dwExtraInfo//0
);
public void Skode_Press()
{
_selectedObjects.Clear();
_selectedObjects.Add(GameObject.Find("Cube"));
_selectedObjects.Add(GameObject.Find("Cube (1)"));
_selectedObjects.Add(GameObject.Find("Cube (2)"));
//模拟W键按下、松开。
Keybd_event(87, 0, 0, 0);
Keybd_event(87, 0, 2, 0);
}
2、开启关闭网格线
网格线会在Game视图、打包出来的游戏中显示。
开启与关闭的方法: