遊戲設計社
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Unity 3D 腳本教學 (十七)

向下

Unity 3D 腳本教學 (十七) Empty Unity 3D 腳本教學 (十七)

發表  aaa1218bbb 周五 11月 25, 2011 2:38 pm

◆ Static function PrefixLabel(totalPosition:Rect,id:int,label:GUIContent):Rect
參數
totaIPosition 用於標籤和控件的屏幕上的矩形
id 空間的唯一ID
label 顯示在控件前面的標籤
返回:Rect 屏幕上的矩形,只用於控件自身
描述:在一些空間前面製作一個標籤
static function RectField (position : Rect, value : Rect) : Rect
static function RectField (position : Rect, label : string, value : Rect) : Rect
static function RectField (position : Rect, label : GUIContent, value : Rect) : Rect
參數
position
屏幕上用於域的矩形區域
label 顯示在該域上的可選標籤
value 用於編輯​​的值
返回:Rect –用戶輸入的值描述:製作一個XY W&H域以便輸入一個Rect
◆ static function Slider (position : Rect, value : float, leftValue : float, rightValue : float) : float
◆ static function Slider (position : Rect, label : string, value : float, leftValue : float, rightValue : float) : float
◆ static function Slider (position : Rect, label : GUIContent, value : float, leftValue : float, rightValue : float) : float
參數
position
屏幕上用於滑竿的矩形區域
label 該滑竿前面可選的標籤
value 滑竿顯示的值。這個決定可拖動滑塊的位置。 .
leftValue 滑竿左端的值.
rightValue 滑竿右端的值
返回:float- 被用戶設置的值
描述:一個用戶可以拖動的滑竿,可以在min和max之間改變的一個值
◆ static function TagField (position : Rect, tag : string, style : GUIStyle = EditorStyles.popup) : string
◆ static function TagField (position : Rect, label : string, tag : string, style : GUIStyle = EditorStyles.popup) : string
◆ static function TagField (position : Rect, label : GUIContent, tag : string, style : GUIStyle = EditorStyles.popup) : string
參數
position
屏幕上用於域的矩形區域
label 該域前面可選的標籤
tag 該域​​顯示的標籤
style 可選的GUIStyle
返回:string- 用​​戶選擇的標籤
描述:製作一個標籤選擇域
◆ static function TextArea (position : Rect, text : string, style : GUIStyle = EditorStyles.textField) : string
參數
position
屏幕上用於文本的矩形區域
text 用於編輯​​的文本
style 可選的GUIStyle. 返回:string- 用​​戶輸入的文本
描述:製作一個文本域
這個就像GUITextField一樣,但是正確的響應全選,拷貝,粘貼等,在編輯器中。
◆ static function TextField (position : Rect, text : string, style : GUIStyle = EditorStyles.textField) : string
◆ static function TextField (position : Rect, label : string, text : string, style : GUIStyle = EditorStyles.textField) : string
◆ static function TextField (position : Rect, label : GUIContent, text : string, style : GUIStyle = EditorStyles.textField) : string
參數
position 屏幕上用於開關的矩形區域.
label 顯示在該文本域前面的可選標籤
text 用於編輯​​的文本.
Style 可選的GUIStyle
返回:string- 用​​戶輸入的文本
描述:製作一個文本域
這個就像GUITextField,但是正確的響應所有選擇,拷貝,粘貼等等,在編輯器中,可以有一個可選的標籤在前面。
◆ static function Toggle (position : Rect, value : bool) : bool
◆ static function Toggle (position : Rect, label : string, value : bool) : bool
◆ static function Toggle (position : Rect, label : GUIContent, value : bool) : bool
參數
position 屏幕上用於開關的矩形區域.
label 該開關前面可選的標籤
value 這個開關的顯示狀態
返回:bool – 這個開關的顯示狀態
描述:製作一個開關
static function Vector2Field (position : Rect, label : string, value : Vector2) : Vector2
參數
position 屏幕上用於域的矩形區域
label 顯示在該域上的標籤
value 用於編輯​​的值
返回:Vector2- 用戶輸入的值
描述:為Vector2製作一個X,Y域
◆ static function Vector3Field (position : Rect, label : string, value : Vector3) : Vector3
參數
position 屏幕上用於域的矩形區域
label 顯示在該域上的標籤
value 用於編輯​​的值
返回:Vector3 – 用戶輸入的值
描述:製作一個X,YZ域以便輸入一個Vector3
◆ static function Vector4Field (position : Rect, label : string, value : Vector4) : Vector4
參數
position 屏幕上用於域的矩形區域
label 顯示在該域上的標籤
value 用於編輯​​的值
返回:Vector4 – 用戶輸入的值
描述:製作一個X,Y Z&W域以便輸入一個Vector4
EditorPrefs

在儲存並訪問Unity編輯器的首選項
注意:這是一個編輯器類,為了使用它你必須房子腳本到工程文件夾的Assets/Editor
描述:設置由Key確定的值
描述:設置由Key確定的值
EditorStyles

用於EditorGUI控件的通用GUIStyle通過調用EditorGUIUtility.LookLikeInspector和EditorGUIUtility.LookLikeControls.來設置
注意:這是一個編輯器類,為了使用它你必須設置腳本的工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using UnityEditor;"
類變量
Label 用於所有EditorGUI前部標籤的風格
textField 用於EditorGUI.TextField的風格
popup 用於EditorGUI.Popup, EditorGUI.EnumPopup的風格
structHeadingLabel 用於結構標題的風格(Vector3,Rect,等)
objectField 用於對象域標題的風格
objectFieldThunmb 用於對象域中選擇按鈕標題的風格
colorField 用於顏色域標題的風格
layerMaskField 用於層蒙板標題的風格
toggle 用於EditorGUI.Toggle的風格
foldout 用於EditorGUI.Foldout的風格
toggleGroup 用於EditorGUILayout.BeginToggleGroup.的風格
standardFont 標準字體
boldFont 黑體字體
EditorUtility

編輯器工具函數
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editior中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”using UnityEditor”
類方法
◆ Static function ClearProgressBar():void
描述:移除工具條
參見:DisplayPrograssBar函數
◆ Static function CloneComponent(c:Component):Component
描述:複製一個組件
◆ Static function CollectDependencies(roots:Object[]):Object[]
描述:計算並返回所有roots依賴的資源
◆ Static function CreateEmptyPrefab(path:srting):Object
描述:在路勁上創建一個空的預設,如果在路徑上已經有一個預設,他將被刪除並用一個空的預設替換
返回該預設的一個引用
◆ Static functionCreateGameObjectWithHideFlags(name:string,flags:HideFlags,prarmscomponents:Type[]):GameObject
描述:創建一個遊戲物體並附​​加特定的組件
◆ staticfunctionDisplayDialog(title:string,massage:srting,o​​k:string,cancel:srting=””):bool
描述:顯示一個模式對話框
使用它來在編輯器中顯示信息框
Ok和cancel是顯示在對話框按鈕上的標籤,如果cancel是空(默認),那麼只有一個按鈕被顯示,如果OK按鈕被按下DisplayDialog返回true
◆ staticfunctionDisplayDialogComplex(title:srting,massage:string,o​​k:srting,cancel:string,alt:string):int
描述:顯示一個帶有三個按鈕的模式對話框
使用它來在編輯器中顯示信息框
與DisplayDialog類似,只是這個版本顯示帶有三個按鈕的對話框,ok,cancel和alt是顯示在按鈕上的標籤,DisplayDDialogComplex返回一個證書,0,1和2對應的ok,cancel和alt按鈕
◆ Static function DisplayPopupMenu(position:Rect,menuItemPath:string,command:MenuCommand):void
描述 顯示一個彈出菜單
菜單顯示在pos處,從一個由menuItemPath指定的子菜單生成,使用MenuCommand作為菜單上下文
var evt = Event.current;
var contextRect = Rect(10,10,100,100);
if(evt.type == EventType.ContextClick)
{
var mousePos = evt.mousePosition;
if (contextRect.Contains (mousePos)) {
EditorUtility.DisplayPopupMenu
(Rect (mousePos.x,mousePos.y,0,0), "Assets/", null);
evt.Use();
}
}
◆ static function DisplayProgressBar (title : string, info : string, progress : float) : void
描述:顯示或更新一個進度條
窗體標題欄被設置為title信息被設置為info.進度應該被設置為0.0到1.0之間的值,0表示沒有做任何事,1.0意味著100%完成
在編輯器腳本或嚮導中執行任何長的操作並想通知用戶關於這個操作的進度時,這個是非常有用的!
參見:ClearProgressBar函數
◆ static function ExtractOggFile (obj : Object, path : string) : bool
描述:在路徑處找到一個資源
路徑名必須包含文件擴展名,它不應該用”Assets”做前綴,這個只返回在工程試圖中可見的資源
參見GetAssetPath函數
◆ static function FormatBytes (bytes : int) : string
描述:將字節數返回為一個文本
print (EditorUtility.FormatBytes(100)); // prints "100 bytes"
print (EditorUtility.FormatBytes(2048));
// prints "2.0 KB"
Static function GetAssetPath(asset: Objct):string\
描述:返回一個資源的路徑名
與EditonUityFindAssent相反
參見:GetAssentPath函數
◆ Function GetDsconnectedPrefabParent(source: Object):Object
描述:返回source最後鏈接到遊戲物體父,如果沒有返回null
Static function GetObjectEnabled(target: Object):int
描述:物體是否啟用(0 禁用1 啟用-1 沒有啟用按鈕)
◆ Static function GetPrefabParent(source:Object):Object
描述:返回source的遊戲物體父,如果沒有發現返回null
◆ Static function GetPrefabType(targe:Object):Prelabtype
描述:
◆ Static function InstanceIDtoObject(instanceID:int):Object
描述:轉化實例ID為對象的引用
如果對像沒有從磁盤加載,加載它
◆ Static function InstantiatePrefab(target:Object):Object
描述:實例化給定預設
這個累死與Instantiated但它創建一個到預設的預設連接
◆ Static function IsPersistent(target:Object):bool
描述:決定一個對像是否存儲在磁盤上,典型資源如:預設,紋理,音頻剪輯,動畫,材質
如果一個物體在場景中返回假,典型的如一個遊戲物體成組,但是它也可以是一個從代碼中創建的材質,而且該材質沒有存儲在資源中而是存儲在場景中!
◆ Stiatc function OpenFilePanel(title:string directory:srring,exlension:string):string
描述,顯示“打開文件”對話框並返回選中的路徑名
參見SaveFilePanel函數
static function ReconnectToLastPrefab (go : GameObject) : bool
描述
◆ StaticfunctionReplacePrefab(go:Gam​​eObject,targetPrefab:Object,connecToPrefab:bool=false):GameObject
描述:用一個遊戲物體GO替換targetPetPrefab
◆ static function SaveFilePanel (title : string, directory : string, defaultName : string,
◆ extension : string) : string
描述:顯示“保存文件”對話框並返回選中的路徑名
參見:OpenFilePanel函數
◆ static function SetDirty (target : Object) : void
描述:標記target物體為臟
Unity內部使用臟標記來查看資源何時被改變,並被保存到硬盤上,例如,如果你改變一個預設的MonoBehaviour或ScriptabieObject變量,你必須告訴Unity這個值被改變了,Unity內置組件內會在一個屬性改變後調用SetDirty,MonoBehaviour或ScriprableObject不會自動調用,因此如果你想改變的值被保存,你需要調用SetDirty
◆ static function SetObjectEnabled (target : Object, enabled : bool) : void
描述:設置物體的啟用狀態
◆ Static function SmartResetGameObjectToPrefabState(go:Gam​​eObject):bool
描述
◆ Static functionSmartResetToPrefabState(obj:Object):bool
描述
EditorWindow
類:繼承自ScriptableObject
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中,編輯器類位於UnityEditor命名空間此對於C#腳本你需要在腳本開始位置添加“usingUnityEditor”
創建你自己的自定義窗口,可以自由的浮動並描寫,就像Unity自身的窗口一樣
編輯器窗口典型地使用一個菜單項打開
JAVAScript例子
class MyWindow extends EditorWindow {
var myString = "Hello
World";
var groupEnabled = false;
var myBool =
true;
var myFloat = 1.23;
// Add menu named "My Window" to the Window menu
@MenuItem ("Window/My
Window")
static function Init () {
// Get
existing open window or if none, make a new one:
var window : MyWindow
= EditorWindow.GetWindow
(MyWindow);
window.Show ();
function OnGUI () {
GUILayout.Label ("Base Settings", EditorStyles.boldLabel);
myString = EditorGUILayout.TextField
("Text Field", myString);
groupEnabled = EditorGUILayout.BeginToggleGroup
("Optional Settings", groupEnabled);
myBool = EditorGUILayout.Toggle
("Toggle", myBool);
myFloat = EditorGUILayout.Slider
("Slider", myFloat, -3, 3);
EditorGUILayout.EndToggleGroup
C#例子
using UnityEngine;
using UnityEditor;
public
class MyWindow : EditorWindow {
string myString = "Hello
World";
bool groupEnabled;
bool myBool = true;
float myFloat = 1.23f;
//
Add menu named "My Window" to the Window menu
[MenuItem ("Window/My
Window")]
static void Init () {
// Get existing
open window or if none, make a new one:
MyWindow window = (MyWindow)EditorWindow.GetWindow (typeof
(MyWindow));
window.Show ();
}
void
OnGUI () {
GUILayout.Label ("Base Settings", EditorStyles.boldLabel);
myString
= EditorGUILayout.TextField
("Text Field", myString);
groupEnabled = EditorGUILayout.BeginToggleGroup
("Optional Settings", groupEnabled);
myBool = EditorGUILayout.Toggle
("Toggle", myBool);
myFloat = EditorGUILayout.Slider
("Slider", myFloat, -3, 3);
EditorGUILayout.EndToggleGroup
();
}
}
變量
◆ Var autoRepaintOnSceneChange:bool
描述:當場景更新時窗口自動重繪嗎?
◆ Var position:Rect
描述:屏幕上的像素位置
設置這個將更鎖定的窗口解鎖定
◆ Var wantsMouseMove:bool
描述:在這個編輯器窗口中的GUI需要MouseMove事件嗎?
函數
◆ Function Close():void
描述:關閉編輯器窗口
這將銷毀編輯器窗口
◆ Function Focus()”void
描述:移動鍵盤焦點到這個EditorWindow
參見:focusWindow
Function Repaint():void
描述:使窗口重繪
◆ Function SendEvent(e:Event):bool
描述:發送一個事件到窗口
Var win:
EditorWindow
//發送一個粘貼事件到EditorWindow,就像從Edit菜單中選擇Paste
◆ Function Show (immediateDisplay:bool=false):void
描述:顯示編輯器窗口
Function Show Unity():void
描述:EditorWindow顯示為一個浮動工具窗口
工具窗口總是在普通窗口的前面,並且當用戶切換到其他應用程序時被隱藏。
//MyWindow是EditorWindow的簽名
Varwindow:MyWindow=new MyWindow():
Window.ShowUtility():
消息傳遞
◆ Function OnDestroy():void
描述:當窗口被關閉時調用
◆ Funciton OnGUI():void
描述:在這裡實現你自己的GUI
◆ Function OnFocus():void
描述:當窗體獲得鍵盤焦點時調用
◆ Function OnHierarchyWindowChange():void
描述:當場景層次改變時被調用
當transform.parent改變,gameObject.name創建一個新遊戲物體時,等等
◆ Function OnInspectorUpdate():void
描述:OnInspectorUpdate以10幀每秒被調用,以便給檢視面板更新的機會
◆ Function OnLostFocus():void
描述:當窗體失去鍵盤焦點時被調用
◆ Function OnProjectWindowChange():void
描述:當選擇改變時被調用
◆ Function Update():void
描述:在所有可視的窗口z中每秒被調用100次
類變量
◆ Static var focusedWindow:EditorWindow
描述:哪個編輯器窗體當前具有焦點(只讀)
如果沒有窗體具有焦點/focusedWindow/可為null
參見:mostseOverWindow,Focus
◆ Static var mouseOverWindow:EditorWindow
描述:那個編輯器窗體當前位於鼠標之下(只讀)
如果沒有窗體位於鼠標之下/mouseOverWindow/可為null
參見:focusedWindow
類函數
◆ Static function GetWindow(t:System,Type,utility:bool=false,title,string null):
EditorWindow
t 窗體的類型,必須從EditorWindow派生
utility 設置這個為真以便創建一個浮動的窗體,如果為假將創建一個普通窗體
title 如果GetWindow創建一個新的窗體,它將使用這個標題,如果這個值為null,使用類作為標題
描述:返回當前屏幕上第一個類型為T的EditorWindow
◆ StaticfunctionGetWindowWithRect(t:System.Type,reet:Rect,utility:bool=falsei,title:string=null):EditorWindow
參數
T 窗體的類型,必須從EditorWindow派生
Rect 新創建的窗體將顯示在屏幕上的位置
Utility 設置這個為真以便創建一個浮動的窗體,如果為假將創建一個普通窗體
Title 如果GetWindow創建一個新的窗體,它將使用這個標題,如果這個值為null,使用類名作為標題
描述:返回當前屏幕上第一個類型為t的EditorWindow
如果沒有,在位置rect創建並顯示新窗體然後返回它的實例
繼承的成員
繼承的變量
Name 對象的名稱
hideFlags 該物體是否被隱蔽,保存在場景中或被用戶修改
繼承的函數
GetInstanceID 返回該物體的實例id
繼承的消息傳遞
OnFnable 物體被加載時調用該函數
OnDisable 當可編程物體超出範圍時調用這個函數
繼承的類函數
CreateInstance 使用className創建一個可編程物體的實例
Operator bool 這個物體存在嗎
Instantiate 克隆original物體並返回這個克隆
Destroy 移除一個遊戲物體,組件或資源
DestroyImmediate 立即銷毀物體obj.強烈建議使用Destroy代替
FindObjectsOftype 返回所有類型為type的激活物體
FindObjectOfType 返回第一個類型為type的激活物體
Operator 比較兩個物體是否相同
Operator 比較兩個物體是否不相同
DontDestroyOnLoad 加載新場景時確保物體target不被自動銷毀
FileUtil

注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”usingUnityEditor”
類方法
◆ Static function CopyFileOrDirectory(from:string,to:string):void
描述:
Static function CopyFileOrDirectoryFollowSymlinks(from:string,to:string):void
描述:
◆ Static function DeleteFileOrDirectory(path:string):bool
描述
◆ Static function MoveFileOrDirectory(from:string,to:string):void
描述
HandleUtility

用於場景試圖類型3DGUI的輔助函數
注意,這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”usingUnityEditor”
類變量
◆ Static var acccleration:float
描述:為拖動值獲取一個標準的加速度(只讀)
通常的加速度為1.0 當shift被按下,它是4.0 當ALT被按下,加速度是0.25
參見:niceMouseDalta
◆ Static var handleMaterial:Matenal
描述:
◆ Static var nearestControl:int
描述
◆ Static var niceMouseDelta:float
描述:取一個好的鼠標增值用於拖動浮點數(只讀)
這將自動檢測用戶對X/Y軸拖動的設置並返回一個相應的浮點數,這個也可以正確的處理調整鍵,該增值已經被乘
參見:
◆ Static var niceMouseDeltaZoom:float
描述:取一個好的鼠標增值用於縮放(只讀)
這將自動檢測用戶對X/Y軸拖動的設置並返回一個相應的浮點數,這個也可以正確的處理調整鍵,該增值已經被乘
參見:
類方法
◆ static function AddControl(controlld:int,distance:float):void
描述:記錄一個從手柄到這裡的距離
所有的手柄在佈局時,使用它們的controIID調用這個,然後使用nearestControl來檢查它們是否得到mouseDown
◆ Static function AddDefaultControl(controlld:int):void
描述:為一個默認的控件添加ID,如果沒有其他被選擇,這個將被選中
◆ StaticfunctionCalcLineTranslation(src:vector2,dest:vector2.srcPosition:Vector3.constraintDir:Vector3):float
參數
Sre 拖動的源點
Dest 拖動的目標點
srcPosition 在sre射線上拖動物體的3D位置
constraintDir 約束移動的3D方向
返回:float-沿著constraintDir移動的距離
Staic function ClosestPointToAre(center:Vector3,normal:Vector3,from:Vector3,angle:float,rablus:float):Vector3
描述:獲取最接近的3D點
◆ Static function ClosetPointToDise(center:Vector3,normal:Vector3,radius:float):Vector3
描述:獲取最接近的3D點
◆ Static function ClosestPointToPolyLine(params vertices:Vector3):Vector3
描述:獲取最接近的3D點
◆ static function DistancePointLine (point : Vector3, lineStart : Vector3, lineEnd : Vector3) : float
描述:計算點和線之間的距離
參見:ProjectPointLine
◆ static function DistanceToArc (center : Vector3, normal : Vector3, from : Vector3, angle : float, radius : float) : float
描述:從鼠標指針到圓盤3D部分的距離
在計算鼠標指針到圓盤部分的屏幕空間距離,這個圓盤在世界空間的position的位置上,並有給定的radius和normal圓盤部分由from向量和angle角度定義
參見:DistanceToDisc, DistanceToCircle.
◆ static function DistanceToCircle (position : Vector3, radius : float) : float
描述:從鼠標指針到相機朝向的圓的像素距離
在計算鼠標指針到圓的屏幕空間距離,這個圓在世界空間的position的位置上,並有給定的radius,該圓被假定是朝向相機的
使用當前相機定義距離
參見:DistanceToDise
◆ static function DistanceToDisc (center : Vector3, normal : Vector3, radius : float) : float
描述:從鼠標指針到一個3D圓盤的像素距離
在計算鼠標指針到圓盤(圓)的屏幕空間距離,這個圓盤(圓)在世界空間的position的位置上,並有給定的radius和normal
使用當前相機定義距離
參見:DistancetoCircle
◆ static function DistanceToLine (p1 : Vector3, p2 : Vector3) : float
描述:從鼠標指針到一個直線的像素距離
計算從鼠標指針到一條直線的距離空間距離,該直線從p1到p2世界空間點,使用當前相機定義距離
◆ static function DistanceToPolyLine (params points : Vector3[]) : float
描述:從鼠標指針到一個折線的像素距離
計算從鼠標指針到穿過給定世界空間點的多段直線的屏幕空間距離
使用當前相機定義距離
參見:DistanceToLine
◆ Static function FindPrefabRoot(source:GameObject):GameObject
描述:輔助函數用來周到一個物體的預設根(用來精確的選擇)
◆ Static function GetHandleSize(position:Vector3):float
描述:在給定的位置上獲取操作器手柄的世界空間尺寸
使用當前相機計算何時的尺寸
◆ Static function GUIPointToWorldRay(position:Vector2):Ray
描述:轉化2DGUI位置到一個世界空間射線
使用當前相機計算射線
參見:WorldToGUIPoint
◆ Static function PickGameObject(position:Vector2):GameObject
描述:
◆ Static function PopCamera(camera:Camera):void
描述:取回所有的相機設置
◆ Static function ProjectPointLine(point:Vector3,lineStart:Vector3,lineEnd:Vector3):Vector3
描述:投影point到一個直線
參見:DistancePointLine
◆ Static function PushCamera(camera:Camera):void
描述:
保存所有的相機設置
◆ Static function RaySnap(ray:Ray):object
返回:object 一個裝箱的RaycastHit,如果沒有碰到它為null
描述:當raysnapping時忽略的物體(典型的是當物體被手柄拖動的時候)
朝著屏幕投射ray
◆ Static function Repaint():void
描述:重繪當前試圖
◆ Static function WorldPointToSizedReet(position:Vector3,content:GUIContent,style:GUIStyle):Rect
參數
Position 使用的世界空間位置
Content 讓出空間顯示的內容
Style 使用的風格,該風格的對齊
描述:在3D空間中製定一個矩形來顯示一個2DGUI元素
◆ Static function WorldToGUIPoint(world:Vector3):Vector2
描述:轉化世界空間點到2DGUI位置
使用當前相機計算投影
參見:GUIPointToWorldRay
Handles

各種繪製物
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”using UnityEditor
變量
◆ Var currentCamera:Camera
描述:用來決定3D處理結束的相機
類變量
◆ Static var color:Color
描述:handles的顏色
◆ Static var lighting:bool
描述:在處理光照?
類方法
◆ Static function BeginGUI():void
描述:在3DhandleGUI中開始一個2DGUI塊
在當前處理相機的頂部開始一個2DGUI塊
參考:EndGUI
◆ Static function BeginGUI(position:Rect):void
描述:在3DhandleGUI中開始一個2DGUI塊
用來製作一個輸入GUI
參考:EndGUI
◆ Static function Button(position:Vector3,direction:Quaternion,size:float,pickSize:float,capFune:Handles,DrawCapFunction):bool
描述:製作一個3D按鈕
這個就像一個普通的GUIButton,但是它有一個3D位置並通過一個處理函數繪製。
◆ Static function ClearCamera(position:Rect,camera:Camera):void
描述:
◆ static function Disc (rotation : Quaternion, position : Vector3, axis : Vector3, size : float,cutoffPlane : bool, snap : float) : Quaternion
參數
rotation 圓盤的旋轉
position 圓盤的中心
axis 旋轉的軸
size 在世界空間中圓盤的尺寸參考:HandleUtility.GetHandleSizecutoffPlane 如果為真,之後前半部分的圓被繪製/可拖動,當你用許多重疊的旋轉軸時(就像在默認的旋轉工具中一樣) ,這個可用來避免混亂!
描述:製作一個可以用鼠標拖動的3D圓盤
◆ static function DrawArrow (controlID : int, position : Vector3, rotation : Quaternion, size : float) : void
描述:繪製一個像移動工具使用箭頭!
◆ static function DrawCamera (position : Rect, camera : Camera, renderMode : int) : void
參數
Position 在GUI坐標下繪製這個相機的區域
Camera 需要繪製的相機
描述:在矩形內繪製一個相機
這個函數也設置Camera.current為camera,並設置它的pixelrect
◆ static function DrawCone (controlID : int, position : Vector3, rotation : Quaternion, size : float) : void
描述:繪製一個球體,傳遞這個到處理函數
◆ static function DrawCube (controlID : int, position : Vector3, rotation : Quaternion, size : float) : void
描述:繪製以立方體,傳遞這個到處理函數
◆ static function DrawCylinder (controlID : int, position : Vector3, rotation : Quaternion, size : float) : void
描述:繪製一個圓柱,傳遞這個到處理函數
◆ static function DrawLine (p1 : Vector3, p2 : Vector3) : void
描述:從p1到p2繪製線
◆ static function DrawPolyLine (params points : Vector3[]) : void
描述:繪製穿過points列表中所有點的線
◆ static function DrawRectangle (controlID : int, position : Vector3, rotation : Quaternion, size : float) : void
描述:繪製一個朝向相機的矩形,傳遞這個到處理函數
◆ static function DrawSolidArc (center : Vector3, normal : Vector3, from : Vector3, angle : float, radius : float) : void
參數
center 圓的中心
normal 圓的法線
from 圓周上點的方向,相對於中心,區域開始的位置
angle 扇形的角度
radius 圓的半徑
描述:在3D空間中繪製一個圓的區域(餅狀)
◆ static function DrawSolidDisc (center : Vector3, normal : Vector3, radius : float) : void
參數
center 圓盤的中心
normal 圓盤的法線
radius 圓盤的半徑
描述:在3D空間中繪製一個平的實體圓盤
◆ static function DrawSphere (controlID : int, position : Vector3, rotation : Quaternion, size : float) : void
描述:繪製一個球體,傳遞這個到處理函數
◆ static function DrawWireArc (center : Vector3, normal : Vector3, from : Vector3, angle : float, radius :float) : void
參數
center 圓的中心
normal 圓的法線
from 圓周上點的方向,相對於中心,圓弧開始的位置
angle 圓弧的角度
radius 圓的半徑
描述:在3D空間繪製一個圓弧
◆ static function DrawWireDisc (center : Vector3, normal : Vector3, radius : float) : void
參數
center 圓盤的中心
normal 圓盤的法線
radius 圓盤的半徑
描述:在3D空間中繪製一個平的圓盤輪廓
◆ static function EndGUI () : void
描述:結束2DGUI塊並返回主3D句柄類型
需要,是它正確地從相機恢復
◆ static function FreeMoveHandle (position : Vector3, rotation : Quaternion, size : float
snap : Vector3, capFunc : DrawCapFunction) : Vector3
參數
position 手柄的位置
rotation 手柄的旋轉,這個可以用raysnapping改變
size 手柄的尺寸
capFunc 這個函數用來繪製手柄,例如Handles.DrawRectangle描述:製作一個未約束耳朵移動手柄
這個可以在所有方向上移動,在場景中按下CMD以便raysnap碰撞器
static function FreeRotateHandle (rotation : Quaternion, position : Vector3, size : float) : Quaternion
描述:
◆ static function Label (position : Vector3, text : string) : void
◆ static function Label (position : Vector3, image : Texture) : void
◆ static function Label (position : Vector3, content : GUIContent) : void
◆ static function Label (position : Vector3, text : string, style : GUIStyle) : void
◆ static function Label (position : Vector3, content : GUIContent, style : GUIStyle) : void
參數
position 3D空間中的位置就像從當前處理相機中看到的一樣
text 顯示在該標籤上的文本
image 顯示在標籤上的紋理
content 用於這個標籤的文本,圖形和提示
style 使用的風格,如果不設置,將使用當前的GUISkin的label
描述:在3D空間中製作一個定位文本標籤
標籤沒有用戶​​交互,不會獲取鼠標點擊並總是以普通風格渲染,如果你想製作一個可視化響應用戶輸入的空間,使用一個BOX空間
◆ static function PositionHandle (position : Vector3) : Vector3
◆ static function PositionHandle (position : Vector3, rotation : Quaternion) : Vector3
參數
rotation 手柄的朝向,如果提供,它將決定位置手柄的朝向,這個能夠通過snapping改變,因此它必須是一個引用
position 在3D空間中手柄的中心
返回:Vector3 修改過的旋轉
描述:製作一個3D場景視位置句柄
就像內置的移動哦給你根據一樣工作,如果你已經賦值了某些東西到Undo.SetSnapshotInfo,它將完全可以Undo,如果你已經賦了一個非Null值到ignoreRaycastObjects,居中手柄將安全支持raycast定位
◆ static function RotationHandle (rotation : Quaternion, position : Vector3) : Quaternion
參數
rotation 手柄的朝向
position 在3D空間中手柄的中心
返回:Quaternion修改後的旋轉
描述:製作一個3D場景視旋轉手柄
就像內置的旋轉工具一樣工作,如果你已經賦值了某些東西到Undo.SetSnapshotInfob,它將完全可以Undo
◆ static function ScaleHandle (scale : Vector3, position : Vector3, rotation : Quaternion, size : float) : Vector3
參數
scale 縮放調整
position 手柄的位置
rotation 手柄的旋轉
返回:Vector3 新縮放向量
描述:製作一個3D場景視縮放手柄
就像內置的縮放工具一樣工作
static function ScaleSlider (scale : float, position : Vector3, direction : Vector3, rotation : Quaternion, size : float, snap : float) : float
參數
scale 用戶可以修改的值
position 手柄的位置
direction 手柄的方向
rotation 整個物體的旋轉
size 手柄的尺寸
snap 用戶修改它後的新值
描述:製作一個方向縮放滑塊
◆ static function ScaleValueHandle (value : float, position : Vector3, rotation : Quaternion, size : float, capFunc : DrawCapFunction, snap : float) : float
參數
value 用戶可以修改的值
position 手柄的位置
rotation 手柄的旋轉
size 手柄的尺寸
Snap 用戶修改它後的新值
描述:製作一個可拖動浮點數的手柄
這個用來製作中心縮放手柄,用戶可以點擊並上下拖動一個浮點值
◆ static function SetCamera (camera : Camera) : void
◆ static function SetCamera (position : Rect, camera : Camera) : void
描述:設置當前相機,這樣所有的手柄和Gizmos都和用它的設置來繪製
設置Cameracurrent為camera並設置它的pixeRect這個不繪製相機,只設置它為
激活,使用DrawCamera.繪製它,它也為手柄工具函數設置Event.current.mouseRay和Event.current.lastMouseRay
◆ static function Slider (position : Vector3, direction : Vector3) : Vector3
◆ static function Slider (position : Vector3, direction : Vector3, size : float, drawFunc :DrawCapFunction, snap : float) : Vector3
參數
position 當前點的位置
direction 滑動的方向
float 手柄的3D尺寸HandleUtility.GetHandleSize(位置)drawFunc 調用這個函數來實際繪製,默認地,它的Handles.DrawArrowc但是可以使用任何具有相同名稱的函數
描述:製作一個3D滑塊
這將在屏幕上繪製一個3D可拖動的手柄,這個手柄被約束為沿著3D空間中一個方向向量滑動
Help
用來訪問Unity文檔的輔助類
注意,這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加“usingUnityEditor”
類方法
◆ Static function BrowseURL.(url:string):void
描述:在默認瀏覽器中打開url
◆ Static function HasHelpForObject(obj:Object):bool
描述:這個對像有幫助文件嗎?
◆ Static function ShowHelpForObject(obj:Object):void
描述:為這個物體顯示幫助文件
◆ Static function ShowHelpPage(page:string):void
描述:顯示幫助頁
Page應該是幫助頁的URL,通常用file://開頭,如果page用file:///unity/開始,然後它指向Unity半年關注。
//打開腳本參考
Help.ShowHelpPage ("file:///unity/ScriptReference/index.html");
參見:Help.ShowHelpForObject
MenuCommand

用來為一個MenuItem提取向下問,MenuCommand對像被傳遞到自定義菜單項函數中,這個函數是使用MenuItem屬性定義的
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”usingUnityEditor
// 添加名為 "Do Something" 的上下文菜單
@MenuItem ("CONTEXT/Rigidbody/Do
Something")
static function DoSomething (command : MenuCommand) {
var body : Rigidbody = command.context;
body.mass = 5;
}
變量
◆ Var context:Object
描述:上下文是菜單命令的目標對象
通常調用上下文菜單時,上下文是當前選擇的或鼠標之下的項目
◆ Var userData:int
描述:一個整數用於傳遞自定義信息到一個菜單項
構造函數
◆ static function MenuCommand (inContext : Object, inUserData : int) : MenuCommand
描述:創建一個新的MenuCommand對象
上下文和用戶數據將被分別用inContext和inUserdata初始化
◆ static function MenuCommand (inContext : Object) : MenuCommand
描述:創建一個新的MenuCommand對象
上下文將被初始化為inContext用戶數據將被設置為0
MenuItem
類,繼承自System.Aunbute
MenuItem屬性允許你添加菜單項到主菜單和檢視面板的上下文菜單

注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”using UnityEditor”
MenuItem屬性轉化任何靜態函數為一個菜單命名,只有靜態函數可以使用MenuItem屬性
為了創建一個熱鍵你可以使用下面的特殊字符:%(cmd),#(shift),&(ait),^(control), (no key modifiers).例如為了創建一個具有熱鍵cmd-alt- g的菜單使用“GameObject/DoSomething%&g”為了創建一個具有熱鍵g並不包含功能鍵的菜單使用”GameObject/DoSomething_g”
// JavaScript example:
// Add menu named "Do
Something" to the main menu
@MenuItem ("GameObject/Do Something")
static function DoSomething () {
Debug.Log ("Perform operation");
}
// Validate the menu item.
// The item will be disabled
@MenuItem ("GameObject/Do Something", true)
static function ValidateDoSomething () {
return Selection.activeTransform != null;
}
// Add menu named "Do Something" to
//
and give it a shortcut (ctrl-o on Windows, cmd-o on OS X).
@MenuItem ("GameObject/Do Something %o")static function DoSomething () {
Debug.Log ("Perform operation");
}
// 添加名為 "Do Something"的上下文菜單
@MenuItem ("CONTEXT/Rigidbody/Do Something")
static function DoSomething (command:MenuCommand) {
var body : Rigidbody = command.context;
body.mass =
5;
}
// C# 例子
using UnityEditor;
using UnityEngine;
class MenuTest : MonoBehaviour {
// 添加名為"Do Something" 的菜單到主菜單
[MenuItem ("GameObject/Do Something")]
static void DoSomething () {
Debug.Log ("Perform operation");
}
// Validate the menu item.
// The item will be disabled
if no transform is selected.
[MenuItem
("GameObject/Do Something", true)]
static bool
ValidateDoSomething () {
return Selection.activeTransform
!= null;
}
// Add menu named "Do Something" to
the main menu
//
and give it a shortcut (ctrl-o on Windows, cmd-o on OS X).
[MenuItem ("GameObject/Do Something %o")]
static void DoSomething ()
{
Debug.Log ("Perform operation");
}
// Add context menu named "Do Something" to rigid body's
context menu
[MenuItem ("CONTEXT/Rigidbody/Do Something")]
static void DoSomething
(MenuCommand command) {
Rigidbody body = (Rigidbody)command.context;
body.mass =
5;
}
}
構造函數
◆ static function MenuItem (itemName : string, isValidateFunction : bool, priority : int) : MenuItem
描述:創建一個菜單項,當這個菜單項被選中的時候調用跟隨它的靜態函數
itemName是像一個路徑名一樣的表示,例如”GameObject/Do Something”如果isValidateFunction為真,這是一個驗證函數並將在調用具有同名的菜單函數之前被調用Priority定義了菜單項顯示在菜單欄中的順序
◆ static function MenuItem (itemName : string, isValidateFunction : bool) : MenuItem
描述:創建一個菜單項,當這個菜單被選中的時候調用跟隨它的靜態函數
itemName是像一個路徑名一樣的表示,例如”GameObject/Do Something”如果isValidateFunction為真,這是一個驗證函數並將在調用具有同名的菜單函數之前被調用
◆ static function MenuItem (itemName : string) : MenuItem
描述:創建一個菜單項,當這個菜單項被選中的時候調用跟隨它的靜態函數
itemName為像路徑名一樣表示的菜單項,例如”GameObject/Do Something”
ModeIImporterClipAnimation

風格動畫得到的動畫剪輯
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”usingUnityEditor”
參見:ModeIImporterClipAnimation
變量
◆ Var firstFrame:int
描述:剪輯的第一幀
◆ Var lastFrame:int
描述:剪輯的最後一幀
◆ Var loop:bool
描述:剪輯是一個循環動畫?
◆ Var name:string
描述:剪輯名稱
MonoScript
類,繼承自TextAsset
表示腳本資源
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”usingUnityEditor”
這個類表示存儲在工程中的C#,javaScript和Boo文件
函數
function GetClass () : System.Type
描述:返回由這個腳本實現的類的System.Type對象
繼承的成員
繼承的變量
Text .txt文件的文本內容作為一個字符串
Bytes 文本資源的原始字節
Name 對象的名稱
hideFlags 該物體是否隱蔽,保存在場景中或被用戶修改
繼承的函數
GetInstanceID 返回該物體的實例id
繼承的類函數
operator bool 這個物體存在嗎
Instantiate 克隆original物體並返回這個克隆.
Destroy 移除一個遊戲物體,組件或資源
DestroyImmediate 立即銷毀物體obj,強烈建議使用Destroy代替
FindObjectsOfType 返回所有類型為type的激活物件
FindObjectOfType 返回第一個類型為type的激活物體
operator == 比較兩個物體是否相同
operator != 比較兩個物體是否不相同
DontDestroyOnLoad 加載新場景時確保物體target不被自動銷毀
MovieImporter
類,繼承自AssetImporter
用於導入視頻紋理的資源導入器
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”using UnityEditor”
變量
Var duration:float
描述
可被導入的視頻的秒數
Var quality:float
描述:導入視頻時的質量設置:這是一個從0到1的浮點數
0用來最大的壓縮以便得到最小的下載尺寸,1用於做好的質量,導致較大的文件,這個直線對應與視頻導入期檢視面板中滑竿的值,默認值為.5
繼承的成員
繼承的變量
assetPath 用於該導入器的資源的路徑名(只讀)
name 對象的名稱
hideFlags 該物體是否被隱蔽,保存在場景中或被用戶修改?
繼承的函數
GetInstanceID 返回該物體的實例id
繼承的類函數
GetAtPath 為path處的資源取回資源導入器
operator bool 這個物體存在嗎
Instantiate 克隆original物體並返回這個克隆
Destroy 移除一個遊戲物體,組件或資源
DestroyImmediate 立即銷毀物體obj,強烈建議使用Destroy代替
FindObjectsOfType 返回所有類型為type的激活物體
FindObjectOfType 返回第一個類型為type的激活物體
operator == 比較兩個物體是否相同
operator != 比較兩個物體是否不相同
DontDestroyOnLoad 加載新場景時確保物體target不被自動銷毀
ObjectNames

輔助類用來給對象構建可顯示的名稱
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”using UnityEditor”
類方法
static function GetClassName (obj : Object) : string
描述:
對象的類名稱
參見:ObjectNamesGetInspectorTitle
◆ static function GetDragAndDropTitle (obj : Object) : string
描述:
◆ static function GetInspectorTitle (obj : Object) : string
描述:該對象檢視面板的標題
如果這個對像是一個腳本,這將返回“scriptname(Script)”例如
參見:ObjectNamesGetClassName,ObjectNamesNicifyVariableName
static function NicifyVariableName (name : string) : string
描述:為一個變量製作一個可顯示的名稱
這個函數將在大寫字母前插入一個空格並移除名稱大寫字幕前面可選的m_,_或k
// prints "My Variable"
print (ObjectNames.NicifyVariableName
("MyVariable"));
//
prints "The Other Variable"
print (ObjectNames.NicifyVariableName
("m_TheOtherVariable"));
// prints "Some Constant"
print (ObjectNames.NicifyVariableName
("kSomeConstant"));
static function SetNameSmart (obj : Object, name : string) : void
描述:設置對象的名稱
如果對像是一個Asset,重命名這個資源和文件名來匹​​配對象
ScriptableWizard
類,繼承自ScriptableObject
從這個類繼承來創建一個編輯器嚮導
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加”usingUnityEditor”
變量
◆ var errorString : string
描述
允許你設置錯誤的嚮導文本
參見:ScriptableWizard.OnWizardUpdate
◆ var helpString : string
描述:允許你設置嚮導的幫助文本
參見:ScriptableWizard.OnWizardUpdate
◆ var isValid : bool
描述:允許你啟用或禁用嚮導創建按鈕,這樣用戶不能點擊它
參見:ScriptableWizard.OnWizardUpdate、
消息傳遞
◆ function OnDrawGizmos () : void
描述:如果沒幀調用,該嚮導是可見的
使用這個繪製場景中繪製嚮導Gizmos
參見:Gizmos class
◆ function OnWizardCreate () : void
描述:當用戶點擊Create按鈕時調用。
參見:ScriptableWizard DisplayWizard
function OnWizardOtherButton(): viod
描述:
當用戶點擊其他按鈕時,請你提供一個動作
參見:ScriptableWizard DisplayWizard
function OnWizardOtherButton(): viod
描述:
當嚮導被打開或當用戶在嚮導中改變一些東西的時候調用這個
這個允許你設置helpString errorString並通過Valid來使用/禁用Create按鈕
參見: ScriptableWizard DisplayWizard
Void OnWizardUpdate() {
//設置幫助字符串
helpString
="Please set the color of the
light!";
//禁用嚮導創建按鈕
isValid=false;
//並告訴用戶為什麼
errorString="You absolutely
must set the color of the light!";

類方法
static function DisplayWizard(title : string, klass : Type, createButtonName: string = "Create", otherButtonName : string = ""):ScrptableWizard
描述:
用指定的title創建嚮導
//C: 例子
using UnityEditor;
using UnityEngine;
class WizardCreateLight : ScriptableWizard {
public float range =
500;
public Color color = Color.red;
[MenuItem ("GameObject/Create Light Wizard:)]
static void CreateWizard
() {
ScriptableWizard.DisplayWizard("Creat Light",
typeof(WizardCreateLight),
"Create","Apply");
/如果你不想使用第二個按鈕簡單地留下它;
http://ScriptableWizard.DispalyWizard("Create
Light",
typeof(WizardCreateLight));
}
viod
OnWizardCreate() {
GameObject
go.AddComponent("Light");
go.light.range =
range;
go.light.color = color;
}
void
OnWizardUpdate() {
helpstring = "Please set the color
of the light!";
}
//
當用戶按下"Aplly"按鈕OnWizardOtherButton被調用,
Void
OnWizardOtherButton ()
{
//簡單被選中東西的顏色為紅色
if (Selection.activeTransform
== null)
return;
if (Select.activeTransform.Light
== null)
return;
Selection.activeTransform.light.color
= Color.red;
}
}
繼承的成員
name 對象的名稱
hideFlags 該物體是否被隱藏,保存在場景中或被用戶修改;
繼承的函數
GetInstanceID 返回該物體的實例ID
繼承的消息傳遞
OnEnable 物體被卸載時調用該函數
OnDisable 當可編程物體超出範圍時調用這個函數
繼承的類函數
Createinstance 使用className創建一個可編程物體的實例
Operator bool 這個物體存在嗎?
Instantiate 克隆original物體並返回這個克隆。
Destroy 移除一個遊戲物體,緩存或資源。
DestroyImmediate 立即銷毀物體obj,強烈建議使用Destroy代替。
FindObjectsOfType 返回所有類型為type的激活物體。
FindObjectsOfType 返回第一個類型為type的激活物體。
operator== 比較兩個物體是否相同。
operator 1= 比較連個物體是否不相同。
DomDestroyOnLoad 卸載場景時確保物體target不被自動銷毀。
Selection

在編輯中訪問選擇的對象
注意:這是一個編輯器類,為了使用它你必須放置腳本到工程文件夾的Assets/Editor中,編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using UnityEditor,"。
類變量
◆ Static var activeGameObject: GameObject
描述:返回激活的遊戲物體。 (這個顯示在檢視面板中)
這個也將返回可能是預設的遊戲物體或者非可修改的物體,
◆ Static var activeInstanceID: int
描述:返回實際選擇物體的instanceID。包括預設,非可修改物體。
當使用場景的主要物體時,建議使用Selection.activeTransform代替。
◆ static var activeObject:Object
描述:返回實際選擇的物體。包括預設,非可修改的物體。
當使用場景的主要物體時,建議使用Selection.activeTransform代替。
◆ static var activeTransform: Transform
描述:返回激活的變換。 (這個顯示在檢視面板中)
這將不會返回預設或非可修改物體。
◆ static var gameObjects:GameObject[]
描述:返回實際選擇的遊戲物體。包含預設,非可修改物體。
當使用場景的主要物體時,建議使用Selection.transforms代替。
◆ static var instanceIDs:int[]
描述:
◆ static var objects:Object[]
描述:實際的未過濾選擇物。
只有在場景中或層次中的對像被返回,而不是工程視圖中的。你也可以賦值一個對像到
選擇。
◆ static var transforms:Transform[]
描述:發那會頂層選擇物,不包含預設。
當時使用場景物體時這是最常用的選擇類型。
變量
var fontRenderMode: fontRenderMode
描述:
? ? ?
var fontSize: int
描述:
用手導入字符的字體尺寸
var fontTextureCase: FontTextureCase
描述:
使用這個來衡量那個字符應該被導入
繼承的成員
繼承的變量
assetPath 用於該導入器的資源的路徑名(只讀)
name 對象的名稱
hideFlages 該物體是夠被隱藏,保存在場景中或被用戶修改?
繼承的類函數
GetAtPath 為path處的資源取回協商導入器。
operator bool 這個物體存在嗎?
Instantiate 克隆original物體並返回這個克隆。
Destroy 移除一個遊戲物體,緩存或資源。
DestroyImmediate 立即銷毀物體obj,強烈建議使用Destroy代替。
FindObjectsOfType 返回所有類型為type的激活物體。
FindObjectsOfType 返回第一個類型為type的激活物體。
operator== 比較兩個物體是否相同。
operator 1= 比較連個物體是否不相同。
DomDestroyOnLoad 卸載場景時確保物體target不被自動銷毀。
Undo

讓你在特定物體上註冊一個撤銷操作,你可能會在後面執行它。
注意:這是一個編輯器類。為了使用它你必須放置腳本到1程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始放置添加"using
UnityEditor,"。
類方法
◆ static function ClearSnapshotTarget (): void
描述:
◆ static function ClearUndo (identifier: Object): void
描述:
◆ static function CreatSnapshot (): void
描述:
◆ static function PerformRedo (): void
描述:執行一個重做操作。
這個與從Edit菜單中選擇Redo的效果相同。
◆ static function PerformUndo (): void
描述:執行一個恢復操作。
這個與從Edit菜單中選擇Undo的效果相同。
◆ static function RedisterSceneUndo (name: string): void
描述:通過保存整個場景來恢復。
這個是最簡單,最穩定,但是是最慢的存儲恢復操作的方式。
◆ static function RegisterSnapshot (): void
描述:應用由RegisterSnapshot製作的快照到撤銷緩存。
◆ static function RegisterUndo (o: Object, name: string): void
描述:
◆ static function RegisterUndo (identifier: Object, o: object[], name: string): void
描述:
◆ static function SetSnapshotTarget (objectsToUndo: Object[], name: string): void
參數
name 需要重做的動作的名稱。就像主菜單中的"Undo...",
objectToUndo 需要保存撤銷信息的對象。默認地,這些是null - 就是說沒有撤銷的
信息被保護。
描述:設置通過GUI或Handles所做的修改,這樣他們可被合適地撤銷。
這個並不壓入一個撤銷(實際的操作的是那些知道何時需要這個操作的人),但是只通知
句柄調用什麼操作在哪裡調用並應用它。
◆ static function SetSnapshotTarget (undoObject: Object, name: string): void
描述:
枚舉
AudioImporterChannels
用於AudioImporter的導入音頻聲道。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:AudioImporter.Channels.

◆ AudioImporterChannels.Automatic
描述:使用文件提供的聲道
參見:AudioImporter.Channels.
◆ AudioImporterChannels.Mono
描述:作為單聲道(一聲道)導入。
參見:AudioImporter.Channels.
◆ AudioImporterChannels.Stereo
描述:作為立體聲(雙聲道)導入。
參見:AudioImporter.Channels.
AudioImporterFormat
用於AudioImporter的導入音頻格式。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:AudioImporter.format.

◆ AudioImporterFormat.Automatic
描述:選擇格式自動化。
參見:AudioImporter.Format.
◆ AudioImporterFormat.OggVorbis
描述:Ogg Vorbis音頻。
參見:AudioImporter.Format.
◆ AudioImporterFormat.Uncompressed
描述:未壓縮的原始音頻。
參見:AudioImporter.Format.
BuildAssetBundleOptions
Asset Bundle構建選項。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:BuildPipeline.BuildAssetBundle.

◆ BuildAssetBundleOptions.CollectDependencies
描述:包括所有依賴。
這個根據到任何資源的引用,遊戲物體或組件並在構建中包含它們。
◆ BuildAssetBundleOptions.CompleteAssets
描述:強制包含所有資源。
例如如果你在傳遞一個網格到BuildPipeline.BuildAssetBundle函數並使用CompleteAssets,
它將包含遊戲物體和任何動畫剪輯到同一個資源。
BuildOptions
構建選項。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:BuildPipeline.BuildPlayer.

◆ BuildOptions.AudioRunPlayer
描述:運行構建後的播放器。
參見:BuildPipeline.BuildPlayer.
◆ BuildOptions.BuildAdditonalStreamedScenes
描述:用額外的流式場景構建一個wed播放器。
參見:BuildPipeline.BuildPlayer.
◆ BuildOptions.CopmressTextures
描述:構建時壓縮紋理。
參見:BuildPipeline.BuildPlayer.
◆ BuildOptions.ShowBuildPlayer
描述:顯示構建播放器。
參見:BuildPipeline.BuildPlayer.
◆ BuildOptions.StripDebugSymbols
描述:從獨立版中移除調試信息。
這個用於OS X獨立模式。
參見:BuildPipeline.BuildPlayer.
BuildTarget
目標構建平台
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:BuildPipeline.BuildPlayer.

◆ BuildTarget.DashboardWidget
描述:構建一個於OS X Dashboard窗口.
參見:BuildPipeline.BuildPlayer.
◆ BuildTarget.StandaloneOSXIntel
描述:構建一個OS X 獨立模式(只限於Intel).
參見:BuildPipeline.BuildPlayer.
◆ BuildTarget.StandaloneOSXPPC
描述:構建一個OS X 獨立模式(只限於PowerPC).
參見:BuildPipeline.BuildPlayer.
◆ BuildTarget.StandaloneOSXUniversal
描述:構建一個OS X 獨立模式
參見:BuildPipeline.BuildPlayer.
◆ BuildTarget.StandaloneWindows
描述:構建一個Windows獨立運行版。
參見:BuildPipeline.BuildPlayer.
◆ BuildTarget.WebPlayer
描述:構建一個Web播放器。
參見:BuildPipeline.BuildPlayer.
◆ BuildTarget.WebPlayerStreamed
描述:構建一個流式Web播放器。
參見:BuildPipeline.BuildPlayer.
DragAndDropVisualMode
用於拖放操作的可視提示模式。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:DragAndDrop類.

◆ DragAndDropVisualMode.Copy
描述:拷貝被拖動物體
參見:DragAndDrop類.
◆ DragAndDropVisualMode.Generic
描述:通用拖動操作
參見:DragAndDrop類.
◆ DragAndDropVisualMode.Link
描述:鏈接被拖動物體到目標
參見:DragAndDrop類.
◆ DragAndDropVisualMode.Move
描述:移動杯拖動物體
參見:DragAndDrop類.
◆ DragAndDropVisualMode.None
描述:沒有標記(拖動不應進行)
參見:DragAndDrop類.
FontRenderMode
用於TrueTypeFontImporter的渲染模式常量
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。

◆ FontRenderMode.LightAntialiasing
◆ FontRenderMode.NoAntialiasing
◆ FontRenderMode.StrongAntialiasing
FontTextureCase
用於TrueTypeFontImporter的紋​​理實例常量
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。

Unicode 導入一個Unicode字符集通常用於拉丁腳本
ASCII 導入基本的ASCII字符集
ASCIIUpperCase 只導入大寫的ASCII字符集
ASCIILowerCase 只導入小寫的ASCII字符集
GizmoType
決定在Unity編輯器中的一個gizmo如何被繪製或選擇。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
可以使用OR操作組合這些類型。參見:DrawGizmo.

GizmoType.Active
描述:如果它被激活(顯示在檢視面板中)繪製gizmo
◆ GizmoType.NotSelected
描述:如果它沒有被選擇繪製gizmo
◆ GizmoType.Pickable
描述:該gizmo可以在編輯器中點選。
◆ GizmoType.Selected
描述:如果它被選擇繪製gizmo
建議使用GizmoType.SelectedOrChild代替
◆ GizmoType.SelectedOrChild
描述:如果它或它的子被選擇繪製Gizmo
ImportAssetOptions
資源導入選項
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。

◆ ImportAssetOptions.Default
描述:導入缺省選項
◆ ImportAssetOptions.ForceSynchronourImport
描述:所以資源導入必須被同步完成。
默認地一些資源可以被同步導入(如,腳本可以在後台編譯)。在某些情況下所以導入
都需要同步;使用這個標識然後。例如,當導入一個腳本+預設時,腳本必須在預設序列化
之前被完全編譯,否則它可能獲取舊的數據。
◆ ImportAssetOptions.ForceUpdate
描述:用戶強制更新。它單擊了Reimport。
更新可能是由導入引起的,因為修改日期改變了。
◆ ImportAssetOptions.ImportRecursive
描述:導入包含在這個文件夾中的所有文件
◆ ImportAssetOptions.TryFastReimportFromMetaData
描述:通過從元數據中加載,允許快速重新導入資源。
這個被例如ModelImporter使用,它存儲所有的東西在元數據中,這樣可以在下載時跳
過導入。
ModelImporterGenerateAnimations
用於ModelImporter的動畫生成選項。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:ModelImporter.GenerateAnimations.

◆ ModelImporterGenerateAnimations.InNodes
描述:在動畫物體上產生動畫。
參見:ModelImporter.GenerateAnimations.
◆ ModelImporterGenerateAnimations.InOriginalRoots
描述:在動畫包的根物體上生成動畫。
參見:ModelImporter.GenerateAnimations.
◆ ModelImporterGenerateAnimations.InRoots
描述:在變化的根物體上創建動畫。
參見:ModelImporter.GenerateAnimations.
◆ ModelImporterGenerateAnimations.None
描述:不生成動畫。
參見:ModelImporter.GenerateAnimations.
ModelImporterGenerateMaterials
用於ModelImporter的材質生成選項。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:ModelImporter.GenerateMaterials.

◆ ModelImporterGenerateMaterials.None
描述:不生成材質。
參見:ModelImporter.GenerateMaterials.
◆ ModelImporterGenerateMaterials.PerSourceMaterial
描述:為這個在源資源中的材質生成一個材質。
參見:ModelImporter.GenerateMaterials.
◆ ModelImporterGenerateMaterials.PerTexture
描述:為每個使用的紋理生成一個材質。
參見:ModelImporter.GenerateMaterials.
MouseCursor
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。

Arrow
Text
ResizeVertical
ResizeHorizo​​ntal
Link
SlideArrow
ResizeUpRight
ResizeUpLeft
PrefabType
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。

None
Prefab
ModePrefab
PrefabInstance
ModelPrefabInstance
MissingPrefabInstance
DisconnectedPrefabInstance
DisconnectedModelPrefabInstance
ReplacePrefabOptions
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。

Default
ConnectToPrefab
ReplaceNameBased
UseLastUploadPrefabRoof
SelectionMode
SelectionMode可用於調整Selection.GetTransforms將返回的選擇。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
默認任的變換選擇模式是:SelectionMode.TopLevel ┃ SelectionMode.ExcludePrefab ┃
SelectionMode.Editable

◆ SelectionMode.Assets
描述:只返回那些資源位於Assets目錄下的物體。
◆ SelectionMode.Deep
描述:返回選擇和所有選擇的子
◆ SelectionMode.DeepAssets
描述:如果選擇包含一個文件夾,在文件層次中也包含該文件夾中的所有資源和文件
夾。
◆ SelectionMode.Editable
描述:排除任何不可修改的物體。
這將過濾嚮導入的fbx文件生成的預設而不是用戶創建的預設。
◆ SelectionMode.ExcludePrefab
描述:從選擇中去掉所有預設
◆ SelectionMode.TopLevel
描述:只返回選擇變換的最頂層物體。選擇變換的子將被過濾掉。
◆ SelectionMode.Unfiltered
描述:返回所有選擇
TextureImporterFormat
用於TextureImporter的導入紋理格式。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:TextureImporter.textureFormat.

◆ TextureImporterFormat.Alpha8
描述:Alpha8位紋理格式
參見:TextureImporter.textureFormat.
◆ TextureImporterFormat.ARGB16
描述:RGBA16位紋理格式。
參見:TextureImporter.textureFormat.
◆ TextureImporterFormat.ARGB32
描述:RGBA32位紋理格式。
參見:TextureImporter.textureFormat.
◆ TextureImporterFormat.Automatic
描述:選自格式化。
參見:TextureImporter.textureFormat.
◆ TextureImporterFormat.DXT1
描述:DXT1壓縮紋理格式。
參見:TextureImporter.textureFormat.
◆ TextureImporterFormat.DXT5
描述:DXT5壓縮紋理格式。
參見:TextureImporter.textureFormat.
◆ TextureImporterFormat.RGB16
描述:RGBA16位紋理格式。
參見:TextureImporter.textureFormat.
◆ TextureImporterFormat.RGB24
描述:RGBA24位紋理格式。
參見:TextureImporter.textureFormat.
TextureImporterGenerateCubemap
用於TextureImporter的立方貼圖生成模式。
注意:這是一個編輯器類。為了使用它你必須放置腳本到工程文件夾的Assets/Editor
中。編輯器類位於UnityEditor命名空間因此對於C#腳本你需要在腳本開始位置添加"using
UnityEditor,"。
參見:TextureImporter.GenerateCubemap.

◆ TextureImporterGenerateCubemap.Cylindrical
描述:
◆ TextureImporterGenerateCubemap.NiceSpheremap
描述:
◆ TextureImporterGenerateCubemap.None
描述:
◆ TextureImporterGenerateCubemap.SimpleS
aaa1218bbb
aaa1218bbb
社員
社員

文章數 : 65
積分 : 4747
注冊日期 : 2011-11-22

https://design.666forum.com

回頂端 向下

回頂端


 
這個論壇的權限:
無法 在這個版面回復文章