UE5 Debug的一些心得

1、BUG粗略可分为两类:

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

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
AA陈超13 小时前
ASC学习笔记0007:用于与GameplayAbilities系统交互的核心ActorComponent
c++·笔记·学习·ue5·虚幻引擎
AA陈超20 小时前
UE5笔记:OnComponentBeginOverlap
c++·笔记·学习·ue5·虚幻引擎
AA陈超1 天前
ASC学习笔记0014:手动添加一个新的属性集
c++·笔记·学习·ue5
曹勖之1 天前
UE5中,导入的CAD的Actor为什么Simulate Physics无法被勾选?
ue5
AA陈超2 天前
ASC学习笔记0001:处理目标选择系统中当Actor拒绝目标确认时的调用
c++·笔记·学习·游戏·ue5·游戏引擎·虚幻
AA陈超2 天前
ASC学习笔记0022:在不打算修改属性集时访问生成的属性集
c++·笔记·学习·ue5·虚幻引擎·unreal engine
曼巴UE52 天前
UE5 C++ 定时器 官方案例练习
ue5
曹勖之2 天前
UE5导入的CAD文件零件如何被Merge?
ue5
Creator丶小鑫2 天前
UE5 PAK 封包 加载实用方法
ue5·ue5 pak 封包解包·ue5 获取所有文件路径·ue5 调用cmd·ue5 保存写入txt
AA陈超3 天前
ASC学习笔记0017:返回此能力系统组件的所有属性列表
c++·笔记·学习·ue5·虚幻引擎