You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity 2D平台角色移动异常:位置变更但视觉不匹配+跳跃失效

问题修复方案

1. 移动脚本核心错误修正

你的移动逻辑存在几个关键问题,直接导致角色移动不明显、跳跃功能失效:

错误点1:速度计算错误

Rigidbody2D.velocity的单位是单位/秒,无需额外乘以Time.deltaTime——这会让实际速度被缩小到几乎无法察觉的程度。

错误点2:跳跃逻辑覆盖水平速度

直接用Vector2.up覆盖velocity会清除角色的水平移动速度,同时同样错误地乘以了Time.deltaTime,导致跳跃力几乎为0。

错误点3:左右移动的冲突判断

两个独立的if(A)和if(D)分支会导致同时按键时逻辑冲突,改为合并方向输入更合理。

修正后的移动脚本:

using UnityEngine;

public class Movement : MonoBehaviour // 类名首字母大写符合C#规范
{
    public Rigidbody2D rigidBody;
    public float moveSpeed = 5f;
    public float jumpForce = 8f;
    public float normalHeight = 1f;
    public float crouchHeight = 0.5f;

    void Start()
    {
        rigidBody = GetComponent<Rigidbody2D>();
    }

    void Update()
    {
        // 左右移动:通过水平轴统一处理A/D或方向键输入
        float horizontalInput = Input.GetAxis("Horizontal");
        rigidBody.velocity = new Vector2(horizontalInput * moveSpeed, rigidBody.velocity.y);

        // 跳跃:保留水平速度,仅添加垂直跳跃力
        if (Input.GetKeyDown(KeyCode.Space))
        {
            rigidBody.velocity = new Vector2(rigidBody.velocity.x, jumpForce);
        }

        // 下蹲缩放:直接访问自身transform即可,无需通过rigidBody
        if (Input.GetKey(KeyCode.S))
        {
            transform.localScale = new Vector2(transform.localScale.x, crouchHeight);
        }
        else
        {
            transform.localScale = new Vector2(transform.localScale.x, normalHeight);
        }
    }
}

2. 相机跟随脚本优化

当前相机逻辑本身没问题,但可以做小优化提升可维护性,同时确保基础功能正常:

using UnityEngine;

public class CameraFollow : MonoBehaviour // 类名首字母大写符合规范
{
    public Transform player;
    public float offsetX = 6f; // 将偏移量设为可在Inspector调整的变量

    void Update()
    {
        // 保持Y轴与角色一致,Z轴固定为-10(确保相机在2D场景渲染层级前)
        transform.position = new Vector3(player.position.x + offsetX, player.position.y, -10f);
    }
}

3. 额外检查项

  • 确认角色的Rigidbody2D组件Gravity Scale不为0(否则跳跃后不会下落,也会导致跳跃看起来无效果)
  • 背景图片的Sorting Layer需设置在角色下方,避免遮挡角色
  • 确保脚本已正确挂载到对应对象上:移动脚本挂角色,相机跟随脚本挂相机,且相机的player变量已拖拽绑定角色的Transform组件

内容的提问来源于stack exchange,提问作者Talha Mughal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 15:15:53