下面是预览的部分,带图的版本请看上面链接。
 
 
 
  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默认情况下是只有一行的,但同时也能变成复数行显示的TextArea。Multiline和TextArea功能大致上相同,不过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
 

【学步者日记】UnityEditor扩展菜单以及ScriptableObject的更多相关文章

  1. Unity编辑器扩展 Chapter7--使用ScriptableObject持久化存储数据

    Unity编辑器扩展 Chapter7--使用ScriptableObject持久化存储数据 unity unity Editor ScirptableObject  Unity编辑器扩展 Chapt ...

  2. SharePoint 2013 自定义扩展菜单

    在对SharePoint进行开发或者功能扩展的时候,经常需要对一些默认的菜单进行扩展,以使我们开发的东西更适合SharePoint本身的样式.SharePoint的各种功能菜单,像网站设置.Ribbo ...

  3. SharePoint 2013 自定义扩展菜单(二)

    接博文<SharePoint 2013 自定义扩展菜单>,多加了几个例子,方便大家理解. 例七 列表设置菜单扩展(listedit.aspx) 扩展效果 XML描述 <CustomA ...

  4. EF搭建可扩展菜单

    EF实现可扩展性菜单 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !impo ...

  5. UnityEditor扩展-右键拷贝资源路径到系统剪贴板

    要点速记 命令添加到右键菜单 [MenuItem("Assets/Copy Asset Path")] 或 [MenuItem("Assets/Copy Asset Pa ...

  6. UnityEditor扩展-Shader浏览器

    1. 用途 用于浏览项目所有Shader被使用的情况 2. 界面说明 Ignore Directory:添加不搜索的文件夹,不添加默认搜索全部 Find按钮:开始搜索 Used Shaders:已被使 ...

  7. 【学步者日记】C#使用线程

    http://note.youdao.com/noteshare?id=2810300cdfa3f4d973792dcf30a31db9 System.Threading.Thread th; th ...

  8. 【学步者日记】C#反射中NonPublic和Instance需要一起使用

    完整链接请看: http://note.youdao.com/noteshare?id=f378d9a414e46893b0e300b017ed3655 ——————————————————————— ...

  9. 【学步者日记】实现破碎效果 Fracturing & Destruction 插件使用

    全文见原始链接:http://note.youdao.com/noteshare?id=ef5ef90b71da4e960e5bc0da4f3f17ec 下面是预览 示例工程链接:https://pa ...

随机推荐

  1. Python的集合框架

    Python内置了四种集合框架(list.tuple.dict.set) list:list是一种有序的集合 list里面的元素的数据类型也可以不同,list元素也可以是另一个list In [28] ...

  2. Linux:网络配置

    网络配置 1.网卡配置 vim /etc/sysconfig/network-scripts/ifcfg-eth0 1DEVICE=eth0 2 HWADDR=00:0C:29:93:41:2B 3 ...

  3. Git 配置ssh key的步骤

    First start by setting up your own public/private key pair set. This can use either DSA or RSA, so b ...

  4. 【剑指offer】二叉树的子结构,C++实现(递归)

    原创博文,转载请注明出处! <牛客链接> 1.题目 输入两棵二叉树A,B,判断B是不是A的子结构.(ps:约定空树不是任意一个树的子结构) 图1.二叉树A和二叉树B 2.思路(递归)    ...

  5. [javascript][转载]jQuery获取Select选择的Text和 Value

    原文地址: http://www.cnblogs.com/yaoshiyou/archive/2010/08/24/1806939.html http://www.cnblogs.com/SAL292 ...

  6. websocket IE11 提示SecurityError

    一开始我从网上下载的示例地上localhost:8081 在其它 浏览器下都正常,就在IE11下提示SecurityError, 然后把我把localhost换成IP,就好了. 依次记录下.

  7. 使用Linq动态排序

    Linq排序很方便,如果能动态创建Expression再排序就更方便了. 正序还是倒序排列 var order = typeof(Enumerable).GetMember(direction == ...

  8. Java并发--线程间协作的两种方式:wait、notify、notifyAll和Condition

    在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界 ...

  9. 语义耦合(Semantic Coupling)

    跟小伙伴一起重构一段 UI,试图将用户界面和业务代码分离的时候,小伙伴试图在业务代码中直接调用 UI.我们当然都知道这会产生耦合,于是小伙伴试图定义一些属性.变量或接口来解决这个耦合.虽然在代码的静态 ...

  10. JavaWeb向浏览器返回一个音频流

    浏览器直接播放音频文件,1是直接访问一个html的音频文件,,2 是返回一个Java音频流给浏览器解析. 下面实现一个java的wav文件音频流,可以直接播放音频文件 package org.lib. ...