分析libunity.so Release崩溃

最近一直在和Crash做斗争,一开始用了Bugsnag相当不错,后来经朋友推荐转用腾讯的Bugly,后台查询简直6。

偶尔发现会遇到libunity.so崩溃,如果是Development模式还好,adb log基本就能看的七七八八;如果是Release模式下就一堆地址,根本没法看。网上搜索了下相关信息,绝大多数都是自己编译的C++代码,利用ndk-stack去分析obj文件。但是对于Unity引擎本身来说,我们手头只有一个libunity.so,无法这么干。

更新: 今天wxp和我聊了下,发现新版本竟然Release直接带符号表了,就不用这么麻烦了…5.3.6 Release Notes里第一条是

Android: Symbols for release libraries are now available in PlaybackEngines/AndroidPlayer/Variantions/*/Release/Symbols.

Read More →
SDF字体

之前一段时间项目到了一个节点,忙于出包和应付渠道,没太多时间业余充电…最近空下来之后终于有空继续折腾KlayGE。这次是把字体部分kfont读了下,感受到了SDF(Signed Distance Field)的厉害之处。

Read More →
Unity UV/2UV相关的一系列坑

昨天和美术折腾了一天,好好的理解了一下Unity里UV/2UV的设置,主要是理解很多程序的概念在美术上的理解是怎么一回事儿…

Read More →

最近在折腾Ocean Simulation,业余时间快搞了半个月了,数学功底太差TAT…

fft_part1

Read More →

最近升级XCode 7之后发现xuporter在Jenkins上跪了,因为默认打开了ENABLE_BITCODE选项会导致编译失败。在代码里加上两句话就能解决:

project.overwriteBuildSetting("ENABLE_BITCODE", "NO", "Release");
project.overwriteBuildSetting("ENABLE_BITCODE", "NO", "Debug");

ps. 理论上第三个参数默认是"all",但是木有用的样子…

Read More →

之前Trace翻译过西川善司「实验做出的游戏图形」「GUILTY GEAR Xrd -SIGN-」中实现的「纯卡通动画的实时3D图形」的秘密系列,后来问他要了份Rip,对照着在Unity里山寨了份。

ggx1

Read More →
泰坦黎明效果分析一二

之前在Adreno Profiler工具介绍中提过,对泰坦黎明的效果很感兴趣。现在终于等到安卓版本了,分析了一下它的几个效果,感觉有不少收获:

  • 就硬件来说,很多经验性的性能数据可以更新一下;
  • 就其引擎来说,广告板(Billboard)用的非常之风骚,而且只传顶点、接着在Vertex Shader里拉出面片的思路很赞;
  • 配合美术,用后处理效果提升逼格棒棒的;
  • 整体绘制的还是挺奢侈的,不少地方我觉得用面片能节约非常多。
Read More →

Download my customized QXProfilerControlsCS.dll Put this in C:\Program Files\Qualcomm\Adreno Profiler, or any other path for your installation.

Recently I found an interesting bug with Adreno Profiler: this cannot work correctly with glVertexAttribPointer(indx=2, size=4, type=GL_HALF_FLOAT_OES, normalized=False, stride=32, ptr=0xC). For example, texcoords in half type are presented as strange numbers:

adreno_profiler_half_wrong

Read More →
KFL代码阅读笔记

KlayGE的基础库,就挑看到觉得有意思的地方整理下,主要是有不少c++0x的花样很有趣。

Read More →

周末的时候分析了一下炉石的特效

heartstone

Read More →