http://dong2008hong.blog.163.com/blog/static/4696882720140322449780/
◆ LightRenderMode.Auto
描述: 自动选择渲染模式。 选择是否渲染这个Light为像素光或者顶点光源(建议缺省)。 // 设置光源的渲染模式为自动 light.renderMode = LightRenderMode.Auto; 参见: light组件 ◆ LightRenderMode.ForcePixel 描述: 强制Light为像素光源。 只将这个用于真正重要的光源,例如一个玩家的手电筒。 // 强制光源为像素光源 light.renderMode = LightRenderMode.ForcePixel; 参见: light组件 ◆ LightRenderMode.ForceVertex 描述: 强制Light为顶点光源。 这个选项对于背景光或远处的光照是非常好的。// 强制光源为顶点光源 light.renderMode = LightRenderMode.ForceVertex; 参见: light组件 LightShadows Light的阴影投射选项。 参见: light组件值 ◆ LightShadows.Hand 描述:投射“hard”阴影(没有阴影过滤)//设置光源为投射硬阴影Light.shadows=LightShadows.Hard;参见:light component ◆LightShadows.None 描述:不投射阴影(默认)//设置光源为不投射阴影Light.shadows=lightshadows.None;参见:light component ◆LightShadows.Soft 描述:投射Soft阴影(带有4倍PCF过滤)//设置光源为投射4倍过滤的软阴影阴影Light.shadows=lightshadows. Soft;参见:light component LightType 灯光的类型。参见:Light.typelight component 值 ◆LightType.Directional 描述:这个光源是一个直射光源。参见:Light.type, light component//制作一个直射光源Light.type=LightType.Directional; ◆LightType.Point描述:这个光源是一个点光源。参见:Light.type,light component//制作一个直射光源Light.type=LightType.Point;◆LightType.Spot描述:这个光源是一个透射光源。参见:Light.type, light component//制作一个透射光源Light.type=LightType.Spot; MasterServerEvent值 RegistrationFailedGameName 注册失败,因为给出的游戏名称为空。 RegistrationFailedGameType 注册失败,因为给出的游戏类型为空。 RegistrationFailedNoServer 注册失败,因为没有服务器在运行。 RegistrationSueceeded 注册到主服务器成功,接受到确认。 HostListReceived 从主服务器接受到一个主机列表NetworkConnectionError值 NoError RSAPublicKeyMismatch 我们提供的RSA公匙与我们所连接系统的不匹配。 InvalidPassword 服务器需要密码并且拒绝我们的链接,因为我们没有设置正确的密码 ConnecttionFailed 连接失败,可能因为内部连接性问题。 TooManyConnectedPlayers 服务器到达最大限度,不能连接 ConnectionBanned 我们被试图连接到的系统禁止了(可能是临时的) AlreadyConnectedToAnotherServer 不能同时链接到两个服务器,在再次连接之前关闭这个连接 CreateSocketOrThreadFailure 试图初始化网络接口时出现内部错误,套接字可能已经被使用了 IncorrectParameters Connect函数具有不正确的参数 EmptyConnectTarget 没有给出链接目标 InternalDirectConnectFailed 客户端不能内部链接到位于相同网络中的启用了NAT的服务 NATTargetNotConnected 我们试图连接到的NAT目标没有连接到辅助服务器 NATTargetConnectionLost 当试图链接到NAT目标时,连接丢失值◆ ParticleRenderMode.Billboard描述:作为面向玩家的公告板渲染例子(默认)◆ ParticleRenderMode.HorizentalBillboard描述:作为公告板渲染粒子,总是沿着Y轴◆ ParticleRenderMode.SortedBillboard描述:从后向前排序并作为公告板渲染。这个使用混合例子着色器看起来更好,但是因为排序边得较慢◆ ParticleRenderMode.Streteh描述:在运动方向拉伸粒子◆ ParticleRenderMode.VerticalBillboard描述:作为公告板渲染粒子,总是面向玩家,但是不沿着X轴旋转PhysicMaterialCombine 描述:碰撞物体的物理材质如何被组合参见:PhysicMaterial.InctionCombine,PhysicMaterial.boticeCombine值Average 平均两个碰撞材质的摩擦/弹力Multiply 两个碰撞材质的摩擦/弹力相乘Minimum 使用两个碰撞材质的摩擦/弹力中较小的一个Maximum 使用两个碰撞材质的摩擦/弹力中较大的一个PlayMode 由Animation.Play函数使用值StopSameLayer 将停止在同一层上开始的所有动画。当播放动画的时候这个是默认值 StopAll 停止所有由这个组件开始的动画PrimitiveType 各种变量可以通过使用GameObject.CreatePrimitive函数创建 参见GameObject.CreatePrimitive值◆PrimitiveType Capsule描述:胶囊几何体参见:GameObject.CreatePrimitive//创建一个胶囊几何体functionsStart()}var capsule=GameObject.CreatePrimitive(PrimitiveType.Capsule);}◆PrimitiveType Cube描述:立方体参见:GameObject.CreatePrimitive//创建一个立方体functionsStart()}var cube=GameObject.CreatePrimitive(PrimitiveType.Cube);}◆PrimitiveType Cyhnder描述:圆柱体参见:GameObject.CreatePrimitive//创建一个圆柱体functionsStart()}var cyhnder=GameObject.CreatePrimitive(PrimitiveType.Cylinder);}◆PrimitiveType Plane描述:平面几何体参见:GameObject.CreatePrimitive//创建一个平面几何体functionsStart()}var plane=GameObject.CreatePrimitive(PrimitiveType.Plane);}◆PrimitiveType Sphere描述:球形参见:GameObject.CreatePrimitive//创建一个球形functionsStart()}var sphere=GameObject.CreatePrimitive(PrimitiveType.Sphere);}QualityLeve 图像质量等级有六个质量等级可以这样,每个等级的细节都在工程的Quality Sertings中设置质量等级可以在脚本中使用QualitySertings类来切换参见:QualitySertings currentlevel QualityLeveSertings值◆QualityLeve.Beautiful描述:“beautiful”质量等级参见:QualitySertings currentlevel QualityLeveSertings◆QualityLeve.Fantastic描述:“fantastic”质量等级参见:QualitySertings currentlevel QualityLeveSertings◆QualityLeve.Fast描述:“fast”质量等级参见:QualitySertings currentlevel QualityLeveSertings◆QualityLeve.Fastest描述:“fastest”质量等级参见:QualitySertings currentlevel QualityLeveSertings◆QualityLeve.Good描述:“good”质量等级参见:QualitySertings currentlevel QualityLeveSertings◆QualityLeve.Simple描述:“simple”质量等级参见:QualitySertings currentlevel QualityLeveSertingsQueueMode 由Animation.Play函数使用值CompleteOmers 所有其他动画通知播放后开始播放 PlayNow 立刻开始播放,如果你只是想开苏创建一个复制动画可以使用这个RPCmode 用来选择谁将接收这个RPC值Server 只发送到服务器 Others 发送给所有人除了服务器 OthersBuffered 发送给每一个,除了服务器,并添加到缓存 All 发送到每个人 AllButFered 发送到每个人并添加到缓存RenderTextureFormat RenderTexture的格式 参见:RenderTexture.fonmat,RenderTexture类值◆RenderTextureFormat ARGB32描述:一个32位颜色的渲染纹理格式 参见:RenderTexture,RenderTexture类 ◆RenderTextureFormat.Depth 描述:渲染纹理格式的深度 深度格式用来渲染高精度“深度”值到一个渲染纹理,实际使用哪个格式依赖于平台,在OpenGL中,它是原始“深度组件”格式(通常是24或16位),在Direct3D9中它是32位浮点(R32F)格式,在编写使用或渲染到深度纹理的shader时,必须确保它们能够工作在OpenGL和Direct3D中,参考depth textures documentation 注意不是所有的显卡支持深度纹理。使用SystemInfo supportsDepthRenderTextures来检查是否支持 参见:RenderTexture format,RenderTexture类,SystemInfo.supportsDepthRenderTextures RigidbodyInterpolation Rigidbody插值模式 对于那些被相机跟随的主角色或交通工具,建议使用插值。对于任何其他刚体建议不使用插值 参见:RigidbodyInterpolation变量值◆RigidbodyInterpolation.Extrapolate描述:外插值将基于当前速度预测刚体的位置如果你有一个快速移动的物体,这个能够导致刚体在一帧中穿过碰撞器然后弹回Rigidbody.interpolation=RigidbodyInterpolation.Extrapolate; 参见:RigidbodyInterpolation变量◆RigidbodyInterpolation.Interpolate描述:插值总是有些之后但是比外插值更光滑Rigidbody.interpolation=RigidbodyInterpolation. Interpolate; 参见:RigidbodyInterpolation变量◆RigidbodyInterpolation.None描述:不插值Rigidbody.interpolation=RigidbodyInterpolation.None; 参见:RigidbodyInterpolation变量RotationDriveMode 用它自己的XYZ后者SlerpDrive控制ConfigurableJoint的旋转值XYAndZ 使用XY&Z驱动Slerp 使用Slerp驱动RuntimePlatform 应用程序运行的平台。由Application platform返回值OSXEditor OSX下Unity编辑器模式OSXPlayer OSX上的播放器WindowsPlayer Windows上的播放器OSXWebPlayer OSX下的web播放器OSXDashboard OSX下Dashborard窗口WindowsWebOlayer Windows上的web播放器WindowsEditor Windows下Unity编辑器模式ScaleMode 绘制纹理的缩放模式值
StretchToFill 缩放纹理以便完全填充传入GUI.DrawTexture的矩形SealeAndCrop 缩放纹理,维持长宽比,这样它完全覆盖传递到GUIDrawTexture的position矩形,如果纹理被描绘到具有不同长宽比的矩形上时,图像被裁剪ScaleToFit 缩放纹理,维持长宽比,这样它完全与传递到GUIDrawTexture的position矩形相匹配SendMessageOptions 如何发送一个消息的选项 这个用在GameObject和Component的SendMessage和BroadcastMessage上值◆SendMessageOptions.DontRequireReceiver描述:SendMessage不需要一个接收者◆SendMessageOptions.RequireReceiver描述:SendMessage需要一个接收者如果没有找到接收者,将在控制台上打印以错误(默认)SkinQuality 影响单个顶点的最大骨骼数量 参见:SkinnedMeshRenderer.quality值Auto 从当前QualitySetings(默认)数中选择骨骼数量Bone1 仅使用1骨骼变形一个顶点,(最重要的骨骼被使用)Bone2 仅使用2骨骼变形一个顶点,(最重要的骨骼被使用)Bone4 仅使用4骨骼变形一个顶点Space 在那个坐标空间中操作 参见:Transform值World 相对于世界坐标系统应用一个变换Self 相对于局部坐标系统应用一个变换TerrainLighting Terrain光照模式 参见:Treeainlighting,TerrainLightings,TerrainSettings值◆TerrainLighting Lightmap描述:使用光照图渲染地形该地形只使用广州图,并且不会受到游戏中光源的影响参见:TerrainLighting,TerrainLightmaps,TerrainLightmapsSettings◆TerrainLighting Pixel描述:近处使用光源渲染地形,远处使用高度图在游戏中靠近观察者的地形用光照,远处使用高度图混合,光源是顶点光照或像素光照模式,并能够有阴影光照距离是(Terrain.treeBillboardDistance,QualitySettings.shadowDistance,Terrain.basemapDistance)的最小值参见:TerrainLighting,TerrainLightmaps,TerrainLightmapsSettings◆TerrainLighting Vertex描述:使用顶点光照渲染地形地形将以顶点光照模式被照亮,不使用光照贴图,投射光源就像顶点光参见:TerrainLighting,TerrainLightmaps,TerrainLightmapsSettingsTextAlignment 多行文本应该如何被对齐 这个是被GUIText.alignment属性使用 参见:GUI Text component值Left 文本行左对齐Center 文本行居中对齐Right 文本行右对齐TextAnchor 文本的锚点被放置在什么位置 这个是被GUIText.anchor属性使用 参见:GUI Text component值UpperLeft 文本被锚点在左上角UpperCenter 文本被锚点在上边,垂直居中UpperRight 文本被锚点在右上角MiddleLeft 文本被锚点在左边,垂直居中MiddleCenter 文本在水平和垂直方向上居中MiddleRight 文本被锚点在右边,垂直居中LowerLeft 文本被锚点在左下角LowerCenter 文本被锚点在下边,垂直居中LowerRight 文本被锚点在右上角TextClipping GUI系统处理过大文本的以适合所分配矩形的方式值OverDow 文本随意浮动在该元素之外Clip 文本被裁剪以便放置在该元素之内 TextureFormat Texture的格式,从脚本创建纹理时使用这个。 参见:Texture2D Texture2D,textureFormat值◆TextureFormat Alpha8描述:只有alpha 的纹理格式function Start(){//创建一个新的只有alpha的纹理并将它赋予//该渲染器材质var texture=new Texture2D(128,128,TextureFormat,Alpht8,false),rederer.material.mainTexture=texture;}参见:Texture2D Texture2D,textureFormat◆TextureFormat ARGB32描述:只有alpha 的彩色纹理格式function Start(){//创建一个新的纹理并将它赋予给渲染器材质var texture=new Texture2D(128,128,TextureFormat,ARGB32,false),rederer.material.mainTexture=texture;}参见:Texture2D Texture2D,textureFormat◆TextureFormat DXT1描述:一个压缩的彩色纹理格式参见:Texture2D Texture2D,textureFormat◆TextureFormat DXT5描述:带有alpha通道的彩色压缩纹理格式参见:Texture2D Texture2D,textureFormat◆TextureFormat RGB24描述:一个彩色纹理格式function Start(){//创建一个新的纹理并将它赋予给渲染器材质var texture=new Texture2D(128,128,TextureFormat,RGB32,false),rederer.material.mainTexture=texture;}参见:Texture2D Texture2D,textureFormatTextureWrapMode 纹理的包裹模式,对应与texture inspector中的设置 你可以能够平铺纹理(重复)或者映射一个纹理到物体上(裁剪) 参见:Texture.wrapMode,texture assets值◆TextureFormat.Clamp描述:裁剪纹理到边界上最后一个像素在映射一个纹理到物体上并且你不想纹理平铺时,这个可以避免包裹的不真实,UV坐标将被裁剪到返回0….1.当UV大于1或小于0,将使用边界上的最后一个像素renderer.material.mainTexture.wrapMode=TextureWrapMode.Clamp;参见:Texture.wrapMode,texture assets.◆TextureWrapMode.Repear描述:平铺纹理,创建一个重复效果当UV超出0….1范围,整数部分将被忽略,这样就创建了一个重复效果。renderer.material.mainTexture.wrapMode=TextureWrapMode.Repear;参见:Texture.wrapMode,texture assets.WrapMode 在没有时间帧定义的地方如何对待时间值◆WrapMode.ClampForever描述:播放动画。当它到达末端时,它将保持在最后一帧但不会停止播放这个可用于附加的动画,当它们到达最大时不应该停止播放。◆WrapMode.Default描述:从动画曲线中读取重复模式,可以被设置为Loop或PingPong◆WrapMode.Loop描述:当时间到达动画剪辑的末端,时间将从开始继续。动画将不会停止播放◆WrapMode.Once描述:当时间到达动画剪辑的末端,剪辑将自动停止播放◆WrapMode.PingPong描述:当时间到达动画剪辑的末端时,时间将在开始和接受之间来回播放动画不会停止播放三、 编辑器类AnimationClipCurveData 类 一个AnimationClipCurveData对象包含所有在AnimationClip中表示一个特定曲线所需要的所有信息,这个曲线制作一个附加到游戏物体/动画骨骼上的组件/材质属性的动画。 注意:这是一个编辑器类。为了使用它你必须放置脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor”变量◆ var curve:AnimationCurve描述:实际的动画曲线◆ var path:string描述:背动画的游戏物体/骨骼的路径◆ var propertyName:string描述:被动画的属性的名称◆ var target:Object描述:被动画的组件/材质◆ var type:Type描述:被动画的组件/材质类型AnimationUtility 类 用于修改动画剪辑的编辑器工具函数 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor”类方法◆ static funciton GetAllCurves(clip:AnimationClip,includeCurveData:boll=ture);AmimationClipCurveData[]描述:从一个特定的动画剪辑上取回所有曲线如果includeCurveData为假,所有在返回结果中的动画曲线将为null,当你只想获取曲线类型和名称的列表时使用这个。◆ static funciton GetAnimatableProperties(go:GameObject):AnimationClipCurveData[]描述:取回附加在改游戏物体上所有组件/材质上的所有可动画的属性◆ static function GetEditorCurve(clip:AnimationClip,relativePath:string,type:Type,propertyName:string):AnimationCurve描述:Unity自动在内部组合位置曲线,缩放曲线,选择曲线因此变换曲线总是组合的并且它们的关键帧总是所有关键帧点的联合。在编辑器中动画剪辑让你指定特定的不必组合的编辑器曲线,因此它让用户以更直观的方式编辑曲线。◆ static function GetFloatValue(root:GameObject,relativePath:string,type:Type,propertyName:string,out data:float):bool描述:通过采样特定的游戏对象上的一个曲线值得到当前的浮点值用来记录关键帧◆static function SetEditorCurve(clip:AnimationClip,relativePath:string,type:Type,propertyName:string,curve:AnimationClip):void描述:Unity自动在内部组合位置曲线,缩放曲线,选择曲线因此变换曲线总是组合的并且它们的关键帧总是所有关键帧点的联合。在编辑器中动画剪辑让你指定特定的不必组合的编辑器曲线,因此它让用户以更直观的方式编辑曲线。AssetDatabase 类 一个用来访问资源并在资源上执行操作的接口 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor”类方法◆static funciton AddObjectToAsset(objectToAdd:bject,assetPath:string):vold描述:添加objectToAdd到path上已有的资源中请注意你应该只添加资源到asset资源,例如导入模型或纹理资源将丢失它们的数据@MenuItem(”eObject/Create Matenal”)satic function CreateMaterial(){ // 创建一个简单材质资源var material = new Material (Shader.Find("Specular"));AssetDatabase.CreateAsset(material, "Assets/MyMaterial.mat");// 给它添加一个动画剪辑var animationClip = new AnimationClip();animationClip.name=“My Clip”;AssetDatabase.AdObjectToAsset(animationClip,matcrial);// 添加一个物体后重导入这个资源// 否则这个改变只会显示在保持工程的时候AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(animationClip));// 打印已创建资源的路径Debug.Log(AssetDatabase.GetAssetPath(material));}◆static funciton AddObjectToAsset(objectToAdd:Object,assetObject:Object):void描述:添加objectToAdd到由assObject标识的已有资源中请注意你应该只添加资源到asset资源,例如导入模型或纹理资源将在重新导入或退出时丢失它们的数据@MenuItem(”GameObject/ Create Matenal”)satic function CreateMaterial(){ // 创建一个简单材质资源var material = new Material (Shader.Find("Specular"));AssetDatabase.CreateAsset(material, "Assets/MyMaterial.mat");// 给它添加一个动画剪辑var animationClip = new AnimationClip();animationClip.name=“My Clip”;AssetDatabase.AdObjectToAsset(animationClip,matcrial);// 添加一个物体后重导入这个资源// 否则这个改变只会显示在保持工程的时候AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(animationClip));// 打印已创建资源的路径Debug.Log(AssetDatabase.GetAssetPath(material));}◆ static funciton AddPathToGUID(path:string):string描述:获得指定path上的资源GUID◆ static funciton Contains(obj:Object):bool◆ static funciton Contains(instanceID:int):bool描述:对象是一个资源当一个对象是一个资源的时候(对应与Assets文件夹中的一个文件)返回真,否则返回假(例如在场景中的物体,或在运行时创建的物体)◆ static funciton CopyAsset(path:string,newPath:string):bool描述:复制在path上的资源并将它存储在newPaht◆ static funciton CreateAsset(asset:Object,path:shring):void描述:在路径上创建一个新的资源,你必须确保路径使用一个被支持的扩展名(材质用“mat”立方贴图用“cubemap”皮肤用“GUISkin”动画用“anim”并且其他任意的资源用“asset”)资源被创建后你可以使用AssetDatabaseAddObjectToAsset添加更多资源到文件中,如果资源已经在path上,它将被删除并创建新的资源@MenuItem(”GameObject/ Create Matenal”)satic function CreateMaterial(){ // 创建一个简单材质资源var material = new Material (Shader.Find("Specular"));AssetDatabase.CreateAsset(material, "Assets/MyMaterial.mat");// 打印已创建资源的路径Debug.Log(AssetDatabase.GetAssetPath(material));}◆ static funciton DeleteAsset(path:string):bool描述:删除路径上的资源如果资源被成功删除返回真,如果它不存在或者不能被移除返回假◆ static funciton GenerateUniqueAssetPath(path:string):string描述:为资源产生一个新的唯一路径◆ static funciton GetAssetPath(assetObject:Object):string◆ static funciton GetAssetPath(instanceID:int):string描述:返回相对于工程文件夹的路径名,资源被存储在哪里@MenuItem(”GameObject/ Create Matenal”)satic function CreateMaterial(){ // 创建一个简单材质资源var material = new Material (Shader.Find("Specular"));AssetDatabase.CreateAsset(material, "Assets/MyMaterial.mat");// 打印已创建资源的路径Debug.Log(AssetDatabase.GetAssetPath(material));}◆ static funciton GetCachedIcon(path:string):Texture描述:在给定的资源路径中取回该资源的图标◆ static funciton GUIDToAssetPath(guid:string):string描述:转换GUID到它当前的资源路径◆ static funciton ImportAsset(path:string,options:ImportAssetOptions=ImportAssetOptions.Default):void描述:导入路径上的资源◆ static funciton IsMainAsset(obj:Object):bool描述:为资源产生一个新的唯一路径◆ static funciton IsMainAsset(instaneeID:int):bool描述:在工程窗口中,该资源是一个主资源例如,一个导入的模型有一个游戏物体作为它的根,还有一些网格和子游戏物体,这个情况下,根游戏物体是一个主资源◆ static funciton LoadAllAssetsAtPath(assetPath:string):boject描述:返回assetPath上的所有资源物体的数值某些资源文件也许包含多个物体(例如一个Maya文件可能包含多个网格和游戏物体)assetPath是相对于工程文件夹的路径◆ static funciton LoadAllAssetsAtPath(assetPath:string,type:Type):Object描述:返回给定路径上的资源,如果它继承自type/assetPath是相对工程文件夹的路径◆ static funciton LoadMainAssetAtPath(assetPath:string):Object描述:返回位于assetPath的主资源/assetPath是相对工程文件夹的路径◆ static funciton MoveAsset(oldPath:string,newPath:string):string参数oldPath 这个资源的当前路径newPath 资源应该被移动到的路径返回:string 如果资源被成功移动这个是空字符串,否则是一个错误字符串描述:从一个文件夹移动一个资源到另一个文件夹◆ static funciton MoveAssetToTrash(path:string):bool描述:移动路径上的资源到回收站如果资源被成功移除返回真,否则为假◆static funciton OpenAsset(instanceID:int,lineNumber:int=-1):bool◆static funciton OpenAsset(target:Object,lineNumber:int=-1):bool描述:在外部编辑器中打开target资源,图像处理程序或者建模工具,根据资源的类型如果是一个文本文件,lineNumber指定文本编辑器选择那一行◆static funciton Refresh(options:ImportAssetOptions=ImportAssetOptions,Default):void描述:导入任何改变的资源导入任何已经改变了内容的或者被从工程文件夹中添加/移除的资源◆ static funciton RenameAsset(pathName:string,newName:string)“string参数pathName 该资源的当前路径newName 该资源的新名称返回:string 如果资源被成功重命名,是一个空的字符串,否则是一个错误字符串描述:重命名一个资源文件◆static funciton SaveAssets():void描述:将未保存的改变写入磁盘◆static funciton StartAssetEditing():void描述:开始资源导入,这可以让你组织几个资源导入为一个更大的导入操作◆static funciton StopAssetEditing():void描述:停止资源导入,这可以让你组织几个资源导入为一个的导入操作◆static funciton ValidateMoveAsset(oldPath:string,newPath:string):string参数oldPath 该资源的当前路径newName 这个资源应该被移动到的路径返回:string 如果资源被成功重命名,是一个空的字符串,否则是一个错误字符串描述:检查一个资源文件是否可以被移动到另一个文件夹(并不实际移动这个文件)参加:AssetDatabase.MoveAssetAssettlmporter 类,继承自Object 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor”变量◆var assetPath:string描述:用于这个导入期的资源的路径名类方法◆staric function GetAtPath(path:string):AssetImporter描述:为path处的资源收回资源导入期参加:MobelImporter,TextmreLmporter,AudioImporter继承的成员继承的变量Name 对象的名称hideFlags 该物体是否被隐藏,保存在场景中或被用户修改继承的函数GetInstauceID 返回该物体的实例ID继承的类函数Operatorbool 这个物体存在吗Instantlate 克隆original物体并返回这个克隆Destroy 移除一个游戏物体,组件或资源DestryImnedinte 立即销毁物体obj,强力建议使用Destroy代替FindObjectsOFType 返回所有类型为type的激活物体FindObjectOFType 返回第一个类型为type的激活物体Operator== 比较两个物体是否相同Operator!= 比较两个物体是否不相同DontDestroyOnLoad 加载新场景时确保物体target不被自动销毁AssetPostprocessor 类AssetPostprocessor让你进入导入流水线并且在导入资源之前或之后运行脚本 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor” 这样你可以在导入设置中重载缺省的值或者修改导入的数据,如纹理和网格变量◆var assetImporter:AssetImporter描述:指向资源导入期◆var assetPath:string描述:被导入的资源的路径名◆var preview:Texture2D描述:指定一个自定义的纹理到这个变量以便产生导入资源的预览函数◆function GetPostprocessOrder():int描述:重载导入期执行的顺序通过重载GetPostprocessOrder你能够排列后期处理执行的顺序,优先级较小的将首先载入◆function LogError(warning:string,context:Object=null):vold描述:记录一个导入错误到控制台传递一个资源作为第二个参数来连接这个错误到编辑器中的资源参见:DebugLogError◆function LogWarning(warning:string,context:Object=null):vold描述:记录一个导入警告道控制台传递一个资源作为第二个参数来连接这个警告到编辑器中的资源参见:DebugLogError消息传递◆function OnAssignMaterialModer(renderer:Renderer):Material描述:取得源材质返回的材质将被赋予给渲染器,如果返回null,Unity将使用它的缺省材质找到产生方法来分配材质。soureeMaterial在模型导入并将被销毁前,OnAssignMaterial之后直接从模型生成。class MyMeshPostprocessor extends AssetPostprocessor { function OnAssignMaterialModel (material : Material, renderer : Renderer) : Material { var materialPath = "Assets/" + material.name + ".mat"; // 查找在材质路径上是否有一个材质 // 关闭这个以便总是产生新材质 if (AssetDatabase.LoadAssetAtPath(materialPath)) return AssetDatabase.LoadAssetAtPath(materialPath); // 使用specular shader创建一个新的资源 // 其他默认值来自模型 material.shader = Shader.Find("Specular"); AssetDatabase.CreateAsset(material, "Assets/" + material.name + ".mat"); return material; }}◆function OnPostprocessAllAssets(importedAssets:string[],deletedAssets:string[],movedAssets:string[],movedFromPath:string[]):void描述:OnPostprocessAllAssets在一些资源被导入后调用(资源进度栏到达末端)class MyAllPostprocessor extends AssetPostprocessor { static function OnPostprocessAllAssets ( importedAssets : String[], deletedAssets : String[], movedAssets : String[], movedFromAssetPaths : String[]) { for (var str in importedAssets) { Debug.Log("Reimported Asset: " + str); } for (var str in deletedAssets) { Debug.Log("Deleted Asset: " + str); } for (var i=0;i<movedAssets.Length;i++) { Debug.Log("Moved Asset: " + movedAssets[i] + " from: " + movedFromAssetPaths[i]); } }}◆ function OnPostprocessAudio (clip:AudioClip):void描述:◆ function OnPostprocessModel (root:GameObject):void描述:在子类中重载这个函数以便在模型完全导入后获得通知在一个预设被生成为游戏物体层次前,root是导入模型的根物体class MyModelPostprocessor extends AssetPostprocessor { function OnPostprocessModel (g : GameObject) { Apply(g.transform); } // 添加网格碰撞器到每个名称中包含collider的游戏物体上 function Apply (transform : Transform) { if (transform.name.ToLower().Contains("collider")) { transform.gameObject.AddComponent(MeshCollider); } // 循环 for (var child in transform) Apply(child); }}◆ function OnPostprocessTexture (texture:Teture2D):void描述:在子类中重载这个函数以便在纹理被完全导入并被存储到磁盘上之前获取一个通知//后期处理所有防止文件夹// "invert color" 中的文件,反转他们的颜色class InvertColor extends AssetPostprocessor { // 使用这个初始化 function OnPostprocessTexture (texture : Texture2D) { // 后期处理之灾文件夹 // "invert color" 或它的子文件夹中的文件 // var lowerCaseAssetPath = assetPath.ToLower(); // if (lowerCaseAssetPath.IndexOf ("/invert color/") == -1) //return; for (var m=0;m<texture.mipmapCount;m++) { var c : Color[] = texture.GetPixels(m); for (var i=0;i<c.Length;i++) { c[i].r = 1 - c[i].r; c[i].g = 1 - c[i].g; c[i].b = 1 - c[i].b; } texture.SetPixels(c, m); } // 不需要设置每个 mip map 等级图片的像素你也可以只修改最高mip等级的像素并使用texture.Apply(TRUE);来产生较低mip等级 }}◆ function OnPreprocessAudio ():void描述:◆ function OnPreprocessModel():void描述:在子类中重载这个函数以便在模型被导入前获得一个通知这个可以让你为模型的导入设置默认值class MyMeshPostprocessor extends AssetPostprocessor { function OnPreprocessModel () { // 禁用材质生成,如果文件包含@号,表明他是动画 if (assetPath.Contains("@")) { var modelImporter : ModelImporter = assetImporter; modelImporter.generateMaterials = 0; } }}◆ function OnPostprocessTexture():void描述:在子类中重载这个函数以便在纹理导入器运行前获得一个通知,这个可以让你导入设置为默认值// Postprocesses all textures that are placed in a folder// "invert color" to have their colors inverted.class InvertColor extends AssetPostprocessor { // Use this for initialization function OnPostprocessTexture (texture : Texture2D) { // Only post process textures if they are in a folder // "invert color" or a sub folder of it.// var lowerCaseAssetPath = assetPath.ToLower();// if (lowerCaseAssetPath.IndexOf ("/invert color/") == -1)// return; for (var m=0;m<texture.mipmapCount;m++) { var c : Color[] = texture.GetPixels(m); for (var i=0;i<c.Length;i++) { c[i].r = 1 - c[i].r; c[i].g = 1 - c[i].g; c[i].b = 1 - c[i].b; } texture.SetPixels(c, m); } // Instead of setting pixels for each mip map levels, you can also // modify only the pixels in the highest mip level. And then simply use // texture.Apply(true); to generate lower mip levels. }}AudioImporter 类继承自AssetImporter 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor” 这个类的设置于Audio Import Settings中相同变量◆var channels:AudioImporterChannels描述:导入音频的声道数参见:AudioImporterChannels.◆var compressionBitrate:float描述:Ogg Verbix 压缩比特率
这个值以比特率为对单位,例如:128000应该是128kbps◆var decompressOnLoad:bool描述:Ogg Verbix音频应该在加载时解压◆var format:AudioImporterFormat.描述:导入音频的格式参见:AudioImporterFormat.继承的成员继承的变量assetPathname 对象的名称hideFlags 该物体是否被隐藏,保存在场景中或被用户修改继承的函数GetInstanceID 返回该物体的实例ID继承的类函数GetAtpath 为path处的资源取回资源导入器Operatorbool 这个物体存在吗Instannate 克隆original物体并返回这个克隆Desiroy 移除一个游戏物体,组件或资源DestroyImmediate 立即销毁物体obj,强力建议使用Destroy代替FindObjectsOFType 返回所有类型为type的激活物体FindObjectOFType 返回第一个类型为type的激活物体Operator== 比较两个物体是否相同Operator!= 比较两个物体是否不相同DontDestroyOnLoad 加载新场景时确保物体target不被自动销毁ModelImporter 类继承自AssetImporterModerlImporter让你从脚本编辑器中修改model的导入设置 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor” 这个类的设置与Mesh Import Settings中相同变量◆var addCollider:bool描述:为导入的网格添加网格编辑器◆var bakeIK:bool描述:导入时烘焙IK◆var clipAnimations:ModelImporterClipAnimation[]描述:风格动画得到的动画剪辑参见splitAnimation,ModelImporterClipAnimation◆var generateAnimations:ModelImporterGenerateAnimations描述:动画生成选项参见ModelImporterGenerateAnimations◆var generateMaterials:ModelImporterGenerateMaterials描述:材质生成选项参见ModelImporterGenerateMaterials◆var globalScale:float描述:用于导入的全局缩放因子◆var normalSmoothingAngle:float描述:平滑角度来计算发现计算法线时,尖锐的边缘怎样被变成一个硬边参见:recalculateNormals◆var recalculateNormals:bool描述:导入时是否重新计算法线参见:normalSmoothingAngle◆var reduceKeyframes:bool描述:为动画执行关键帧缩减◆var splitAnimations:bool描述:导入时动画是否应嘎被分割为多个剪辑参见:clipAnimations◆var splitTangentsAcrossSeams:bool描述:切线是否跨越uv接缝分割◆var swapUVChannels:bool描述:导入时切换主副UV通道继承的成员继承的变量assetPathname 对象的名称hideFlags 该物体是否被隐藏,保存在场景中或被用户修改继承的函数GetInstanceID 返回该物体的实例ID继承的类函数GetAtpath 为path处的资源取回资源导入器operatorbool 这个物体存在吗Instannate 克隆original物体并返回这个克隆Desiroy 移除一个游戏物体,组件或资源DestroyImmediate 立即销毁物体obj,强力建议使用Destroy代替FindObjectsOFType 返回所有类型为type的激活物体FindObjectOFType 返回第一个类型为type的激活物体Operator== 比较两个物体是否相同Operator!= 比较两个物体是否不相同DontDestroyOnLoad 加载新场景时确保物体target不被自动销毁TextureImporter 类继承自AssetImporter纹理导入器可以让你从编辑器脚本中修改Texture2D的导入设置 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor” 这个类的设置与Texture Import Settings.中相同变量◆var borderMipmap:bool描述:保持产生mipmap时的相同纹理边界◆var convertToNormalmap:bool描述:转化高度图为法线贴图◆var correetGamma:bool描述:mipmap应使用伽马校正生成参见:mipmapEnabled◆var fadeout:bool描述:淡出mip等级为灰色参见:mipmapEnabled◆var generateCubemap:TextureImporterGeneraterCubemap描述:立方贴图生成模式参见:TextureImporterGeneraterGubemap◆var grayscaleToAlpha:float描述:从灰度生成alpha通道◆var heightmapScal:int描述:最大纹理尺寸较大的纹理将在导入时被缩小◆var mipmapEnabled:bool描述:为这个纹理生成Mipmap◆var mipmapFadeDistanceEnd:float描述:纹理完全淡出的mip等级参见:mipmapEnabled,fadeout,mipmapFadeDistanceStart◆var mipmapFadeDistanceStart:float描述:纹理开始淡出的mip等级参见:mipmapEnabled,fadeout,mipmapFadeDistanceStart◆var mipmapFilter:TextureImporterMipFilter描述:Mipmap过滤模式参见:TextureImporterNormalFilter,mipmapEnabled◆var normalmapFilter: TextureImporterNormalFilter描述:法线图过滤模式参见:TextureImporterNormalFilter,convertTONormalmap◆var npotSeale:TextureImporterNPOTScale描述:非2的幕次尺寸纹理的缩放模式参见:TextureImporterNPOTScale◆var recommendedTextureFormat:TextureImporterFormat描述:自动决定最好的纹理格式(只读)参见:TextureImporterFormat◆var textureFormat:TextureImporterFormat描述:导入纹理的格式 参见:TextureImporterFormat继承的成员继承的变量assetPathname 对象的名称hideFlags 该物体是否被隐藏,保存在场景中或被用户修改继承的函数GetInstanceID 返回该物体的实例ID继承的类函数GetAtpath 为path处的资源取回资源导入器operatorbool 这个物体存在吗Instannate 克隆original物体并返回这个克隆Desiroy 移除一个游戏物体,组件或资源DestroyImmediate 立即销毁物体obj,强力建议使用Destroy代替FindObjectsOFType 返回所有类型为type的激活物体FindObjectOFType 返回第一个类型为type的激活物体Operator== 比较两个物体是否相同Operator!= 比较两个物体是否不相同DontDestroyOnLoad 加载新场景时确保物体target不被自动销毁AssetPostprocessor 类AssetPostprocessor让你进入导入流水线并在导入资源之前或之后运行脚本 注意:这是一个编辑器类。为了使用它你必须防止脚本到工程文件夹的Assets/Editor中,编辑器类位于UnityEditor命名空间因此对于C#脚本你需要在脚本开始位置添加“usingUnityEditor” 这样你可以在导入设置中重载缺省的值或则修改导入的数据,如贴图和网格变量◆var assetImporter:AssetImporter描述:指向资源导入器◆var assetPath:string描述:被导入的资源的路径名◆var preview:Texture2D描述:指定一个自定义的纹理到这个变量以便产生导入资源的预览函数◆function GetPostprocessOrder():int描述:重载导入器执行的顺序通过重载GetPostprocessOrder你能够排列后期处理执行的顺序,优先级较小的将首先载入◆function LogError(warning:string,context:Object=null):vold描述:记录一个导入错误到控制台传递一个资源作为第二个参数来连接这个错误到编辑器中的资源参见:DebugLogError◆function LogWarning(warning:string,context:Object=null):vold描述:记录一个导入警告道控制台传递一个资源作为第二个参数来连接这个警告到编辑器中的资源参见:DebugLogError消息传递◆function OnAssignMaterialModer(renderer:Renderer):Material描述:取得源材质返回的材质将被赋予给渲染器,如果返回null,Unity将使用它的缺省材质找到产生方法来分配材质。soureeMaterial在模型导入并将被销毁前,OnAssignMaterial之后直接从模型生成。class MyMeshPostprocessor extends AssetPostprocessor { function OnAssignMaterialModel (material : Material, renderer : Renderer) : Material { var materialPath = "Assets/" + material.name + ".mat";// 查找在材质路径上是否有一个材质
// 关闭这个以便总是产生新材质 if (AssetDatabase.LoadAssetAtPath(materialPath)) return AssetDatabase.LoadAssetAtPath(materialPath); // 使用specular shader创建一个新的资源 // 其他默认值来自模型 material.shader = Shader.Find("Specular"); AssetDatabase.CreateAsset(material, "Assets/" + material.name + ".mat"); return material; }}◆function OnPostprocessAllAssets(importedAssets:string[],deletedAssets:string[],movedAssets:string[],movedFromPath:string[]):void描述:OnPostprocessAllAssets在一些资源被导入后调用(资源进度栏到达末端)class MyAllPostprocessor extends AssetPostprocessor { static function OnPostprocessAllAssets ( importedAssets : String[], deletedAssets : String[], movedAssets : String[], movedFromAssetPaths : String[]) { for (var str in importedAssets) { Debug.Log("Reimported Asset: " + str); } for (var str in deletedAssets) { Debug.Log("Deleted Asset: " + str); } for (var i=0;i<movedAssets.Length;i++) { Debug.Log("Moved Asset: " + movedAssets[i] + " from: " + movedFromAssetPaths[i]); } }}