C# 光线投射代码不适用于 Unity
本文关键字:适用于 Unity 不适用 代码 光线投射 | 更新日期: 2023-09-27 18:33:37
嗨,所以我写了一些代码来创建跟随屏幕上鼠标位置的光线投射,我已经设置了枪,并且我用对撞机等正确放下了枪管,但我不断收到错误:NullReferenceException:对象引用未设置为对象的实例。我只是无法弄清楚问题是什么,这是我的代码:
void Update ()
{
if (gun.active) {
if (Input.GetButtonDown ("Fire1")) {
Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
RaycastHit hit = new RaycastHit ();
if (Physics.Raycast (ray, out hit)) {
if (hit.collider.gameObject.name == "barrel") {
Debug.Log ("Hit the Barrel");
Destroy (hit.collider.gameObject);
}
}
}
}
}
您的Camera
在编辑器中未标记为main
摄像机。
这就是为什么你的代码找不到它,因此它抛出异常的原因。