# 大鱼吃小鱼方向触控操作优化说明 ## 背景 当前大鱼运行时使用左下固定虚拟摇杆,玩家必须点到摇杆区域才能移动。移动端实际体验应改为屏幕任意位置触控:第一次触点只建立方向原点,不直接产生移动;后续触点相对原点形成方向向量,角色按恒定速度朝该方向行动。 ## 交互规则 1. 玩家在玩法舞台内按下时,记录第一个触点坐标为本次操作原点。 2. 按下瞬间提交 `{ x: 0, y: 0 }`,保证一开始玩家不动。 3. 手指/鼠标移动后,用“当前触点 - 原点”的向量计算方向。 4. 输入只表达方向,不表达速度;超过死区后归一化为单位方向向量。 5. 松开或取消触控后,清空操作原点并提交 `{ x: 0, y: 0 }`。 6. 前端继续定时提交当前方向,即使没有玩家输入也提交零向量,让后端或本地直达局持续推进世界 tick。 ## 本地直达局边界 - `/big-fish` 的本地占位局必须在玩家未操作时继续移动野生对象。 - 玩家速度保持恒定,只由方向决定移动方向。 - 野生对象使用确定性游动规则,避免直达入口看起来像静态截图。 ## 验收口径 1. 在舞台任意位置按下时玩家不立即移动。 2. 按住并拖动后,玩家朝拖动方向恒速移动。 3. 松开后玩家停止。 4. 不操作时野生对象仍会持续游动。