Runtime Transform Gizmos丨功能实现

一、前言:

Runtime Transform Gizmos已有介绍很详细的博客。因此本章不再介绍基础功能了。转而实现拓展功能。

 

 

二、基础配置:

参考博客:转载链接

 

 

三、拓展功能

1、实现按下某按钮,选中某些物体

效果:

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().GetComponent().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视图、打包出来的游戏中显示。

Runtime Transform Gizmos丨功能实现_第2张图片

开启与关闭的方法:

Runtime Transform Gizmos丨功能实现_第3张图片

你可能感兴趣的:(#,Unity实用插件集合)