2014-12-07 2 views
0

Привет, поэтому я написал код для создания расиста, который следует за мышью на экране, у меня есть пистолет, и у меня есть баррель правильно с коллайдером и т. Д., Но я сохраняю получение ошибки: NullReferenceException: Ссылка на объект не установлена ​​в экземпляр объекта. Я просто не могу разобраться, что проблема есть, вот мой код:C# код raycast не работает с Unity

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); 
            } 
          } 
        } 
      } 

    } 
+0

На какой строке кода выполняется исключение исключения? – hatchet

+0

@hatchet, который он выбрасывает на Ray Ray = Camera.main line – RyanH2796

ответ

4

Ваш Camera не помечен как main камеры в Editor.

Вот почему ваш код не может его найти и, следовательно, почему он выдает исключение.