【学步者日记】UnityEditor扩展菜单以及ScriptableObject

下面是预览的部分,带图的版本请看上面链接。
 
 
 
  1. using UnityEditor 会导致编译时出错
 
在Unity Editor中生成Assemble-CSharp.dll时,由于没有UnityEditor.dll的引用,会引起脚本的编译错误。Build生成Assembly-CSharp.dll的时候,不会添加UnityEditor.dll的引用这件事请记住。如果不知道的话,有可能就找不到“突然Build就无法通过了”的原因。 --------------------- 本文来自 xdestiny110 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/xdestiny110/article/details/79372530?utm_source=copy
 
  1. Editor文件夹的位置无特别限制,可以同时生成多个
Editor文件夹的位置并没有特别的限制,同时生成多个也是可以的。 
- Assets/Editor 
- Assets/MyFolder/Scripts/Editor 
- Assets/Standard Assets/Editor 
 
  1. 使用#if UNITY_EDITOR使编译时去除某些代码
在Runtime时需要执行的脚本有时候会包含Editor API。 这个场合下需要使用#define。UnityEditor上已经有UNITY_EDITOR的宏定义。Build的时候,脚本编译是没有UNITY_EDITOR的定义的。因此#if UNITY_EDITOR中包含的代码将会被去除。 --------------------- 本文来自 xdestiny110 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/xdestiny110/article/details/79372530?utm_source=copy
 
 
  1. 细节面板中的范围
 
  1. Multiline和TextArea
 
Textfile默认情况下是只有一行的,但同时也能变成复数行显示的TextAreaMultilineTextArea功能大致上相同,不过Multiline有着[无法依据宽度自动换行]和[不能使用scroll表示]的限制
 
  1. ContextMenuItem追加右键方法
能够对在Inspector上表示的变量追加Context Menu。另外,在Component中虽然有对整体进行reset的功能,但没有对于单个变量进行reset的功能。因此,这时候就需要使用ContextMenuItem添加这个功能 
 
 
  1. 对Color使用颜色拾取器ColorUsage
 
  1. AddComponentMenu 该组件的添加菜单的位置
将该组件添加到菜单->AddComponent->MyUI->TweenColor中;
 
  1. ExecuteInEditMode 在编辑器模式中运行
在双击加载场景时调用awake,同时会在编辑器模式中调用update、OnGUI。
 
  1. ContextMenu 该函数在组件菜单中显示
组件右键菜单,执行某函数。
 
 
  1. SelectionBase 该组件会优先被选择
当鼠标点击某物体树时,会选中该物体树中的某个物体(由Unity决定)(效果A),但当该物体树中有该属性的组件时,会自动选择该物体,如果再次点击鼠标,则回到效果A。
 
 
  1. EditorPref 编辑器数据持久化
保存的内容是PC里共享的,不被Unity项目所限制,适合用于编辑器里共享值的情况。保存编辑器窗口的大小、UnityEditor的环境设置等,
EditorPref会依据主要版本进行保存。特别是Windows会将值保存在注册表里面。因此如果这个过程不小心进行了错误的设置,最糟糕的情况下有可能导致windows无法启动。请特别注意。
在哪里保存,在OnEnable/Init/Awake等而不要在OnGUI和Update中。
 
  1. ScriptableObject 脚本化对象 自定义资产
需要声明CreateAssetMenu
对应的代码也贴出来了。从脚本中读取ScriptableObject的方法如下:
var exampleAsset =     AssetDatabase.LoadAssetAtPath<ExampleAsset> ("Assets/Editor/ExampleAsset.asset"); --------------------- 本文来自 xdestiny110 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/xdestiny110/article/details/79678922?utm_source=copy
 
原文地址:https://www.cnblogs.com/JackSamuel/p/9705828.html