Intel 14代罪大恶极

前两天有台新打包机cook的时候疯狂闪退: 一开始以为是并行跑的job负载太高了,就去掉了并行job的部分; 改完发现负载跑不满了,依然高频闪退、且每次对应的资产还不一致,就重拉了一份SVN确认环境干净; 依然是2min左右闪退…和鸟哥查到一两点,整的怀疑人生了orz     阅读全文
Kanglai Qian's avatar
Kanglai Qian 12月 01, 2024

修复PhysX Visual Debugger复杂场景闪退

最近忙于各种优化,有遇到PxScene::simulate()耗时很长的情况——这时的第一反应就是掏出PVD,想看下是不是场景里是不是又被摆了一堆奇怪的玩意儿。结果在游戏里Connect Debugger后、PVD直接原地crash,令人尴尬。尝试了下直接在游戏里保存出pvd文件倒是没问题,只不过打开时依然闪退。感觉就像某些场景里有脏东西,一碰就炸;而另一些场景则是可以正常使用PVD查看。     阅读全文
Kanglai Qian's avatar
Kanglai Qian 11月 30, 2024

Unity里使用BC7 RDO压缩

今天玩了下机械恋心Demo,发现开发组有些4K背景贴图还在使用BC1。在群里水了会,问了为啥没用BC7(毕竟现在DX11已经是标配了)——开发组是处于包体大小的考虑,Unity官方的crunch压缩只支持了ETC和DXT。 像UE的话收购oodle之后就集成BC7 RDO了,开箱即用非常省心。不过抱着折腾的心态,我快速试了手在不破坏Unity资源管线+没有Unity源代码的情况下是否也能用起来。     阅读全文
Kanglai Qian's avatar
Kanglai Qian 5月 25, 2024

Steam Deck接入笔记

前段时间摸鱼的时候把自研在Steam Deck上跑起来了,发现网上相关资料比较少,记录下过程中一些好玩的坑。ps. 花时间搞这个一方面是接入手柄之后,实体操作感逼格瞬间上来了 还有一个原因是我有这个设备。     阅读全文
Kanglai Qian's avatar
Kanglai Qian 12月 25, 2023

XCode 15打包性能问题排查

这两天升级了下XCode 15,一开始遇到了Xcode 15 linking error、unary_function、NWEndpoint.hostPort(host: , port: ) crash in Xcode15几个都是小问题。结果打了个包发现Build时间暴增: 本来单次编译需要1小时左右,现在直接涨到2.5小时还不太够。     阅读全文
Kanglai Qian's avatar
Kanglai Qian 10月 18, 2023

惹人嫌的warning MSB8028

今天在等编译过程中,抽空了解了下一直出现的MSB8028(这个警告其实出现了应该有几年了orz),有点意思…从表现上来说非常简单,就是编译项目的时候有几个工程(后来发现其实是名字要长…)很容易报这个warning 4>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets(517,5): warning MSB8028: The intermediate directory (xxx\Engine\Intermediate\Build\Obj\x64\Hybrid\NvBlastExtSerialization\) contains files shared from another project (NvBlastExtSerialization.vcxproj). This can lead to incorrect clean and rebuild behavior.     阅读全文
Kanglai Qian's avatar
Kanglai Qian 6月 30, 2023

angle追加折腾笔记

之前在angle折腾笔记里提到恢复angle作为ES3模拟器,方便PC上查BUG。当时为了模拟EXT_copy_image使用了Vulkan Backend,别的用起来都挺好,但是很蛋疼的一点是RenderDoc抓帧的API其实都是vlk的… 这礼拜查别的BUG的时候,索性痛定思痛尝试使用GLES Backend。 这里记录下补全功能以及修复了若干Angle/RenderDoc相关问题的笔记…     阅读全文
Kanglai Qian's avatar
Kanglai Qian 6月 04, 2023

BSS段内存问题排查笔记

本周版本的时候QA同学跑过来说iPhone 13进游戏闪退,而且没有抓到闪退的堆栈信息; 盲猜是内存问题,当时手头在忙就直接找人试了下低端一些的设备,结果没有翻车orz 就一时间有点摸不到头脑。后来腾出手直接XCode连着看了下,雀实是内存冲到2G之后被系统干了,在- (void)applicationDidReceiveMemoryWarning:(UIApplication*)application里打了行LOG也触发到了。 昨天在家终于有空仔细研究下这个问题,最后发现还是蛮少见的情况… 特意记录一下笔记。     阅读全文
Kanglai Qian's avatar
Kanglai Qian 4月 03, 2023

高版本安卓注入RenderDoc

几年前在公司内部KM分享过如何方便的将RenderDoc内嵌到内部版本中从而方便调试,以及如何向下兼容更低版本的Android系统(RenderDoc Android最低系统要求是6.0)。 手法其实非常简单: 直接将libVkLayer_GLES_RenderDoc.so这个打包进apk中然后手动加载下即可; 这样做额外的好处是不需要依赖其hook系统的机制,所以不需要interceptor-lib,进而压低系统版本要求。     阅读全文
Kanglai Qian's avatar
Kanglai Qian 2月 12, 2023

angle折腾笔记

时隔多年重新编译angle,主要是为了PC上能模拟ES3.1,特别是最好能支持VT相关操作。本来不抱希望,毕竟angle文档上写的很清楚,目前GL/GLES/Vulkan Backend都只支持到ES 3.1,ES 3.2还处于in progress。 但是突然发现EXT_copy_image这个扩展在Vulkan Backend上已经被支持Vulkan: Add support for EXT_copy_image,瞬间觉得有戏就折腾了下。     阅读全文
Kanglai Qian's avatar
Kanglai Qian 5月 07, 2022