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

Unity 6中按W/S键立方体无法移动问题求助(附代码)

解决Unity中立方体按W/S键无法移动的问题

针对你遇到的问题,结合Unity 6000.0.44f1版本的特性,排查方向如下:

  • 检查Rigidbody核心设置
    确保立方体上的Rigidbody组件没有勾选Is Kinematic——这个选项会让刚体脱离物理驱动,完全无法通过velocity属性移动。同时确认Mass(质量)设置在合理范围,0或者超大质量都会导致移动失效或不明显。

  • 修正API调用(Unity 6版本适配)
    你代码里用的linearVelocity是DOTS Physics系统的属性,如果你用的是传统内置Rigidbody,应该替换成velocity。另外每次FixedUpdate里调用GetComponent<Rigidbody>()会浪费性能,建议缓存引用:

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class Player2 : MonoBehaviour
    {
        [SerializeField] KeyCode keyOne;
        [SerializeField] KeyCode keyTwo;
        [SerializeField] Vector3 moveDirection;
        private Rigidbody rb;
    
        private void Start()
        {
            rb = GetComponent<Rigidbody>();
        }
    
        private void FixedUpdate()
        {
            if (Input.GetKey(keyOne))
            {
                rb.velocity += moveDirection;
            }
    
            if (Input.GetKey(keyTwo))
            {
                rb.velocity -= moveDirection;
            }
        }
    }
    
  • 确认moveDirection参数配置
    在Inspector面板里检查moveDirection的数值,比如要实现上下移动,需要设置类似(0, 3, 0)的非零向量——数值太小会导致移动幅度微弱,看起来像静止。

  • 验证按键绑定与脚本状态

    1. 确保Inspector中keyOne绑定的是W键,keyTwo绑定的是S键,不要误选其他按键
    2. 确认Player2脚本已经正确挂载在立方体对象上,并且脚本的启用勾选框处于激活状态

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 12:54:58