Pues eso tengo un pequeño script donde se supone se lanzan dos rayos cada uno desde un gameobject vació, los rayos se lanzan desde los gameobjects vacíos pero no siguen la dirección, y lo raro es que los dos se van hacia el mismo punto XD no se porque, tal vez sea una tontería pero no logro resolverlo :/
var PRayo1 : GameObject;
var DRayo1 : float;
var PRayo2 : GameObject;
var DRayo2 : float;
function Update () {
var hit1 : RaycastHit;
var hit2 : RaycastHit;
Debug.DrawLine(PRayo1.transform.position, hit1.point, Color.red);
Debug.DrawLine(PRayo2.transform.position, hit2.point, Color.blue);
if(Physics.Raycast(PRayo1.transform.position, -Vector3.up, hit1, DRayo1)){
print("Rayo1");
}
if(Physics.Raycast(PRayo2.transform.position, Vector3.up, hit2, DRayo2)){
print("Rayo2");
}
}
Prueba sacando la inicializacion de las variables hit1 y hit2 del Update().
var PRayo1 : GameObject;
var DRayo1 : float;
var PRayo2 : GameObject;
var DRayo2 : float;
var hit1 : RaycastHit;
var hit2 : RaycastHit;
function Update () {
Debug.DrawLine(PRayo1.transform.position, hit1.point, Color.red);
Debug.DrawLine(PRayo2.transform.position, hit2.point, Color.blue);
if(Physics.Raycast(PRayo1.transform.position, -Vector3.up, hit1, DRayo1)){
print("Rayo1");
}
if(Physics.Raycast(PRayo2.transform.position, Vector3.up, hit2, DRayo2)){
print("Rayo2");
}
}
no, sigue igual :/ ya trate moviendo de posición los puntos y no
Haz un debug con Debug.DrawLine(PRayo2.transform.position, Vector3.up, Color.red) y fijate si coincide con lo que quieres
Solucionado era cuestión de poner el Debug.DrawLine dentro del if por eso no se actualizaba las posiciones de los rayos XD