这份练习围绕分层背景的视差位移展开,给出独立的虚构输入、明确的规则和完整推演记录。它不对应任何品牌或真实产品的默认参数,适合先自己算一遍,再逐行核对。重点是分清输入、可见状态与规则,而不是把最后一组数字当成需要记忆的答案。
画面中不同背景层可以按不同系数跟随镜头,让同一次镜头移动呈现不同屏幕位移。区分世界锚点、镜头位置、层系数三个量,能避免把背景本身的移动混入计算。
本例只做水平平移,不缩放、不旋转。系数是预先约定的显示规则,不用于推断实际三维距离或真实相机参数。
每层屏幕位置等于该层固定锚点减去系数乘镜头横坐标。镜头向右为正,层锚点不随记录变化,分数保留。
四层锚点[37, 62, 128, 83],系数分子[0, 1, 2, 4],共同分母4 镜头记录[0, 8, 0, 45, -7, 15, -4, 2]
镜头横坐标0时,四层位置依次为['37', '62', '128', '83'];各层分别减去镜头位置的0、1/4、1/2、1倍。
镜头横坐标8时,四层位置依次为['37', '60', '124', '75'];各层分别减去镜头位置的0、1/4、1/2、1倍。
镜头横坐标0时,四层位置依次为['37', '62', '128', '83'];各层分别减去镜头位置的0、1/4、1/2、1倍。
镜头横坐标45时,四层位置依次为['37', '203/4', '211/2', '38'];各层分别减去镜头位置的0、1/4、1/2、1倍。
镜头横坐标-7时,四层位置依次为['37', '255/4', '263/2', '90'];各层分别减去镜头位置的0、1/4、1/2、1倍。
镜头横坐标15时,四层位置依次为['37', '233/4', '241/2', '68'];各层分别减去镜头位置的0、1/4、1/2、1倍。
镜头横坐标-4时,四层位置依次为['37', '63', '130', '87'];各层分别减去镜头位置的0、1/4、1/2、1倍。
镜头横坐标2时,四层位置依次为['37', '123/2', '127', '81'];各层分别减去镜头位置的0、1/4、1/2、1倍。
最后一条镜头记录对应位置['37', '123/2', '127', '81']。
任意两条记录之间,某层的屏幕位移应等于镜头位移的负系数倍。零系数层始终不动,系数为一的层与镜头等量反向;这能在不重复计算所有绝对位置的情况下复核。
动手复盘时,把每一步的输入、操作前值、判断依据和操作后值分开写。若与示例不一致,先定位第一处分歧,检查边界是否包含、顺序是否颠倒、编号和单位是否一致。不要跳过中间状态只修正最后数字,也不要把未规定的行为凭经验补进去。
再做一次练习时只调整一项输入,先预测哪些后续行会变化,再重新推演并保留两份记录。对没有变化的部分也说明原因,能帮助判断机制的作用范围。应用到真实游戏之前,应先在说明或可重复场景中确认对应条件;不同作品可能使用不同边界、优先级和时间约定。