201407-31 Unity3D研究院之判断变量是脚本中赋值还是编辑器预先赋值 如下图所示,脚本中凡是声明public的变量,都可以在编辑器中赋值也可以在脚本中运行时赋值。今天有个开发者问我,如何能判断变量是脚本中赋值还是从编辑器预先赋值。 这个问题如果搞清楚Unity脚本的生命周期其实并不难,程序运行时我载入上图的GameObject,此时将执行New Beha.... Read More >
201407-31 Unity3D研究院之Prefab里面的Prefab关联问题 最近造了个轮子可以批量替换prefab里的prefab,欢迎大家测试~ https://bitbucket.org/xuanyusong/prefab-replace 最近在做UI部分中遇到了这样的问题,就是Prefab里面预制了Prefab。可是在Unity里面一旦Pr.... Read More >
201407-31 Unity3D研究院之获取摄像机的视口区域 摄像机分为两种,一种是正交摄像机还有一种是透视摄像机。正交摄像机无论远近它的视口范围永远是固定的,但是透视摄像机是由原点向外扩散性发射,也就是距离越远它的视口区域也就越大。那么我们如何获取距离摄像机任意距离的视口区域呢?如下图所示,分别用红色和黄色两种颜色将计算出来的视口区域标记了出来。 .... Read More >
201407-30 Unity3D研究院之解决Scene视图中不显示东西 今天我有个同事突然问我它的Unity里Scene视图中突然不显示任何东西了,因为他是初学者也不知道自己瞎点点了什么。我去他电脑上看了一下,他的Scene视图中就是不显示东西,无论我怎么把Prefab拖进去或者创建GameObject就是不显示。 开始也把我问蒙了,后来仔细查了一下,原来是他不小.... Read More >
201407-25 Unity3D研究院之在MAC上脚本写入Excel .xlsx格式(七十六) 今天同事告诉我了一个更好的方法进行unity中的读与写 (EPPlus) https://epplus.codeplex.com/releases/view/118053 [crayon-673f6508ac1e7354061129/] 这里还有个更详细的教程, http:.... Read More >
201407-23 Unity3D研究院之多语言用中文做KEY(七十五) 做多语言的时候用中文做KEY绝对是有100%的好处,如果用英文表示那么代码里面给文字赋值的地方全都是英文,写的代码多了以后维护起来就没有人能看懂了,或者看起来很费劲。 说说用中文做KEY的原理:Unity中给文字赋值的地方就两处, 一个是提前预制在UI Prefab上的文字,还有一个是写在代码.... Read More >
201407-18 Unity3D研究院之初探PoolManager插件(七十四) 前几天我在博客里面分享了为什么Unity实例化很慢的原因,并且也分享了一个缓存池的工具。有朋友给我留言说PoolManager插件非常好用,我抽空研究了一下确实很好用。PoolManager目前的最新版本是5.5.2 我有幸在网络上找到了破解版本,文章最后我会放出来不过还是希望大家支持正版嘿嘿。 .... Read More >
201407-17 Unity3D研究院之一个有意思的搜索文档的小工具 无意间发现了一个很有意思的小工具,它专门用来搜索Unity的API文档,或者脚本内容。在AssetStore上搜索 Unity Search 第一个免费的那个就是了。或者直接打开如下网址址:https://www.assetstore.unity3d.com/en/#!/content/4113.... Read More >
201407-16 Unity3D研究院之Time.timeScale、游戏暂停(七十四) 项目里面一直在用Time.timeScale来做游戏的 1倍 2倍整体加速,今天我仔细看了一下Time.timeScale才发现之前我理解错了一些东西。 Time.timeScale可以控制Update 和LateUpdate 的执行速度,举个例子说明一下。 Time.timeScale.... Read More >
201407-14 NGUI研究院之与EasyTouch结合使用(十五) 用了EasyTouch插件一段时间了,小问题还是有一些,总体来说用起来还行。这篇文章我就来说说EasyTouch和NGUI的结合。 总体来说触摸屏幕也就三种情况。 1.触摸事件只响应NGUI部分,不响应3D部分。 2.触摸事件只响应3D部分,不响应NGUI部分。 3.触摸事件.... Read More >
201407-14 Unity3D研究院之DontDestroyOnLoad的坑 Unity中的一个方法DontDestroyOnLoad可以让某些游戏对象在切换场景的时候不是施放,听起来是一个非常好的方法,但是其实如果没用好那么可能就是有问题了。 举个例子: 在场景1中某一个脚本的Start方法中,DontDestroyOnLoad(A) 接着切换到场景2中,理所当然A对象被保留了下来 如果在从2场景再次回到1场景,那么又执行了一遍DontDestro.... Read More >
201407-06 Unity3D研究院之利用缓存池解决Instantiate慢的问题(七十三) Unity3D做项目有三个地方处理不好游戏整体就会出现卡顿的问题。 1.NGUI直接打开界面卡,建议看看我之前写的这一篇文章 http://www.xuanyusong.com/archives/2799 (本文就不赘述了) 2.角色放技能的时候卡 尤其是放群体攻击技能时, 因为每.... Read More >
201407-03 NGUI研究院之有点坑爹的图文混排(十四) 最近研究了了一下NGUI的图文混排工具,得出的结论是有点坑爹。。大家看看我的测试步骤,我用的是目前NGUI的最新版本3.6.6 。 当我在 Open BitMapFont Marker 的时候界面上出现Assets/NGUI/Editor/FreeType.dylib is missing 的.... Read More >