真Unity3d_Editor扩展工具基础入门
来源:互联网 发布:java软件设计 编辑:程序博客网 时间:2024/06/05 18:18
2017.01
“”不是很全,边做边补全“”
2017.07
这个文章只完成了1/10,发现Unity3d对编辑器的支持真不错,1是人家真的是从编辑器起家的(shader编辑器,但绝不是3D引擎),2是从EditorUtility和UnityEditor几个包来看,是几个不同的团队做的,因为编辑器和编辑器底层,划分很好,很清晰(假如你是做游戏几年的,可能你连EditorUtility都没真正用过,但Unity团队花了不少功夫在上面,因为看起来就是功能很多划分很清晰,也就是你做了几年,但却连Unity3d一大部分功能你都还没用上)
如果想看C#基础语法请看
http://blog.csdn.net/avi9111/article/details/72724578
基本概要
现在Asset Store上总共有多少个编辑器(Editor)扩展?
答案是:
首先,自定义编辑器脚本基本上都会引入这个包
using UnityEditor;
而这种脚本,打包的时候,不可不说问题很大,解决方案就是在所有你的这些自定义脚本(for Editor)放在一个Editor目录下,
例如 : YouProjectName/Scripts/Editor
Editor目录这个是Unity3d的保留目录名,也就是你可以建多个,在不同的路径,
总之在Editor目录下的文件都会被当做是编辑器扩展,打包的时候并不会连同你的应用或者游戏一起被打包
其次,Inspector扩展如何做
[CustomEditor(typeof(Bloom))]public class BloomEditor : Editor{ public override void OnInspectorGUI() {}}
* 继承Editor,其实只是继承Editor Window界面,但还不是Inpector扩展,OnInspectorGUI 如同OnGUI,所以,你懂的
*由于是继承Editor,而不是平时的MonoBehavior(废话),所以一般的gameobject, transform等不能用
最后,和Game | Scene 的交互
GUI语法
界面自定义的选择不多,考虑到编辑器扩展,最少的代价换取最方便的功能,所以原生的GUI是大部分编辑器扩展工具的选择,但其实,你也不太可能在自定义的编辑器里面引入NGUI等框架,虽然可以也真有人这么做,但是NGUI并不是设计出来做编辑器扩展的。
Editor工具
打开提示对话框和选择文件
/* you may use these codes for EditorEditorUtility.DisplayDialog("Select Texture", "You must select a texture first!", "OK");string path = EditorUtility.OpenFilePanel("Overwrite with png", "", "png");if (path.Length != 0){WWW www = new WWW("file:///" + path);www.LoadImageIntoTexture(texture);}*/
- 真Unity3d_Editor扩展工具基础入门
- 真Unity3d_Editor扩展工具进阶_自定义按钮_样式_等等
- YII -- 基础 工具 扩展
- Chrome扩展入门基础
- java基础入门---Map扩展
- java 入门基础-开发工具
- java基础入门----Map扩展2
- (2)基础入门:了解扩展体
- 深度学习真的可以零基础入门吗?
- Ext Js入门第3篇-扩展工具方法使用
- Arcpy基础入门-4、arcpy工具进阶
- 基础反病毒工具入门系列
- 基础反病毒工具入门系列
- Phaser工具的基础入门了解
- linux入门基础——linux扩展权限
- 扩展kmp入门---扩展kmp
- Linux入门基础 #10:命令行文本处理工具
- java基础入门----Collections1 集合框架工具类
- [NOP404]网站入口
- hustoj配置文件注释:
- java对excel的处理工具类
- Hadoop-2.8.0安装教程---单机/伪分布式配置
- php简单工厂模式
- 真Unity3d_Editor扩展工具基础入门
- 在PHP中PDO解决中文乱码问题的一些补充
- 归并(Merge)排序法
- 支付宝JAVA端支付与验签
- java多线程总结五:线程池的原理及实现
- jQuery插件开发详解
- Ubuntu安装Solr
- 使用VS2010开发ActiveX(MFC)控件(3)——添加接口及WEB调用
- 第十八周算法分析与设计:Add Two Numbers