- Home /
Question by
raycosantana · Jan 14, 2013 at 12:46 PM ·
raycastlinerendererlaser
LineRenderer not working
Im trying to do a laser pointer for the guns of the player ,I dont get any error messages or anything but it doesnt work, debug.drawline works fine, any idea whats happening?
using UnityEngine;
using System.Collections;
[AddComponentMenu("Rayco's scripts/Laser")]
public class laser : MonoBehaviour {
public GameObject weapon;
public int LaserLength;
public Vector3 RotationOffset;
public Vector3 PositionOffset;
public Material LaserMaterial;
public Color LaserColor;
public Color LaserEndColor;
public float LaserStartWidth;
public float LaserEndWidth;
private Ray ray;
void Start () {
LineRenderer lineRenderer = gameObject.AddComponent<LineRenderer>();
transform.parent = weapon.transform;
transform.localEulerAngles = RotationOffset;
transform.localPosition = PositionOffset;
lineRenderer.material = LaserMaterial;
lineRenderer.SetColors(LaserColor,LaserEndColor);
lineRenderer.SetVertexCount(2);
lineRenderer.SetWidth(LaserStartWidth,LaserEndWidth);
}
void Update() {
//LineRenderer
LineRenderer lineRenderer = GetComponent<LineRenderer>();
//Raycast stuff
ray.origin = transform.position;
ray.direction = transform.forward;
RaycastHit hit;
if (Physics.Raycast (ray, out hit, LaserLength)){
//Debug.DrawLine draws a line on game view, I have it for testing pourposes, you may delete any reference to it
Debug.DrawLine(ray.origin, hit.point, Color.red);
lineRenderer.SetPosition(0,ray.origin);
lineRenderer.SetPosition(1,hit.point);
}
else{
Debug.DrawLine(ray.origin,ray.GetPoint(LaserLength), Color.red);
lineRenderer.SetPosition(0,ray.origin);
lineRenderer.SetPosition (1, ray.GetPoint(LaserLength));
}
}
}
Comment
Your answer
Follow this Question
Related Questions
Creating a Ray Gun 1 Answer
Dynamically adjusting LineRenderer vertexes to follow raycasts 0 Answers
LineRenderer (Laser Beam) is not following the ray it's going on the wrong direction when reflecting 1 Answer
Printing Distance b/w two points using line renderer and Raycast 1 Answer
Get raycast direction from weapon 1 Answer