- Home /
Question by
dash3k3 · Oct 23, 2011 at 09:33 PM ·
gameobjectraycastraycasthit
See what object I hit in raycast
I am trying to see what object I hit with the raycast and then change the objects color. Here is my code. I don't know what exactly I am doing wrong. I am getting this error "Assets/Scripts/Shoot.cs(16,56): error CS0120: An object reference is required to access non-static member `UnityEngine.RaycastHit.collider'" Thanks in advance! ~Brady
using UnityEngine;
using System.Collections;
public class Shoot : MonoBehaviour {
private GameObject objectHit;
void Update() {
CheckIfCollide();
}
public void CheckIfCollide() {
if(Input.GetKeyDown(KeyCode.LeftShift)) {
Vector3 fwd = transform.TransformDirection(Vector3.forward);
if (Physics.Raycast(transform.position, Camera.main.transform.forward, 10)) {
Debug.Log("There is something in front of the object!");
Debug.DrawRay(transform.position, Camera.main.transform.forward, Color.blue, 10);
objectHit = RaycastHit.collider;
objectHit.renderer.material.color = Color.red;
}
else {
Debug.Log("There Is nothing in front of the object!");
Debug.DrawRay(transform.position, Camera.main.transform.forward, Color.red, 10);
}
}
}
}
Comment