廢話不多說,今天實現一個用LineRender組件實現畫圖的功能。網上已有相關博文,感覺步驟有些模糊,今天就整理出來供大家學習
第一步、創建一個空對象,為其添加LineRender組件。
注意:將材質的Shader改為Particles/Additive,否則在代碼里面控制顏色不起效。
二、再創建一個新的對象,來掛載腳本。腳本如下:
using UnityEngine; using System.Collections; public class NewBehaviourScript : MonoBehaviour { private GameObject clone; private LineRenderer line; int i; //帶有LineRender物體 public GameObject target; void Start () { } // Update is called once per frame void Update () { if (Input.GetMouseButtonDown (0)) { //實例化對象 clone=(GameObject)Instantiate(target,target.transform.position,Quaternion.identity); //獲得該物體上的LineRender組件 line=clone.GetComponent<LineRenderer>(); //設置起始和結束的顏色 line.SetColors(Color.red,Color.blue); //設置起始和結束的寬度 line.SetWidth(0.2f,0.1f); //計數 i=0; } if(Input.GetMouseButton(0)) { //每一幀檢測,按下鼠標的時間越長,計數越多 i++; //設置頂點數 line.SetVertexCount(i); //設置頂點位置(頂點的索引,將鼠標點擊的屏幕坐標轉換為世界坐標) line.SetPosition(i-1,Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x,Input.mousePosition.y,15))); } } }
三、將第一步建的空對象,拖入Inspector面板
四、運行效果如下: