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