Hierarchy檢視裡的Transform和Camera元件
Hierarchy檢視裡的Transform和Camera元件
在Hierarchy檢視裡,選中Camera,然後在Inspector檢視裡檢視其各元件,如圖1-8所示。對於Transform和Camera元件,對於使用過Unity的讀者來說再熟悉不過本文選自NGUI從入門到實戰教程。
但是其上名為UICamera(Script)的指令碼元件,才是NGUI建立的UI控制元件所特有的。提示:UICamera(Script)指令碼元件通常會被賦予特定的攝像機物件,而這些攝像機的特殊之處在於它需要與UI控制元件發生互動。即接收來自於UI控制元件的各種訊息事件,例如,遊戲介面上的特定按鈕被點選的事件本文選自NGUI從入門到實戰教程。
圖1-8 Camera裡的各元件
UICamera(Script)指令碼元件包含了大量的屬性:
q Event Type:指定這個攝像機將會傳送的事件型別;
提示:此屬性包含了兩個引數:World和UI。前者表示事件來自於與3D世界中游戲物件的互動;後者表示事件來自於與2D控制元件的互動;
q Event Mask:指定可以接收到事件訊息的圖層;
q Allow Multi Touch:指定是否允許多點觸控;
q Sticky Press:指定當手指在一個按鈕處按下,然後手指滑動到按鈕外部的時候,按鈕是否會彈起,而其它物件則是否會接收到來自於這個手指的觸發事件;
提示:複選Sticky Press屬性的時候,按鈕會持續處於被按下的狀態,即使此時手指已經滑動到了按鈕外,而其它控制元件也不會接收到來自於手指的觸發事件;
q Sticky Tooltip:指定UI控制元件上作為控制元件說明的便箋資訊,將在怎樣的事件被觸發以後顯示;
提示:Sticky Tooltip屬性被複選的時候,便箋資訊在滑鼠移動到UI控制元件外部的時候顯示;取消複選的時候,滑鼠移動到UI控制元件上的時候顯示便箋資訊,移出後馬上消失。
q Tooltip Delay:用於設定便箋資訊持續顯示的時間,單位是秒;
q Raycast Range:Raycast實際上可以被看作是一條不可見的射線,它以滑鼠的位置或者螢幕上被觸控的位置為起點,以當前攝像機的朝向為方向發射一條射線,此射線就被用於檢測碰撞以及其它事件,有些開發者或許希望可以指定這個射線能夠檢測的範圍,就可以透過設定這個屬性來實現。
提示:Raycast Range預設的屬性值是-1,表示沒有範圍限制;
q Event Sources:此屬性用於指定攝像機所監聽事件的來源;
提示:一共有4個可選項,Mouse表示監聽滑鼠事件,可以來自於滑鼠左鍵、右鍵、中鍵和滾輪;Touch表示監聽移動裝置的觸控事件;Keyboard表示監聽鍵盤的輸入事件;Controller表示監聽來自於操縱桿裝置的事件;
q Thresholds:指定特定事件可以被觸發的臨界值;
提示:一個有4個可設定的值,Mouse Drag表示判定當前事件是滑鼠拖動事件的臨界值是滑鼠至少拖拽了多少個畫素點;Mouse Click表示判斷當前事件是滑鼠點選事件的臨界值是滑鼠按下了以後,在拖動了多少個畫素點之內,鬆開了按鍵,超出範圍則不判定為點選事件;Touch Drag與Touch Tap類似於前兩個可設定的值,只不過是滑鼠換成了手指;
q Axes and Keys:設定NGUI外掛的輸入系統。
提示:在Unity中,Keys幾乎表示了所有輸入裝置的鍵值,例如,鍵盤上的所有按鍵都有對應的Keys,其它遊戲操縱桿也一樣,因此可以直接使用Keys表示特定的按鍵。同時,Unity將其中一些常用的Keys對映到了一些其它的Axes上,因此開發者也可以直接使用Axes表示特定的按鍵。NGUI對Axes and Keys屬性的預設設定如圖1-9所示,前3個是Axes,後4個是Keys。
圖1-9 NGUI對Axes and Keys屬性的預設設定
對於Keys,讀者可以直接從名稱上識別出其對應的鍵,但是對於Axes,與它對應Keys讀者也許並不瞭解,而且讀者有時可能需要修改Axes對應的Keys,有時則是直接新增Axes。那麼,在Unity中如何新增和修改Axes呢?方法是,單擊Edit|Project Settings|Input命令,即可彈出名為InputManager的對話方塊,讀者可以在此對話方塊中新增和修改Axes,如圖1-10所示本文選自NGUI從入門到實戰教程。
圖1-10 Unity預設設定的Axes
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-1561377/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- View Transform(檢視變換)詳解ViewORM
- C#裡面的網頁檢視元件的運用C#網頁元件
- SAP UI5 檢視裡的 OverflowToolbar 控制元件UI控制元件
- 帶你理解transform:rotate(含三維檢視)ORM
- DRF 檢視元件元件
- 4.2.7 檢視元件狀元件
- SAP UI5 XML 檢視裡 label 和 text 控制元件文字對齊問題UIXML控制元件
- 在哪裡可以檢視Response
- Game檢視中實現類Scene中Camera的控制(自身中心)GAM
- GitLab 的元件狀態檢視Gitlab元件
- Laravel 自定義檢視元件Laravel元件
- Hyperf日誌檢視元件元件
- [Django REST framework - 檢視元件之檢視基類、檢視擴充套件類、檢視子類、檢視集]DjangoRESTFramework元件套件
- 普通檢視和物化檢視的區別
- win10 怎麼檢視元件服務_win10系統元件服務在哪裡Win10元件
- 在HTML裡遍歷檢視HTML
- 4.2.8 檢視元件的Oracle重啟配置元件Oracle
- Oracle普通檢視和物化檢視的區別Oracle
- 微信小程式-檢視容器元件微信小程式元件
- React Native 文件檢視元件React Native元件
- 列表檢視控制元件(轉)控制元件
- React周檢視元件封裝React元件封裝
- django 的類檢視和函式檢視-雜談Django函式
- v$sql檢視和v$sqlarea檢視的構建SQL
- Django的檢視和模板Django
- 使用sysdig檢視容器裡的系統呼叫
- Oracle的V$檢視和DBA_檢視的參考提示Oracle
- React Native 圖片檢視元件React Native元件
- 檢視屬性+物件動畫元件ViewPropertyObjectAnimator物件動畫元件ViewObject
- Perl檢視都安裝了那些元件元件
- 樹型檢視控制元件(轉)控制元件
- Qt Quick 訊息列表檢視元件QTUI元件
- iOS10 UI教程檢視的繪製與檢視控制器和檢視iOSUI
- 如何在ABAP Netweaver和CloudFoundry裡記錄並檢視日誌Cloud
- SAP UI5 xml 檢視裡定義的控制元件,執行時如何建立其例項的?UIXML控制元件
- 檢視和表的區別
- 如何把ABAP檢視新增到SAPGUI的收藏夾裡GUI
- 如何檢視CRM WebUI,C4C和Hybris裡的頁面技術資訊WebUI