Unity Pitfall 汇总
【Unity Pitfall 汇总】
1、 当脚本被绑定到一个对象时,一个类对象即会被创建,此意味着此类构造函数会被调用。所以在构造函数中不要调用任何运行时才创建的类。相应的初始化方代码应该移至Start方法中。
2、需使用UNITY_EDITOR宏来避免在编辑器中调用构造函数。

3、Start()的调用顺序不确定,以下代码,并不能保证EventCenterService.Start方法在DataCenterService.Start前被调用。

4、GetComponentInChildren。
Returns the component of Type type in the GameObject or any of its children using depth first search.
Only active components are returned.
会找当前GO,如果当前GO找不到,则DFS查找子结点,只有activeInHierarchy的对象的component才会返回,这点要特别当心。
5、在Prefab中设置的public字段,无法在构造函数中引用。通过prefab设置的public字段,只能在start方法开始后引用,否则取不到prefab中的值。
6、FastBloom 组件在 Adreno320下会引起 Crash。
7、error x5204。此为Shader错误,若有if语句,可尝试加上/删除else,看看是否能解决此错误。
8、如果prefab有enum的公开属性,则enum只能在末尾添加新数值,而不能在中间插入,因为Unity的prefab保存的是int,而不是真的enum值。在中间插入的话,会导致所有的enum值错乱。
9、prefab中若引用代码,则该代码文件的meta文件必须一起提交,否则会出现丢失脚本的问题。
10、若只想修改子结点相对于父结点的position、rotation,请用localPosition、localRotation来修改。
11、当协程遇上继承。在override方法中调用base的方法时,如果本身是个协程,则必须调用MoveNext方法。
12、GameComponent方法非常耗时,下图中,4次调用花费了9.28ms,MBP上环境下的数据。

13、将一对象A设置为DontDestroyOnLoad,若其父对象B没有此设置,则A一样会在切Scene时被移除,因为A的父对象B会被移除。
14、NGUI中ttf字体必须使用keep crisp选项才能强制不自动换行。
15、ios/mac下,图片如何会糊,就必须使用ARGB32,即不压缩图片的处理方法。
16、Application.LoadLevel。
若连调三次 Application.LoadLevel,则UnityEngine会在后序,每帧依次执行一次清空+OnApplicationLevelLoaded.
Unity Pitfall 汇总的更多相关文章
- 2019年Unity学习资源指南[精心整理]
前言 进入一个领域,最直接有效的方法就是,寻找相关综述性文章,首先你需要对你入门的领域有个概括性的了解,这些包括: 1.主流的学习社区与网站. 2.该领域的知名大牛与热心分享的从业者. 3.如何有效的 ...
- unity学习网站汇总
由于最近要学习unity3d 开发,把自己找来的资料汇总下 unity3D官方学习资源:https://www.assetstore.unity3d.com/ unity3D API查询网站:http ...
- [官方教程] Unity 5 BLACKSMITH深度分享 - 汇总帖
BLACKSMITH深度分享系列 相信此大片在Unite上的惊艳亮相,让许多人至今无法忘却它所带来的震撼,Unity的大师们为了让更多Unity开发者了解此大片是如何用Unity5诞生的,深度分享了多 ...
- Unity视频播放的各种实现方式汇总
http://www.taidous.com/bbs/article-860-1.html Unity视频播放有很多种实现方式,可根据要求来选择适当的实现,这里总结一下: 1. MovieTextu ...
- Unity热更方案汇总
http://www.manew.com/thread-114496-1-1.html 谈到目前的代码热更方案:没什么特别的要求 <ignore_js_op> toLua(效 ...
- 汇总:unity中弹道计算和击中移动目标计算方法
http://download.jikexueyuan.com/detail/id/432.html 弹道计算是游戏里常见的问题,其中关于击中移动目标的自动计算提前量的话题,看似简单,其实还是挺复杂的 ...
- unity一些操作汇总
设置父物体高度自适应子物体:父物体添加ContentSizeFitter,设置Horizeontal Fit和Vertical Fit为Preferred Size. ScrollView设置Cone ...
- Unity打包安卓项目问题汇总(持续更新)
1.V1,v2签名问题 安卓11以上--v1签名无法使用: 安卓7以下--v2无法使用: 应用宝不支持没有v1签名的包: AndroidStudio版本2020打签名包时无法勾选v1,v2选项,4.2 ...
- ASP.NET MVC4入门到精通系列目录汇总
序言 最近公司在招.NET程序员,我发现好多来公司面试的.NET程序员居然都没有 ASP.NET MVC项目经验,其中包括一些工作4.5年了,甚至8年10年的,许多人给我的感觉是:工作了4.5年,We ...
随机推荐
- {vlFeat}{matlab}{VS2010}{编译配置}
运行程序需要vlfeat与mex等在matlab与vs2010中配置,碰到了不少困难,下面给出解决方案 1.下载vlfeat,但是vlfeat目录中并没有编译好的mex文件,需要在vs2010中编译 ...
- 常用ES6语法
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- C#机器学习插件 ---- AForge.NET
目录 简介 主要架构 特点 学习之旅 简介 AForge.NET是一个专门为开发者和研究者基于C#框架设计的,这个框架提供了不同的类库和关于类库的资源,还有很多应用程序例子,包括计算机视觉与人工智能, ...
- qt 把整形数据转换成固定长度字符串(转)
QString ToStr(int number, int size){ return QString("%1").arg(number, size, 10, QChar('0') ...
- Request.UrlReferrer详解
使用前需要进行判断: if (Request != null && Request.UrlReferrer != null && Request.UrlReferrer ...
- Unit04: 实战技巧 、 登录
Unit04: 实战技巧 . 登录 使用注解方式简化Unit04的小程序. 1. 基于注解的springmvc应用程序的开发 (1)编程步骤 step1. 导包. step2. 添加spring配置文 ...
- 在Mac下配置php开发环境:Apache+php+MySql (卡在 给mysql 设置不了账号密码)
https://my.oschina.net/joanfen/blog/171109#OSC_h4_3 cmd 进入mysql的方法
- jmetr _MD5加密_获取签名
要达到的目的: app每个请求里面 请求头都带有一个 sign 的参数, 他的值是通过 开发自己设计的拼接方式 再通过md5加密生成 我们就是要生成这个sign的值出来 准备: 和开发要到签名组成公式 ...
- postman 查看请求,已各种语言方式展示:
查看请求,已各种语言方式展示:
- 给scrapy添加代理IP
request.meta['proxy'] = 'http://'+'175.42.123.111:33995'