2019
11-09
11-09
Unity3D研究院编辑器之修改贴图片默认导入规则(三十五)
贴图导入unity后会自动设置成压缩格式,它会先判断贴图是否有透明通道。 Android:不带透明通道压缩成ETC1,带透明通道压缩成ETC2,不被4整除fall back到RGBA32 IOS: 不带透明通道压缩成RGB PVRTC,带透明通道压缩成RGBA PVRTC ,不是2的整数次幂fall.... Read More >
专注移动互联网,专注Unity3D游戏开发
贴图导入unity后会自动设置成压缩格式,它会先判断贴图是否有透明通道。 Android:不带透明通道压缩成ETC1,带透明通道压缩成ETC2,不被4整除fall back到RGBA32 IOS: 不带透明通道压缩成RGB PVRTC,带透明通道压缩成RGBA PVRTC ,不是2的整数次幂fall.... Read More >
Unity2017是明确不支持GPU Instancing的,如果在材质上勾选了enable GPU Instancing后,如下图所示,在Frame Debugger中,我们能清楚的看到所有的游戏对象没有合批,提示Objects are lightmapped。 所以为了让Unity2017支持G.... Read More >
烘焙Lightmap以后unity会自动给参与烘焙的所有mesh添加uv2的属性,例如,三角形每个顶点都会有UV2它记录着这个每个顶点对应Lightmap图中的UV值,这样拥有3个顶点的三角形面就可以通过UV2在Lightmap中线性采样烘焙颜色了。 LightmapIndex: 所以每个MeshR.... Read More >
合并mesh的功能比较常见,可以运行时合也可以编辑模式下提前合并,但是至少需要注意两点。 1.考虑lightmap,合并mesh以后会将lightmap的信息写入uv2,如果有多张lightmap需要传入正确的index,所以参与合批的mesh需要保证处于同一index的lightmap中。 2.如.... Read More >
AssetBundle.LoadFromMemory基本上是无法在手机上用的,因为要多占一份内存,所以大多Unity项目都不进行资源加密。 Unity2017.2提供了一个新的API AssetBundle.LoadFromStream,通过名字就可以知道它是流加载,那么就不会像AssetBundl.... Read More >
最近在优化项目,发现字符串拼接的堆内存非常大,而且非常频繁。 大概原因如下 1.字符串就是char[] 长短发生变化必然要重新分配长度,以及拷贝之前的部分,产生GC 2.字符串+=进行拼接会产生装箱,生成GC 3.Append传入值类型数据,它会调用ToString方法,需要new string 然.... Read More >
前几天公司有个项目,由于美术做了很多背景图并且还大量的使用了渐变过度,导致压缩图片后效果非常差,而且换成RGBA16效果也不理想,如果用RGBA32那就太浪费效率了。后来发现TexturePacker具有添加图片抖动的方式,由于项目组使用了UGUI手动一个个设置这太麻烦了,所以就做了个工具。如下图所.... Read More >
最近在MAC下需要频繁构建DLL,并且还需要调试,写篇文章记录一下过程,如图所示,先创建一个Library工程。 右键EditReference把UnityEngine.DLL引入进来,并且取消选择Local Copy。不然后面会把UnityEngine.dll也拷贝都目标目录下。.... Read More >
最近被浮点数坑了,所以一定要写篇文章记录下。先看看如下代码 通过上面代码,我们可以发现float和uint(为了取最大值,这里就用无符号整形)都是4字节,那么为什么float的取值范围要比int大呢?继续再看一段代码 如果有人不知道 取值范围 -3.402823E+38-3.402823E+38 其.... Read More >
手机上可以把一段时间的profiler日志保存在本地,接着在手机里把文件取出来就可以在电脑上查看了,很方便,上代码,在需要保存手机Profiler日志的时候调用 ProfilerUtils.BeginRecord();并且我已经封装好了。 最后在Profier窗口中点击load载入即可.... Read More >
我以前写过一篇 Unity3D研究院专治IOS查看日志各种不服(九十五) 但是今天无意间发现了一个工具iOSLogInfo,这个工具比之前的做法更好更方便。 下载地址:https://www.blackberry.com/blackberrytraining/web/KB_Resources/KB3.... Read More >
今天是2018年10月24日,祝大家程序员节快乐。 游戏中一旦有换装功能,角色可能就会是多个DrawCall了,所以我们可以将部件的贴图动态合并在一张中。如果想合并PVRTC2或者PVRTC4可以参考我上一篇文章。Unity3D研究院之IOS运行时合并PVRTC贴图(九十九) http://127..... Read More >