这次也先讲图,再讲公式和代码。最后附一个网页小程序,可以点鼠标开枪,拖滑块调手感。
一、什么是"准星回正"?
开一枪,枪口往上跳。松开手后,准星自己慢慢回到原来瞄的位置:
开枪前 开枪瞬间 之后几帧 回正完成 ┼ ┼ ← 准星跳上去 ┼ ↑ ↓ 往回落 ◎ 敌人 ◎ ◎ ◎┼ 回到敌人身上"跳上去"那一下叫后坐力(Kick),"落回来"叫回正(Recovery)。
玩家觉得一把枪"手感好"还是"手感飘",很大程度取决于回正的过程:
- 回得太快太硬,像被线扯回来,很假;
- 回得太慢,像枪粘在胶水里,很拖;
- 回得先快后慢,最后还轻轻晃一下,就像真实的手臂和肩膀在吸收后坐力。
最后这种效果,用弹簧来模拟最自然。
二、四种回正方法对比
纵轴是"准星偏离原位多少度",横轴是时间。