Unity3D脚本中文系列教程(十七)

时间:2023-03-10 02:29:33
Unity3D脚本中文系列教程(十七)

http://dong2008hong.blog.163.com/blog/static/469688272014032332976/

◆ 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 –用户输入的值描述:制作一个X.Y 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,Y  Z域以便输入一个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,ok:string,cancel:srting=””):bool
描述:显示一个模式对话框
使用它来在编辑器中显示信息框
Ok和cancel是显示在对话框按钮上的标签,如果cancel是空(默认),那么只有一个按钮被显示,如果OK按钮被按下DisplayDialog返回true
◆ staticfunctionDisplayDialogComplex(title:srting,massage:string,ok: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:GameObject,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:GameObject):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");
/如果你不想使用第二个按钮简单地留下它;
//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
ResizeHorizontal
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.SimpleSpheremap
描述:
◆ TextureImporterGenerateCubemap.Spheremap
描述:
TextureImporterMipFilter
用于TextureImporter的mipmap过滤器。
注意:这是一个编辑器类。为了使用它你必须放置脚本到工程文件夹的Assets/Editor
中。编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加"using
UnityEditor,"。
参见:TextureImporter.mipmapFilter.

◆ TextureImporterMipFilter.BoxFilter
描述:Box mipmap过滤器。
参见:TextureImporter.mipmapFilter.
◆ TextureImporterMipFilter.KaiserFilter
描述:Kaiser mipmap过滤器。
参见:TextureImporter.mipmapFilter.
TextureImporterNPOTScale
在TextureImporter中用于非2的幂次纹理的缩放模式。
注意:这是一个编辑器类。为了使用它你必须放置脚本到工程文件夹的Assets/Editor
中。编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加"using
UnityEditor,"。
参见:TextureImporter.npotScale.

◆ TextureImporterNPOTScale.None
描述:保存非2的幂次纹理大小。
参见:TextureImporter.npotScale.
◆ TextureImporterNPOTScale.ToLarger
描述:缩放到较大的幂次大小。
参见:TextureImporter.npotScale.
◆ TextureImporterNPOTScale.ToNearest
描述:缩放到最近的2的幂次大小。
参见:TextureImporter.npotScale.
◆ TextureImporterNPOTScale.ToSmaller
描述:缩放到较小的幂次大小。
参见:TextureImporter.npotScale.
TextureImporterNormalFilter
用于TextureImporter的法线图过滤器。
注意:这是一个编辑器类。为了使用它你必须放置脚本到工程文件夹的Assets/Editor
中。编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加"using
UnityEditor,"。
参见:TextureImporter.normalFilter.

◆ TextureImporterNormalFilter.Sobel
描述:Sobel的法线图过滤器。
参见:TextureImporter.normalFilter.
◆ TextureImporterNormalFilter.Standard
描述:标准的法线图过滤器。
参见:TextureImporter.normalFilter.