- Home /
Raycast help.....
Hi,
I was wondering how or if you can cast a diagonal ray in unity. see in my game one of the players weapons is a shotgun and i wanted to cast 3 rays from the player eg. one going straight forward and one on either side going around 45 degrees. is this possible ? how would i do it ? could i cast a ray from point A to point B with both Point A and B having a (x,y,z) location? code would be great thanks :)
Answer by Joshua · Apr 20, 2011 at 02:30 PM
Read up on the documentation on raycasting..
Answer by Chris 35 · Apr 21, 2011 at 01:00 AM
i was wondering why this code doesn't work ? i want to just cast a ray and what ever it hits returns a print statement is my Debug.Draw ray correct ?
var xDirection = 15;
var yDirection = 0; var zDirection = 45; var length = 0.1; var hit : RaycastHit;
function Update () { var diagonal = transform.TransformDirection (Vector3(xDirection,yDirection,zDirection)); Debug.DrawRay(transform.position, diagonal * length,Color.green);
if (Physics.Raycast (transform.position, diagonal,hit,length)) {
print ("There is something in front of the object!");
}
}
help please
thanks
The "diagonal = transform.TransforumDirection" makes no sence to me. Just say "diagonal = Vector3(xDirection,....)" I think.
the transform.TransformDirection means that the ray will rotate with my character, because my player faces the direction of the mouse it needs that code so the ray follows. i still cant get it to detect the collision of the ray and an object tho
Your answer
Follow this Question
Related Questions
Turret that shots a raycast to detect my character then shots at him. 1 Answer
Raycasting problems 1 Answer
Can someone help me fix my Javascript for Flickering Light? 6 Answers
Setting Scroll View Width GUILayout 1 Answer
ray cast not working ? 2 Answers