UE5 Debug的一些心得

1、BUG粗略可分为两类:

一种是显性的,编译直接就通不过,必须马上解决。

第二种是隐性的,新功能完成后,编译成功顺利运行,洋洋自得,而问题隐藏在幕后,测试之后才逐渐发现有问题,

从代码角度是没毛病的,没报错,但不符合设计需求。

而随着工程复杂度的上升,找问题,甚至快速看懂以往的代码都变得越来越困难,尤其是逻辑很复杂的系统,有注释的话好一些。这也拖慢了DEBUG的速度,连发现BUG在哪里都是个难题。

2、低级错误。就个人而言,以往的BUG中有很大概率最终发现是低级错误,

比如功能相似的变量或BP命名相似,结果用错了,则必然不符合需求。

查了一圈都没毛病,最终才发现是用错了,如果早点发现,则节约大量时间。

从命名上就要规避,要区分开来。

没用的要删掉,或名字改为冷门的,以减少误操作。

比如修改过程中某个分支判断的真假接反,也会导致不符合需求,密密麻麻一大堆而屏幕显示内容少加大了失误概率。

3、地方不对。虽然理论上放哪里都行,但实际上重要逻辑放在UI,或物件里,则就容易出问题,虽然不报错,但达不到效果。

而放在FPC、GM等重要地方就能发挥作用,换个地方就不行。

原因之一就是物体与UI很可能一开始并没有加载,所以相关参数也无法传出去,逻辑是废的。

相关推荐
zhangzhangkeji1 天前
UE5 C++(23-3):静态网络体与骨骼网络体的继承链。动态加载资源与类的源代码
ue5
曼巴UE51 天前
UE5 C++ GameInstanceSubsystem 在学习
c++·ue5·ue
zhangzhangkeji1 天前
UE5 C++(32):进度条 Progress 的实现,在蓝图里创建进度条,其数值绑定到 c++ 里的成员变量上
ue5
AI视觉网奇2 天前
ue5 设置分辨率笔记
笔记·ue5
AI视觉网奇2 天前
ue 缓存 使用笔记
笔记·学习·ue5
zhangzhangkeji2 天前
UE5 C++(25-2):鼠标的滚轮事件,控制视角缩放,例题代码
ue5
Zhichao_972 天前
【UE5.3 C++】ARPG游戏 06-拾取武器
游戏·ue5
二DUAN帝2 天前
像素流与UE通信
前端·javascript·css·ue5·html·ue4·html5
AI视觉网奇3 天前
ue5.5 动画 选取 一段使用
笔记·学习·ue5
zhangzhangkeji3 天前
UE5 C++(28):Hit 事件的代理绑定,基本类似于重叠事件的绑定
ue5