动态产生GUI(2D表层接口)
要动态产生的GUI都必需写在
function OnGUI ( ) { }里面
在这function内越晚产生的GUI会在越上层
标签GUI
GUI.Label (Rect(X,Y,width,height), “文字” , GUIStyle("textfield"));
Rect(X,Y,width,height) 的( X,Y) 請參考 脚本基础认识2 ~ 坐标~动态产生GUI
贴图GUI
GUI.DrawTexture(Rect(0 ,0 ,Screen.width ,Screen.height), 图文件, 缩放模式, true, 0);
缩放模式 (ScaleMode) 3种
ScaleMode.StretchToFill 拉扯图片填满Rect
ScaleMode.ScaleAndCrop 缩放图片,保持长宽比,用长宽较小的值对齐Rect长宽,图会被切割
ScaleMode.ScaleToFit 缩放图片,保持长宽比,用长宽较大的值对齐Rect长宽
按钮GUI (按下后放开才执行)
If ( 动态产生GUI.Button ){ 执行内容;}
脚本中动态产生GUI.Button的格式
GUI..Button(Rect(X,Y,width,height),”文字”) ~ 只有文字的
GUI..Button(Rect(X,Y,width,height), 图文件 ) ~ 只有图片的
GUI..Button(Rect(X,Y,width,height), “ ”, GUIStyle) ~ 按钮状态切换图片
例:var ID : GUIStyle = GUIStyle();
ID.normal.background = 图0; ~ 平常时按钮显示 图0
ID.hover.background = 图1; ~ 鼠标光标停留时显示 图1
ID.active.background = 图2; ~ 按钮被按下时显示 图2
If (GUI..Button(Rect(X,Y,width,height), “ ”, ID )){ 执行内容;}
执行内容 可參考 脚本基础认识1 ~ Transform