程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 【Unity】2.7 檢視器(Inspector),unityinspector

【Unity】2.7 檢視器(Inspector),unityinspector

編輯:C#入門知識

【Unity】2.7 檢視器(Inspector),unityinspector


分類:Unity、C#、VS2015

創建日期:2016-03-31

一、簡介

Unity中的游戲是以包含網格、腳本、聲音或燈光 (Lights) 等其他圖形元素的多個游戲對象 (GameObjects) 組成。檢視器 (Inspector) 顯示當前所選游戲對象 (GameObjects) 的詳細信息,包括所有附加組件 (Components) 及其屬性。

Inspector視圖用於顯示在游戲場景中當前所選擇對象的詳細信息,以及游戲整體的屬性設置,包括對象的名稱、標簽、位置坐標、旋轉角度、縮放、組件等信息。

在Inspector視圖中,每個組件都有對應的【幫助按鈕】和【上下文菜單】:

單擊【幫助按鈕】(問號圖標)會在安裝到本機的用戶手冊中顯示該組件相關的文檔。

單擊【上下文菜單】(小齒輪圖標)會顯示與該組件相關的選項,也可以在下拉菜單中選擇Reset命令將屬性值重置為默認值。

  • Transform:用戶可以通過Transform組件修改對象的位置、旋轉和縮放屬性。
  • Mesh Filter:網格過濾器,用於從對象中獲取網格信息(Mesh)並將其傳遞到網格渲染器中。
  • Box Collider:立方體碰撞體,為了防止物體被穿透,需要給對象添加碰撞體。一般根據坐標來計算物體的距離,然後判斷是否發生了碰撞。
  • Mesh Renderer:網格渲染器從網格過濾器獲得幾何形狀,並根據游戲對象的Transform組件的定義位置進行渲染。
  • Cast Shadow:網格是否投射陰影。
  • Receive Shadows:網格是否接收陰影。
  • Materials:設置對象的材質。

當你創建腳本時,它將作為一個自定義的組件 (Component) 類型,當該腳本組件添加到一個游戲對象 (GameObject) 中時,該腳本的成員變量將作為可直接編輯的屬性 (Properties) 陳列在檢視器 (Inspector) 中。通過這種方式,無需修改腳本本身就可以更改其變量。

此外,檢視器 (Inspector) 也用於顯示資源的導入選項,比如紋理、三維模型以及選擇時的字體。某些場景和工程范圍的設置也可以在檢視器 (Inspector) 中查看,比如所有設置管理器 (Settings Managers)。

檢視器 (Inspector) 中顯示的任何屬性都可以直接修改。有兩種主要類型的屬性:值 (Values) 和引用 (References)。值可能為光源的顏色或者矢量。引用是連接到其他對象的鏈接,比如紋理或其他游戲對象。

1、編輯值屬性

值屬性不能引用任何內容,可直接編輯。典型的值屬性有數字、切換、字符串和選擇彈出窗口,它們也可以是顏色、矢量、曲線和其它類型。

檢視器上的值屬性可以是數字、復選框、字符串…

許多值屬性有一個文本字段,且可以通過點擊它們、使用鍵盤鍵入一個值、然後按 Enter 鍵保存該值,輕松進行調整。

您也可以把鼠標放到數值屬性旁邊,用左鍵拖動以快速滾動數值

有些數值屬性有一個可用於直觀地調整數值的滑塊。

有些值屬性會彈出一個小對話框,可以用來編輯值。

(1)顏色拾取器

顏色類型的屬性將打開顏色選擇器 (Color Picker)。想要查找一個值時,只需將鼠標放到想要抓取的顏色上,然後使用吸管工具 (Eyedropper Tool)。\\ RGB /HSV 選擇器可讓您將紅、綠、藍的值轉換為顏色的色相、飽和度和數值(強度)。

最後,通過 Alpha 通道 (Alpha Channel) 值可對所選顏色的透明度進行控制。

(2)曲線編輯器 (Curve Editor)

動畫曲線 (AnimationCurve) 類型的屬性將打開曲線編輯器 (Curve Editor)。曲線編輯器 (Curve Editor) 可讓您編輯曲線或選擇一種預先設置。

由於舊版本原因,該類型叫做動畫曲線 (AnimationCurve),但它可以用來定義任何自定義曲線功能。該功能可在腳本運行時進行評估。 動畫曲線 (AnimationCurve) 屬性在檢視器中顯示為一個小預覽圖:

點擊它即可打開曲線編輯器 (Curve Editor):

曲線編輯器 (Curve Editor) 用來編輯動畫曲線 (AnimationCurves)。

循環模式 (Wrapping Mode) 可讓您在曲線中選擇 Ping Pong、Clamp 和 Loop 控制鍵。

預置 (Presets) 可讓您將曲線修改為其可以擁有的默認輪廓。

(3)漸變編輯器

在圖形和動畫中,能夠從空間或時間上將一種顏色混合入另一種顏色是一項非常有用的功能。漸變是顏色變化的直觀表示,只顯示主要顏色(稱為起止顏色)和它們之間的所有臨界色調。在 Unity 中,漸變擁有自己的特殊值編輯器,如下所示。

沿漸變條底部的上指箭頭表示起止顏色。單擊它即可選擇一種起止顏色;其值將顯示在顏色框中,單擊時顏色框將打開標准顏色選擇器。單擊漸變條下方,即可創建一種新的起止顏色。單擊並拖動即可更改任何起止顏色的位置,按 ctrl/cmd + delete 可刪除一種起止顏色。

漸變條上方的下指箭頭也是起止顏色,但它們與該點漸變的 alpha(透明度)對應。默認情況下,有兩種起止顏色設置為 100% alpha(即完全不透明),但任意數量的起止顏色與顏色起止點的添加和編輯方式大致相同。

(4)數組

你所編寫的腳本可以在檢視器 (Inspector) 排列原始的 .Net 數組。當檢視器 (Inspector) 遇到數組時,它會讓您編輯數組的長度。默認長度為零。當大小設置為大於零時,檢視器 (Inspector) 會創建槽,您可在槽中輸入數組元素的值。如果數組存儲 Unity 已知類型的數據,它將插入合適的值編輯器。例如:

var pickupColors : Color32[];

會為數組中的每個元素生成一個顏色選擇器編輯器。

2、指定引用

引用屬性是這樣一種屬性,它可以引用其他對象,例如游戲對象 (GameObjects)、組件 (Components) 或資源 (Assets)。引用槽將顯示可用於該引用的對象類型。例如,音頻剪輯 (Audio Clip) 屬性槽顯示它可以引用的音頻剪輯 (Audio Clip) 類對象:

現在音頻剪輯 (Audio Clip) 屬性中引用了一個音頻剪輯 (Audio Clip)文件。

類引用非常迅速且強大,使用腳本時尤其如此。

(1)拖放

可以通過拖放或使用對象選取器 (Object Picker) 為引用屬性指派對象。

你可以在場景視圖 (Scene View)、層級視圖 (Hierarchy) 或工程視圖 (Project View) 中選擇所需對象,然後將它拖到引用屬性槽,即可完成拖放。

如果一個引用屬性接受一種特殊的組件 (Component) 類型(例如變換組件 (Transform)),那麼將游戲對象 (GameObject) 或預設 (Prefab) 拖到引用屬性上也能很好地工作,前提條件是該游戲對象 (GameObject) 或預設 (Prefab) 包含正確類型的組件。盡管這是一個您拖過來的游戲對象 (GameObject) 或預設 (Prefab),屬性仍會引用這一組件。

如果您將對象拖到引用屬性上,而對象是錯誤類型或者沒有包含正確的組件,那麼您將不能夠為引用屬性指定該對象。

(2)對象選取器

您可以單擊引用槽旁邊的小目標圖標來打開對象選取器 (Object Picker)。

對象選取器 (Object Picker) 是一個簡單窗口,可以讓你在預覽和搜索到可用對象之後在檢視器中指派這些對象。

盡管對象選取器 (Object Picker) 簡單易用,但您也應了解如下的說明事項。下圖是對象選取器 (Object Picker) 的界面說明:

  • 搜索:當選取器中有很多對象時,您可以使用“搜索”字段進行篩選。該“搜索”字段也可以使用標簽搜索對象。
  • 視圖選擇器:切換場景和資源中對象的搜索庫。
  • 預覽大小:該水平滾動條可讓您在預覽窗口中增大/減小預覽對象的大小。通過該滾動條,您可以隨時在預覽窗口中看到更多或更少的對象。
  • 預覽窗口:這裡有“搜索”字段篩選出的“場景/資源”文件夾中的所有對象。
  • 對象信息:顯示當前選中對象的信息。該字段的內容取決於所查看的對象類型,例如,如果您選擇一個網格,它會告訴您頂點和三角形的數量、是否有 UV、是否有蒙皮。然而,如果您選擇一個音頻文件,它會為您提供音頻比特率、長度等信息。
  • 對象預覽:這也取決於您所查看的對象類型。如果您選擇一個網格,它會向您顯示網格的外觀,但是,如果您選擇一個腳本文件,它只會顯示文件的圖標。

對象選取器 (Object Picker) 可在工程的任何資源(可以是視頻、歌曲、地形、GUI 皮膚、腳本文件或網格)上工作;它是一個您會經常使用的工具。

提示:在資源 (Assets) 上使用標簽,能夠讓您比使用對象選取器 (Object Picker) 搜索字段更易找到它們。

如果不想看到對象的描述,您可以向下拖動預覽窗口底部中間的滑塊。

如果想看到對象的詳細預覽,您可以拖動預覽窗口底部中間的滑塊來放大對象預覽。

3、多對象編輯

你可以在檢視器 (Inspector) 中同時選擇和編輯多個相同類型的對象。任何更改的屬性將應用到所有選中的對象上。如果您想對許多對象作相同更改,這會節省大量時間。

選擇多個對象時,只有在所有選中對象中存在的組件才會在檢視器 (Inspector) 中顯示出來。如果組件只在一些選中對象存在,檢視器 (Inspector) 底部會出現一個小提示,說明那些僅存在於部分選中對象中的組件不能被多重編輯。

(1)屬性值

多個對象被選中後,檢視視圖 (Inspector) 中顯示的每個屬性代表每個選中對象的屬性。如果所有對象上的屬性值相同,該值將正常顯示,就像在編輯單個對象一樣。如果所有選中對象上的屬性值不相同,那麼沒有值會被顯示,而會顯示短劃線或類似符號,表明這些值是不同的。

(2)多重編輯兩個對象

無論是顯示值還是短劃線, 該屬性值可照常編輯,且修改的值將應用到所有選中對象上。如果這些值不同而顯示短劃線,仍然可以右擊屬性標簽。這樣會彈出一個菜單,以便您選擇從哪個對象上繼承屬性值。

(3)多重編輯預設或模型實例

像游戲對象 (Game Objects) 一樣,預設可在場景中被多重編輯。預設或模型的實例也能夠被多重編輯;然而也存在某些限制:編輯單個預設或模型實例時,任何與預設或模型不同的屬性將以粗體顯示,右擊時會有一個將屬性恢復為其在預設或模型中所擁有值的選項。此外,游戲對象 (Game Object) 有選項可用來應用或恢復所有更改。進行多對象編輯時,這些操作都不可用。屬性無法恢復或應用;即使與預設或模型不同時也不會以粗體顯示。需要提醒您的是,檢視器 (Inspector) 會提示實例管理失效,而“選擇 (Select)”、“恢復 (Revert)”和“應用 (Apply)”按鈕通常會出現。

對於預設多重編輯的實例管理失效

(4)不受支持的對象

少數對象類型不支持多對象編輯。同時選擇選擇多個對象時,這些對象將顯示一個提示告知“不支持多對象編輯”。

使用自定義編輯器編輯自己的腳本之一時,如果它不支持多對象編輯,也會顯示這條消息。請參閱編輯器類的腳本參考,了解如何在自己的自定義編輯器中實現對多對象編輯的支持。

二、檢視器選項

“檢視器鎖定”和“檢視器調試模式”是兩個有用的選項,可在工作流程中幫助到您。

1、鎖定

鎖定 (Lock) 可讓您在選擇其他游戲對象 (GameObjects) 時保持對檢視器 (Inspector) 中特定游戲對象 (GameObject) 的聚焦。要切換檢視器 (Inspector) 的鎖定選項,在檢視器 (Inspector) 上單擊鎖定/解鎖 () 圖標,或者打開選項卡菜單,選擇鎖定。

通過選項卡菜單鎖定檢視器 (Inspector)。

請注意,您可以同時打開一個以上的檢視器 (Inspector),還可以鎖定一個特定游戲對象的檢視器,同時保持另一個解鎖,以顯示選中了哪個游戲對象 (GameObject)。

2、調試

調試模式 (Debug Mode) 可讓您在檢視器 (Inspector) 中檢查組件的私有變量,它們通常不會顯示。要更改為調試模式 (Debug Mode),打開選項卡菜單,然後選擇調試。

在調試模式 (Debug Mode) 下,所有組件使用默認界面顯示,而不使用某些組件在正常模式 (Normal Mode) 下使用的自定義界面。例如,變換 (Transform) 組件在調試模式 (Debug Mode) 下顯示旋轉的四元數值 (Quaternion values),而不是正常模式 (Normal Mode) 下顯示的歐拉角 (Euler angles)。您也可以使用調試模式 (Debug Mode) 檢查自己腳本組件中私有變量的數值。

檢視器 (Inspector) 中的調試模式 (Debug Mode) 可以讓您檢查腳本和其他組件中的私有變量。

每個檢視器 (Inspector) 都有調試模式,您可以讓一個檢視器 (Inspector) 在調試模式 (Debug Mode) 下工作,而讓另一個不工作。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved