Unity编辑器 - 使用GL绘制控件 控件较为复杂时,可能造成界面卡顿,在EditorGUI中也可以灵活使用GL绘制来提升性能. 以绘制线段为例: using UnityEngine; using UnityEditor; public class EditorGL { private static Material _sLineMat; static EditorGL() { Shader shader = Shader.Find("Hidden/Internal-Colored"
Unity编辑器 - DragAndDrop拖拽控件 Unity编辑器的拖拽(DragAndDrop)在网上能找到的资料少,自己稍微研究了一下,写了个相对完整的案例,效果如下 代码: object dragData = "dragData"; Vector2 offset; Color col = new Color(1, 0, 0, 0.6f); Rect rect1 = new Rect(20, 10, 100, 20); Rect rect2 = new Rect(20, 60,
1.Label 控件 编写脚本文件,直接绑定在main camera上 public class labelScript : MonoBehaviour { //设定一个值来接收外部赋值的字符串 public string str; //接收外部赋值贴图 public Texture imageTexture; //设定私有变量,只可以在脚本内访问的 private int imageWidth; private int imageHeight; private int screenWidth;
用体感来实现UI控件的点击,如点击按钮. 做法:用一个图片表示左手手掌,图片位置追踪左手手掌移动,当手掌位于UI控件的矩形内时,握拳表示点击该控件. using UnityEngine; using System.Collections; using UnityEngine.UI; /// <summary> /// 用Kinect实现UI的点击:追踪左手手掌,移动到UI矩形内握拳表示点击该按钮. /// </summary> public class UIClick : Mono