2022-12-11周总结
这周主要跟了3个事情。
1. 足球微信小游戏
足球微信小游戏趁着世界杯的风口,这周终于正式开始推了,虽然量不是很大,但也算一个小的里程碑了。
这周主要跟进了下版本发布,主要更新内容:
修复BUG:其中一个比较诡异的Bug是排行榜加载微信头像的时候卡了好一阵子,然后突然头像加载出来之后就恢复了,这个只在ios部分手机上复现了,没找到具体原因,做了下面两个处理之后Bug消失:
- ios分包收集函数的时候跑了下这一块的代码
- 加载微信头像做了队列处理,避免一次性加载过多头像
Bug对应的Console日志:
为了看用户流失情况,增加了各个阶段的埋点
2. 休闲游戏转微信小游戏
有了足球游戏转微信小游戏的经验之后,我们启动了另外一款休闲游戏转小游戏的工作,思路主要还是分几步走:
- 资源加载底层改成使用YooAsset,以及其他小程序不兼容的地方修改,主要是看是否使用System.Net的库以及System.IO的库的代码
- 转成微信小游戏
- 优化转出的小游戏,因为是有3D场景,所以优化的大头主要应该在内存和渲染上面。
目前还在第一步上面,YooAsset已经改完,但是导出的WebGL项目在加载之后,运行第一个加载的场景之后浏览器崩溃,还在定位问题中。
3. 3D项目
这周主要两个事情:
技能改版:
- 与服务端程序讨论了下整个战报的结构调整
- 客户端关于新战报的解析与数据层代码
- 上周讨论过战斗流程控制的节点结构搭建
后续主要优化步骤是暂时不动其他同事写的关于战斗表现代码,让他把这块代码插入到战斗控制流程的某些表现节点中,同时使用新的数据层来作为数据来源。这一步对表现那一块影响会比较小,周期不会很长。等这一步好了之后再考虑重构战斗表现那一块。争取12底把整个战斗重构完成。
Shader优化
- 解决了多灯光的阴影问题,additional pass的编译指令
multi_compile_fwdadd
改成multi_compile_fwdadd_fullshadows
,这个书上有讲,自己看漏了 - 预制体烘培问题,流程跑通了,目前还有一个问题,LIGHTMAP_ON宏定义在手机上不生效,怀疑是打包问题,主要是还没太搞懂Shader变体的原理,后续需要再研究下这一块
- 阴影太黑问题,阴影的shadow乘错地方了,应该乘在叠加光照(漫反射、高光)的颜色部分,但是我乘在最后的颜色上了
- 阴影精度问题,测试法线阴影块状颗粒很明显,最终发现是跟使用半兰伯特模型有关,改为兰伯特模型,这个有点奇怪,现象如下图,第一张是半兰伯特模型,第二张是兰伯特模型
- 安卓机阴影不显示问题,原因是quality中的shadow distance设置太小,调大之后就好了
其他
为了不影响上班,8点赶到车管所,结果发现车管所是9点上班的(第一次发现还有9点钟上班的公务员),硬生生的在那边等到9点才办到业务。不过还算顺利,终于把好不容易摇到的车牌事情给办了,人生第一次进行选号,还是比较激动的。虽然白等了一小时,但发现车管所周末也会上班,下次不用工作日早期赶来办业务了。