官术网_书友最值得收藏!

3.7 Unity GUI

Unity GUI提供了常用的UI,包括按鈕、文本、文本框、滾動條、下拉框等。點擊菜單“GameObject”→“UI”,選擇需要添加的具體內容即可,如圖3-38所示。

圖3-38

Unity GUI所有對象都需要在“Canvas”為根結點的游戲對象下,并且需要一個“EventSystem”對象,如圖3-39所示。

圖3-39

3.7.1 Render Mode顯示模式

Render Mode顯示模式設置界面如圖3-40所示。

圖3-40

(1)Screen Space - Overlay

該模式下,UI會始終出現在3D物體的最前方,如圖3-41所示。

圖3-41

(2)Screen Space - Camera

該模式下,UI會出現在距離相機一定位置的距離上,其中“Plane Distance”就是UI所在平面距離相機的位置,如圖3-42所示。

圖3-42

(3)World Space

該模式下,UI會變成一個場景中的平面對象,如圖3-43所示。

圖3-43

3.7.2 定位方式

(1)絕對定位

以父對象的某個點作為定位參考時,對象不會因為父對象的大小變化而改變,會始終保持大小不變,如圖3-44所示。

圖3-44

(2)相對定位

以父對象的某條線或區塊為定位參考時,對象會因為父對象的大小變化而改變,如圖3-45所示。

圖3-45

3.7.3 響應腳本

新建腳本:

    using UnityEngine;
    using System.Collections;

    public class BtnClicked : MonoBehaviour {

        public void Clicked(){
            Debug.Log ("按鈕被按下");
        }
    }

新建一個游戲對象,將腳本拖入,如圖3-46所示。

圖3-46

選中對應的UI,添加事件,如圖3-47、圖3-48所示。

圖3-47

圖3-48

將有腳本的游戲對象拖入事件中,并選擇響應的方法,也就是之前寫的方法,如圖3-49所示。

圖3-49

運行,按鈕被點擊時,就會有輸出,如圖3-50所示。

圖3-50

不同的UI組件只是響應的事件不同,添加響應腳本的方法是一樣的,如圖3-51所示。

圖3-51

主站蜘蛛池模板: 玉田县| 翼城县| 项城市| 吉安县| 九寨沟县| 徐闻县| 纳雍县| 丹江口市| 秦皇岛市| 苗栗县| 西峡县| 枣庄市| 嘉峪关市| 井冈山市| 祥云县| 洪泽县| 巫山县| 新巴尔虎右旗| 剑河县| 满洲里市| 临潭县| 巨野县| 友谊县| 城步| 平凉市| 黑河市| 韶山市| 溆浦县| 含山县| 淳化县| 永城市| 嘉定区| 昭通市| 盐源县| 甘肃省| 渑池县| 铁岭市| 巴楚县| 博白县| 沙洋县| 淳化县|