C# MissingComponentException没有连接到gameObject的rigidbody2D,但脚本正在尝试访问它
我得到这个错误。我不知道为什么 这里是一个屏幕截图: 和我的脚本代码:C# MissingComponentException没有连接到gameObject的rigidbody2D,但脚本正在尝试访问它,c#,unity3d,unityscript,C#,Unity3d,Unityscript,我得到这个错误。我不知道为什么 这里是一个屏幕截图: 和我的脚本代码: using UnityEngine; using System.Collections; public class PlayerMovementV2 : MonoBehaviour { public KeyCode moveUp; public KeyCode moveDown; public KeyCode moveRight; public KeyCode moveLeft; public float player
using UnityEngine;
using System.Collections;
public class PlayerMovementV2 : MonoBehaviour
{
public KeyCode moveUp;
public KeyCode moveDown;
public KeyCode moveRight;
public KeyCode moveLeft;
public float playerVelocity = 1;
public Rigidbody2D rigid2D;
public Vector2 vector2;
// Use this for initialization
void Start()
{
rigid2D = GetComponent<Rigidbody2D>();
vector2 = new Vector2(rigid2D.velocity.x, playerVelocity);
}
// Update is called once per frame
void Update()
{
if (Input.GetKey(moveUp))
{
rigid2D.velocity = vector2;
}
else
if (Input.GetKey(moveDown))
{
rigid2D.velocity = new Vector2(rigid2D.velocity.x,playerVelocity);
}
}
}
使用UnityEngine;
使用系统集合;
公共类PlayerMovementV2:单一行为
{
公钥密码上移;
公钥代码下移;
公钥密码;
公钥密码左移;
公共浮动PlayerCity=1;
公共刚体2d刚体2d;
公共向量2向量2;
//用于初始化
void Start()
{
rigid2D=GetComponent();
vector2=新vector2(rigid2D.velocity.x,PlayerCity);
}
//每帧调用一次更新
无效更新()
{
if(Input.GetKey(moveUp))
{
rigid2D.velocity=矢量2;
}
其他的
if(Input.GetKey(向下移动))
{
rigid2D.velocity=新矢量2(rigid2D.velocity.x,PlayerCity);
}
}
}
有什么建议吗
据我所见,从图片上看,有一个脚本连接到gmae对象,那么Unity3D想要我做什么呢
附言:
这是最新的Unity3D版本。昨天下载的。在我关闭unity 3D并重新显示后,问题解决了
谢谢你邪恶的德。在我关闭unity 3D并重新显示后,问题解决了
谢谢恶德。脚本是否在场景中的任何其他对象上?脚本是否在场景中的任何其他对象上?