多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > php開源 > 綜合技術(shù) > Unity3d LineRenderer畫線

Unity3d LineRenderer畫線

來源:程序員人生   發(fā)布時(shí)間:2015-03-09 08:26:52 閱讀次數(shù):5779次
【狗刨學(xué)習(xí)網(wǎng)】

1、  畫多條線
畫多條線需要在場(chǎng)景中放置多個(gè)GameObject,由于1個(gè)GameObject只能添加1個(gè)LineRenderer Component。

2、  線段樣式
線段的樣式由LineRenderer組件的材質(zhì)控制

3、  坐標(biāo)系
LineRenderer使用了2種坐標(biāo)系:World和Location。在設(shè)置目標(biāo)點(diǎn)的時(shí)候需要注意你使用的坐標(biāo)系是哪種。

Location:
  1. transform.LookAt(rh.point);  //GameObject始終面對(duì)目標(biāo)點(diǎn)
  2. lineRenderer = (LineRenderer)gameObject.GetComponent ("LineRenderer");     
  3.        lineRenderer.useWorldSpace=false;
  4.        lineRenderer.SetWidth(0.1f,0.1f);
  5. Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
  6.             if(Physics.Raycast(ray,out rh)){
  7. lineRenderer.SetPosition(0, Vector3.forward*rh.distance);//方向*距離,典型的Location坐標(biāo)系用法
  8. }
復(fù)制代碼
World:
  1. void Start () {
  2.         gameObject.SetActive(false);
  3.         lr = gameObject.GetComponent(typeof(LineRenderer)) as LineRenderer;            
  4.         lr.SetWidth(0.1f,0.1f);
  5.     }
  6.     
  7.     // Update is called once per frame
  8.     void Update () {    
  9.         if(Input.GetMouseButtonUp(0)){
  10.             
  11.             //Get click position
  12.             Ray ray = Camera.mainCamera.ScreenPointToRay(Input.mousePosition);
  13.             lr.SetVertexCount(lineSeg+1);
  14.             if(Physics.Raycast(ray,out rh)){                
  15.                 pointPos.Add(DrawLine(rh));
  16.             }            
  17.         }
  18.         
  19.         if(Input.GetMouseButtonUp(1)){
  20.             //destroy point
  21.             DestroyLine();
  22.         }
  23.         
  24.         
  25.     }
  26.     
  27.     
  28.     GameObject DrawLine(RaycastHit pointPos){

  29.                 //Display point
  30.                 GameObject gb_pointer = GameObject.Instantiate(pointer) as GameObject;
  31.                 gb_pointer.transform.position =pointPos.point + (transform.position - pointPos.point) * 0.01f; 
  32.                 gb_pointer.transform.rotation = Quaternion.LookRotation (pointPos.normal, Camera.mainCamera.transform.up);
  33.                 Vector3 laserpos = new Vector3();
  34.                 laserpos.x= 90.0f;
  35.                 laserpos.y= gb_pointer.transform.position.y;
  36.                 laserpos.z= gb_pointer.transform.position.z;
  37.                 gb_pointer.transform.eulerAngles = laserpos;
  38.                 lr.SetPosition(lineSeg,pointPos.point);   //設(shè)置目標(biāo)點(diǎn)的坐標(biāo),使用的是world坐標(biāo)系
  39.                 lineSeg++;
  40.                 return gb_pointer;
  41.     }
  42.     
  43.     void DestroyLine(){
  44.     
  45.         int arrayLength = pointPos.Count;
  46.         if(arrayLength > 0){
  47.             GameObject.Destroy(pointPos[arrayLength⑴]);
  48.             pointPos.RemoveAt(arrayLength⑴);        
  49.             lr.SetVertexCount(--lineSeg);
  50.         }
  51.     }
復(fù)制代碼
聲明:此篇文檔時(shí)來自于【狗刨學(xué)習(xí)網(wǎng)】社區(qū),是網(wǎng)友自行發(fā)布的Unity3D學(xué)習(xí)文章,如果有甚么內(nèi)容侵犯了你的相干權(quán)益,請(qǐng)與官方溝通,我們會(huì)即時(shí)處理。


更多精彩內(nèi)容:www.gopedu.com
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 亚洲精品久久久久中文字幕一区 | 一本大道加勒比久久 | 最近高清中文在线观看国语字幕7 | 女人18毛毛片一级毛片 | 免费在线成人网 | 国产成人精品高清不卡在线 | 婷婷在线视频国产综合 | 国产亚洲欧美日韩在线观看一区二区 | 中文天堂在线视频 | 日本亚洲免费 | 成人毛片免费视频播放 | 国产亚洲一欧美一区二区三区 | 免费伊人网 | 午夜a级片 | 操操操综合网 | 拍拍拍在线观看视频免费 | 四虎东方va私人影库在线观看 | 欧式午夜理伦三级在线观看 | 亚洲qingse中文字幕久久 | 国产极品美女在线 | 素人259luxu在线观看暴露 | 老司机一二三区福利视频 | 尤物在线| 亚洲第一区二区快射影院 | 午夜视频在线免费观看 | 亚洲天堂一区二区 | 福利视频一区二区三区 | 天天爱综合网 | 精品国产一区二区三区不卡在线 | 亚洲天堂.com | 图片区小说区综合区 | 最近视频中文在线播放 | 岛国性视频播放免费视频 | 欧美成人v视频免费看 | 欧洲久久 | 痴女在线播放免费视频 | 日本夜免费视频视频大片 | 精品国产成人三级在线观看 | 久久成人精品免费播放 | 波多野结衣一区在线观看 | 亚洲综合一区二区精品久久 |