Depois que terminei o código inteiro, passou a dar esse problema, antes, não estava acontecendo. Acontece nessa linha "Ray raio = Camera.main.ScreenPointToRay (pontoInicial);" Segue o código abaixo:
using UnityEngine;
using System.Collections;
public class Jogo : MonoBehaviour {
[SerializeField] private GameObject torrePreFab;
void Update (){
if (ClicouComBotaoPrimario()) {
ConstroiTorre ();
}
}
private bool ClicouComBotaoPrimario (){
return Input.GetMouseButtonDown (0);
}
private void ConstroiTorre(){
Vector3 posicaoDoClique = Input.mousePosition;
RaycastHit elementoAtingidoPeloRaio = DisparaRaioDaCameraAteUmPonto (posicaoDoClique);
if (elementoAtingidoPeloRaio.collider != null) {
Vector3 posicaoDeCriacaoDaTorre = elementoAtingidoPeloRaio.point;
Instantiate (torrePreFab, posicaoDeCriacaoDaTorre, Quaternion.identity);
}
}
private RaycastHit DisparaRaioDaCameraAteUmPonto (Vector3 pontoInicial){
Ray raio = Camera.main.ScreenPointToRay (pontoInicial);
RaycastHit elementoAtingidoPeloRaio;
float comprimentoMaximoDoRaio = 100.0f;
Physics.Raycast (raio, out elementoAtingidoPeloRaio, comprimentoMaximoDoRaio);
return elementoAtingidoPeloRaio;
}
}