本文主要是介绍Unity优化笔记--裁剪游戏中的TTF字体.,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近一直在搞Unity客户端的优化,有必要记录下一些优化方法备忘。
当用unity的profiler观察游戏的内存使用的时候,发现游戏TrueType字体用了13.7M的内存。
这在手机平台上相当难以接受,于是我决定找找解决方案。在网上搜罗了一翻,发现有一家公司提供unity的压缩字体解决方案,能把10多M的TTF压缩成几百K,原理是他们自己开发了一套自己的字体引擎。不过由于没有预算,买不起他家的解决方案,我还是决定自己研究一下咋子整。
最终此BitBucket上找到了一个perl工程,font-optimizer。拉取代码到本地。
为了运行它,还需要装Perl解释器,于是又下载了ActivePerl。装好ActivePerl后,还需要打开Perl Package Manager来安装Font::TTF库。这样才能运行整个工程。
运行的命令行是
./subset.pl --chars="我的游戏只用这几个字" input.ttf output.ttf
或是
./subset.pl --charsfile=common.txt input.ttf output.ttf
subset.pl会从input.tff中抽取包含--chars或--charsfile对应参数的文字到output.ttf中。这样我们就得到了一个字体的子集。
我采用的第二种命令行,因此需要准备一个常用字的txt文件。
这里我搞了一个包含9000多常用汉字的字符集,普通游戏用都差不多了。
转换后只有4.7M,少了9M。作用太明显啦
这篇关于Unity优化笔记--裁剪游戏中的TTF字体.的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!