using System.Collections; using System.Collections.Generic; using UnityEngine; public class DrawLine : MonoBehaviour { public Camera camera; public Material m; private Transform startpos; private Transform endpos; LineRenderer lineRenderer; // Start is called before the first frame update void Start() { GameObject line = new GameObject(); line.name = "Line"; lineRenderer = line.AddComponent(); startpos = transform; endpos = transform.GetChild(0); line.layer = 8; //首尾相连 lineRenderer.loop = true; //开始结束宽 lineRenderer.startWidth = 0.02f; lineRenderer.endWidth = 0.02f; //开始结束颜色 lineRenderer.startColor = Color.white; lineRenderer.endColor = Color.red; lineRenderer.material = m; //设置点 lineRenderer.positionCount = 2; //是否设置世界坐标系,即是否随对象移动而移动 lineRenderer.useWorldSpace = false; //让线段受光的影响,会接收光的数据进行着色器计算 lineRenderer.generateLightingData = true; } // Update is called once per frame void Update() { lineRenderer.SetPosition(0, startpos.position); lineRenderer.SetPosition(1, endpos.position); endpos.LookAt(camera.transform); } public void HideLine() { lineRenderer.enabled = false; } public void ShowLine() { lineRenderer.enabled = true; } }