每天学习亿点点7.13 讲一次奇怪的摸排bug的经历
1. 问题就是很简单,我们在做一个基本的背包系统,然后呢就很奇怪,每次把物品拿进背包之后进行一轮操作之后再拿出来总会莫名被删除.
我们在所有蓝图里都搜查了destroy这种函数,结果一无所获
debug1:寻找是否是某处函数设置了actor的life span
结果是没有
debug2: 是否是因为该item没有被任何compo或者actor引用导致GC自动回收了垃圾
添加了一个全局cache array收录所有item的引用
依旧无效
debug3: 我们直接在每次拿出放进道具的时候查看item的location,发现了每次拿进去拿出来都会导致item位置有一点点偏移,于是查看了world setting 发现kill z 才只有1000,这个才是导致的真正原因.
解决方法1: 把kill z的值设置的大一些,但是治标不治本
解决方法2: 每次把物品放入背包之后重置一下位置
2.如果我们想让一个object的X axis一直对着某个向量,只需要 使用设置actorrotation然后参数使用rotationfromXvector(vector);即可