最近新项目快上线了,专门抽了一天做性能优化。不开锁帧情况下,在Nexus 5和Nexus 6上始终稳定在60fps(恩刚开始写的时候就比较注意细节,嗯嗯)。在红米测试的时候发现了一个奇怪的现象:战斗界面维持60fps没问题;进入UI界面之后瞬间掉到45fps,甚至有的复杂界面掉到30fps。
阅读全文
本文是Assembly Manipulation and C# / VB.NET Code Injection的翻译,已得到作者授权。该教程作者(亦工具作者)现在在微软开发UnityVS…
阅读全文
这也是最近在做的另一个优化:如何在有限的图中压缩更多的Sprites。最近的Unity和Texture Packer都导入了一个新的特性 Polygon Mode,也就是说将原来的矩形Sprite用更加紧致的Polygon来描述,从而能更有效的利用空白空间,如下图中的胜利标志(红线圈出部分):
阅读全文
压缩纹理能够节约不少内存空间,因此目前项目中UI全都是用Texture Packer打包出大图之后压缩。Unity导入纹理的默认设置是compress,在符合条件的情况下会优先使用PVR或ETC、否则会降为RGBA4444。从程序的角度来说,当然是1/4大小的压缩纹理更好啦~但是,毕竟是有损压缩,会带来一定的损失,有时候还是挺郁闷的。
阅读全文
Unity中的烘焙(不管是老的Beast还是新的Enlighten)有一个非常恼火的功能缺失:无法利用Culling Mask。不管是否设置了Baking为Realtime,还是修改了Culling Mask都没有作用,貌似只有整个设置光源物体的Active才有效。
阅读全文
之前一段时间项目到了一个节点,忙于出包和应付渠道,没太多时间业余充电…最近空下来之后终于有空继续折腾KlayGE。这次是把字体部分kfont读了下,感受到了SDF(Signed Distance Field)的厉害之处。
阅读全文
之前Trace翻译过西川善司「实验做出的游戏图形」「GUILTY GEAR Xrd -SIGN-」中实现的「纯卡通动画的实时3D图形」的秘密系列,后来问他要了份Rip,对照着在Unity里山寨了份。
阅读全文