Hola buenas noches, queria preguntarles a ver si tienen alguna idea de porque el Raycast falla en este caso.
Bueno tengo un simple sistema de disparo el cual instancia un prefab y da fuerza a el RB etc.
Esto va de perlas .
El problema es cuando el raycast detecta el objecto al que colisiona en este caso "feria", l hace cuando le da la gana , aveces marca aveces no, al igual que se desvía solo , no siempre va recto y no lo entiendo, lo se por la marca de el agujero de la bala que instancia , si te mueves un poco es como si tardara en reaccionar o no se...alomejor se pega con todo lo que instancia y rebota..puede ser?
Lo curioso es que el objeto en si se destruye bien .
dejo el script , gracias de antemano.
using UnityEngine;
using System.Collections;
public class disparabolasandroid : MonoBehaviour {
public GameObject CannonBall;
public float shotForce = 1000;
AudioSource audio;
public GameObject explosion;
GameObject cannonBall;
public AudioClip sonidocanon;
private Animation anim;
public GameObject agujero;
public GameObject xispa;
void Start()
{
audio = GetComponent < AudioSource> ();
anim = GameObject.Find("pistola").GetComponent<Animation> ();
}
public void disparabola()
{
if (Input.GetMouseButtonDown())
explosion.SetActive (true);
cannonBall = GameObject.Instantiate(CannonBall as GameObject);
cannonBall.transform.position = transform.position;
RaycastHit hit;
Ray ray = new Ray (transform.position, transform.forward);
if (Physics.Raycast (ray, out hit,300f))
{
if (hit.transform.gameObject.tag == "feria")
{
puntos.instance.puntuacion = +1;
Debug.Log ("PUNTACO");
}
Instantiate (agujero,hit.point,Quaternion.FromToRotation(Vector3.up,hit.normal