游戏知识推演:多段动画混合的权重归一化——姿态[8, -6, -4]的十二组混合(记录25)
界面上给出的混合权重有时只是相对强度,并不保证总和为一。若直接把各段姿态乘权重相加,可能造成整体幅度随权重总量变化。先说明归一化规则,才能解释混合结果。
下面是一份输入完整的独立练习。先明确规则和端点约定,再逐项推演;可以遮住计算结果自行记录,出现差异时从第一处不同查起。每项输入都是本例设定,不代表所有游戏采用同一套规则。
本例规则与输入
使用三个独立姿态的单个标量参数,权重均非负;总权重为正时按比例归一化后加权。三项全零时返回明确给定的默认值,不进行除零。不把本例直接用于角度或三维旋转。
三个姿态标量[8, -6, -4],全零默认-5 [[0, 0, 0], [1, 0, 0], [0, 2, 0], [0, 0, 3], [2, 0, 0], [3, 1, 1], [1, 0, 1], [7, 0, 1], [8, 7, 4], [6, 1, 2], [7, 2, 6], [0, 3, 6]]
过程记录
权重[0, 0, 0]合计0:全零,返回默认值-5。
权重[1, 0, 0]合计1:归一化系数['1', '0', '0'],加权结果8;未归一化直接相加会得到8。
权重[0, 2, 0]合计2:归一化系数['0', '1', '0'],加权结果-6;未归一化直接相加会得到-12。
权重[0, 0, 3]合计3:归一化系数['0', '0', '1'],加权结果-4;未归一化直接相加会得到-12。
权重[2, 0, 0]合计2:归一化系数['1', '0', '0'],加权结果8;未归一化直接相加会得到16。
权重[3, 1, 1]合计5:归一化系数['3/5', '1/5', '1/5'],加权结果14/5;未归一化直接相加会得到14。
权重[1, 0, 1]合计2:归一化系数['1/2', '0', '1/2'],加权结果2;未归一化直接相加会得到4。
权重[7, 0, 1]合计8:归一化系数['7/8', '0', '1/8'],加权结果13/2;未归一化直接相加会得到52。
权重[8, 7, 4]合计19:归一化系数['8/19', '7/19', '4/19'],加权结果6/19;未归一化直接相加会得到6。
权重[6, 1, 2]合计9:归一化系数['2/3', '1/9', '2/9'],加权结果34/9;未归一化直接相加会得到34。
权重[7, 2, 6]合计15:归一化系数['7/15', '2/15', '2/5'],加权结果4/3;未归一化直接相加会得到20。
权重[0, 3, 6]合计9:归一化系数['0', '1/3', '2/3'],加权结果-14/3;未归一化直接相加会得到-42。
全零情况走默认分支,其余组均按相对权重计算。
复核与实际应用
归一化系数总和应等于一,结果位于参与姿态值的最小值和最大值之间。把所有非零权重同乘一个正数,结果应保持;全零情况单独检查默认分支。
姿态参数是长度、透明度或其他标量时可以定义这种线性练习,但带环绕的角度和三维旋转有额外结构,不能把本例的算式直接当作通用混合方法。明确数据含义比只会代入公式更重要。
练习结束后,保留输入、每一步的中间状态和最终结果。可以仅修改一个边界输入,再比较变化来自哪条规则;不要同时改动多个条件后只凭最终画面判断。若实际作品表现不同,应先确认它使用的时间、坐标或结算约定,再决定是否属于异常。
