201601-31 Unity3D研究院编辑器之Editor的GUI的事件拦截(二十一) OnGUI是Unity上一个时代的UI系统,而现在运行时的UI系统已经被UGUI取代,但是Editor的UI还是在用老的这一套GUI系统。比如unity编辑器里的所有窗口,布局,按钮,拖动条、滚动等等都是用GUI来写的。GUI提供了一套Event事件系统,虽然不能模拟它的事件(其实是可以发的 Edi.... Read More >
201601-30 #你好Unity3D#限制SceneView视图中不可选择游戏对象 SceneView 和 Hierarchy视图中鼠标点击都可以选择游戏对象,假如我不想让SceneView视图接收鼠标点击选择事件,只希望在Hierarchy视图选择怎么办呢?我记得是前几天有朋友问过我这个问题,今天你刚好有空我就研究了一下,代码是这样的。 [crayon-673ee45cac56.... Read More >
201601-27 Unity3D研究院编辑器之自定义窗口显示文件夹结构(二十) 假如我想在自定义窗口中显示文件夹的结构,并且可以用鼠标选择对应的文件。如下图所示,文件夹的结构我显示在了Inspector里,鼠标可以进行选择操作。 现在越来越懒,直接上代码吧。。 [crayon-673ee45cacef9413339811/] 运行环境unity5.3.... Read More >
201601-26 #你好Unity3D#Project脚本执行双击资源操作 Unity的Project里面放了很多游戏资源,比如脚本或者图片。正常情况下我们可以通过鼠标双击来进行打开。假如我现在不想主动双击打开,我想自动打开某个脚本或者图片再或者别的资源怎么办? 如下代码所示,两种方法都OK 。这里是测试我用的是鼠标主动选择的对象,可以把需要打开的资源对象使用AssetDatabase.LoadAssetAtPath读取进来, 这样就可以打开任意对象了。 [cra.... Read More >
201601-23 #你好Unity3D#系统所有EditorStyles 我们在做编辑器的时候每个控件后面都有一个 参数是 GUIStyle通常unity会默认分配一个,但是怎么知道unity系统所有的style呢?我写了一段简单的代码把系统的sytle都反射出来了。希望大家喜欢。 代码在这里,注意这里我把unity私有的styl.... Read More >
201601-22 #你好Unity3D#自定义窗口顶部添加小图标 比如在自定义窗口添加图标 可以是系统图标,也可以是自定义图标。下面举了两个例子、 系统图标的名字大家可以去我之前的文章里查 http://www.xuanyusong.com/archives/3777 代码 [crayon-673ee45caf3f1606701366/] OK 祝大家.... Read More >
201601-15 #你好Unity3D#监听Prefab的Apply保存事件 假如想在Prefab保存的时候做点什么事情的话 ,如下图所示,点击Apply得到监听事件。 代码在这里: [crayon-673ee45cafd6a722787758/] 今天脑洞打开。利用这个接口还能干一点事情。 比如 美术修改了prefab没有保存的然后上传sv.... Read More >
201601-09 Unity3D研究院编辑器之序列化的对象修改格式(十九) 一般在做编辑器的时候会给策划做一些脚本或者ScriptableObject,让策划进行或拽赋值等操作。举个例子假如开始策划说我只需要拖放一个GameObject,但是N天以后策划说这里想拖多个GameObject. 那么如果开始序列化的数据不是List<GameObject>那么就悲剧了.... Read More >
201512-30 Unity3D研究院编辑器之脚本的属性显示在自定义窗口下(十八) 一般我们需要把脚本绑定在GameObject上,然后在Inspector视图下对其进行序列化编辑。假如我想把多个GameObject显示在一个自定义windows中怎么办呢? 这里我做了一个例子,把GameObject绑定在场景上,绑定在文件夹上。 呵呵~ 如下图所示,我把Hierarc.... Read More >
201512-23 Unity3D研究院之Unity5.x运行时动态更新烘培贴图(八十七) 前段时间我研究过这个问题,但是没有解决只好作罢。今天刚好有人又问我这个问题,我得空查了一下还是找到了解决办法。另外也感谢问我的人,解答问题的同时也是我学习的过程。 运行时更新烘培贴图分两种情况 1、场景的物件没有发生变化(也就是说没有运行时加载在场景上的Prefab)此时可以直接更换烘培.... Read More >
201512-18 #你好Unity3D#监听场景保存事件 最近想做个东西,主要是给美术用,也就是当美术保存场景之前我想加一些我自己的代码进去。 [crayon-673ee45cb6635498701844/] OK。 这里我们用了OnWillSaveAssets 意思就是保存.asset文件之前,当然不仅仅是场景也包括别的文件。 测试版本 unity5.3.0.... Read More >
201512-11 #你好Unity3D#使用脚本锁定Inspector检测面板视图 Unity检测面板视图的锁定必须点击那个小锁头,如下图所示,假如我想用脚本设置锁定或者不锁定怎么办? 直接上代码。 [crayon-673ee45cb6ae7029756472/] 版本:Unity5.3.... Read More >
201512-10 #你好Unity3D#脚本自动选择Hierarchy或Project下的对象 今天有个朋友问我怎么样自动显示某个对象的Inspector面板? Unity是当鼠标在Hierarchy或者Project视图中选择一个或者多个Object,然后在右侧Inspector面板上就会显示所有属性。那么其实解决这个问题的方法就是使用脚本去选择一个Object就行。 代码如下 [c.... Read More >