站在移动平台上走动时,角色相对平台的移动与在世界中的移动不是同一个量。复盘回放时若只看输入速度,就可能把平台带来的位移误认为角色忽然加速。
这份练习把数据、规则和中间状态一起列出。可以先自行推演,再与过程记录逐项比较;如果结果不同,先找到第一处分歧,确认时间单位、端点归属和运算顺序。案例是一套限定模型,不把其他作品的不同实现认定为错误。
一维模型中角色始终附着于平台,每个时间段内平台速度和角色相对速度都固定;世界速度是两者之和。无碰撞、打滑、跳离平台或镜头变换,速度可为负。
初始平台坐标2,角色相对坐标2 每段为[时长,平台速度,相对速度] [[5, 0, -3], [4, 2, -3], [4, -1, 2], [1, 3, -1], [3, 3, 3], [5, 0, -2], [2, 1, 2], [1, 0, 0], [5, 0, 2]]
第1段持续5拍,平台速度0、相对速度-3,合成速度-3;结束时平台2、相对位置-13、世界位置-11。
第2段持续4拍,平台速度2、相对速度-3,合成速度-1;结束时平台10、相对位置-25、世界位置-15。
第3段持续4拍,平台速度-1、相对速度2,合成速度1;结束时平台6、相对位置-17、世界位置-11。
第4段持续1拍,平台速度3、相对速度-1,合成速度2;结束时平台9、相对位置-18、世界位置-9。
第5段持续3拍,平台速度3、相对速度3,合成速度6;结束时平台18、相对位置-9、世界位置9。
第6段持续5拍,平台速度0、相对速度-2,合成速度-2;结束时平台18、相对位置-19、世界位置-1。
第7段持续2拍,平台速度1、相对速度2,合成速度3;结束时平台20、相对位置-15、世界位置5。
第8段持续1拍,平台速度0、相对速度0,合成速度0;结束时平台20、相对位置-15、世界位置5。
第9段持续5拍,平台速度0、相对速度2,合成速度2;结束时平台20、相对位置-5、世界位置15。
最后世界位置15,等于平台与相对坐标之和。
先独立累积平台位置和角色相对平台的位置,最后相加得到世界位置;再与直接累计合成速度的结果比较。两种路径应一致,反向速度也必须保留符号。
世界速度为零并不一定代表角色没有操作,也可能是相对速度抵消了平台速度。反过来,角色相对位置不变时仍会随平台移动;复盘时把两类位移分别列出,能避免只看世界轨迹下结论。
复盘时建议保留输入表和中间状态,而不仅保存最终答案。改动一个条件后重新推演,再检查起点、终点、重复值和临界输入;这样能把规则本身、计算实现和显示结果分别核对,避免把一次偶然相同当成验证完成。