用途:解决 UE5 中从移动对象生成或发射物体时,因参考系与帧时序导致的同代码不同结果问题。
主要能力:区分两类症状相似但成因独立的问题。参考帧错误:在移动者帧中求解却按世界空间应用且未转换,表现为误差沿运动方向固定偏移并随速度线性增长,移动者停止时消失。帧时序错误:在 Tick 顺序中的错误时机读取数值,导致数据滞后或超前一步,误差随速度和步长变化,改变帧率即变化,调试器慢步进时消失。
使用方式:先明确每个量所用的参考帧(世界、Actor 局部或组件局部),写入变量名或注释;显式决定生成对象继承什么速度(生成者速度、部分或不继承,三者皆为合法设计),见 references/inheritance-rules.md;确定帧内读取时机并确认此前哪些已更新,见 references/tick-order.md;在命名边界处只做一次转换;在速度下测试。诊断误差特征可参考 references/bias-diagnosis.md。
返回格式:帧表(每个量、其参考帧及转换位置)、继承决策(继承什么、多少、原因)、Tick 位置(读取在顺序中的位置及保证已更新内容)、速度缩放检查(若决策错误预测的误差)、测试结果(静止、巡航、最大速度下的结果)、未验证项。
硬性规则:不在同一表达式中混用参考帧;生成对象初始速度必须显式写入代码;读取移动者变换前须确认其移动本步是否已运行;不用修正常量掩盖方向偏差;旋转帧需处理旋转而非仅平移;最大速度测试为必需用例。
验证:速度扫描(含零速,绘制误差形状)、帧率不变性(两种固定步长结果需在容差内一致)、方向检查(误差方向与移动方向关系一致证明系统性帧错误)。
范围与限制:仅覆盖生成或发射瞬间及其帧与时序问题;不覆盖可读取变换的合法性、后续飞行行为、网络时序;假定固定逻辑时间步,可变时间步下问题仍存在且不可复现。资料未提供具体收费、支持平台与安装命令。