日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

unity3d-射线(Ray)

發布時間:2023/12/13 综合教程 26 生活家
生活随笔 收集整理的這篇文章主要介紹了 unity3d-射线(Ray) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

射線Ray

射線是一個點向另外一個點發生的一條線,一旦與其他模型發生碰撞,他將停止發射。注意這條件是邏輯上的,界面上看不到。

一般使用射線判斷是否發射至某個游戲對象上或者獲得鼠標點擊的游戲對象等。

用Camera.main.ScreenPointToRay向屏幕發射一條射線。

1     Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
2     RaycastHit hit;
3    if(Physics.Raycast(ray,out hit)//如果命中
4     {
5      //hit.collider.gameObject可以獲得命中的游戲對象
6     }

Raycast和RaycastAll的區別

Raycast:一旦與其他模型發生碰撞,他將停止發射。

RaycastAll:投射一條光線并返回所有碰撞

我們來做個小案例演示下。這個兩個的區別。我分別模擬鼠標左鍵和右鍵單擊并發射射線,

1:Raycast碰撞的物體。設置為藍色

1:RaycastAll碰撞的所有物體。設置為紅色

從上圖可以看出來。當右鍵單擊。射線穿過了兩個cube,都變成了紅色。 可以在scene中可以看到效果,而左鍵單擊變成了藍色。

 1 void Update()
 2     {
 3 
 4         if (Input.GetMouseButtonDown(0)) //單擊鼠標左鍵
 5         {
 6             //案例一:演示Raycast,
 7             Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
 8             RaycastHit hit;
 9             if (Physics.Raycast(ray, out hit)) //如果命中,則改變為藍顏色
10             {
11                 hit.transform.renderer.material.color = Color.blue;
12                 //hit.collider.gameObject.transform.renderer.material.color = Color.red;
13             }
14 
15 
16         }
17 
18         if (Input.GetMouseButtonDown(1))//單擊鼠標右鍵
19         {
20             Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
21             //案例二:演示RaycastAll
22             RaycastHit[] hi = Physics.RaycastAll(ray);
23             if (hi.Length > 0)
24             {
25                 for (int i = 0; i < hi.Length; i++) //改變所有命中對象的為紅顏色
26                 {
27                     hi[i].collider.transform.renderer.material.color = Color.red;
28                 }
29             }
30         }
31     }

此時你是不是想看到那個射線的軌跡?我們可以通過GL畫出來,但這里可以通過Debug.DrawLine()方法調試出來

注:這個軌跡只能在Scene視圖中看到,

我們改動下上面的代碼。在://案例一:演示Raycast,中改動如下:

if (Physics.Raycast(ray, out hit)) //如果命中,則改變為藍顏色
             {
                 hit.transform.renderer.material.color = Color.blue;
                 
Debug.DrawLine(ray.origin, hit.point); //畫軌跡
             }

在Scene視圖中可以看出,當命中游戲對象后。看到了軌跡。

天空盒子(Skyboxes)

游戲場景中有沒有發現天空是晴朗的艷陽天,看著心情都舒服很多。這是unity自帶的包,操作如下:

1:導包

2:導入完成后可以在資源文件夾中看到

3:設置場景中的天空的渲染方式

兩種方式都可以設置:直接拖拽或者打開窗口選擇。

總結

以上是生活随笔為你收集整理的unity3d-射线(Ray)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 不卡福利视频 | 刘亦菲毛片 | 黄色网址在线视频 | 综合黄色 | 日韩一级片免费看 | 中文文字幕文字幕高清 | 日韩人妻精品一区二区三区视频 | 日韩成年视频 | 反差在线观看免费版全集完整版 | 中字幕一区二区三区乱码 | 人妖一区二区三区 | 欧美成人手机在线视频 | 久久精品国产欧美亚洲人人爽 | 日韩av综合在线 | 国产精品不卡在线观看 | 久久99国产精品久久99 | 日韩精品成人在线观看 | 91成人免费视频 | 一个色综合久久 | 精品黄色一级片 | 久久色在线视频 | 婷婷色网站 | 激情婷婷六月天 | 青青青在线视频观看 | 国产福利在线导航 | 久久久综合av | 国产又色又爽又黄 | 9i在线看片成人免费 | 麻豆高清免费国产一区 | 国产美女视频一区二区 | 国产丰满美女做爰 | 久久靖品 | 国产人妖网站 | 叶山小百合av一区二区 | 国产精品久久毛片av大全日韩 | 亚洲欧美视频一区二区 | 一区二区三区爱爱 | 亚洲毛茸茸 | 精品国偷自产一区二区三区 | 精品国产乱码久久久久久牛牛 | 美女视频黄频视频大全 | 蜜桃精品在线观看 | 一级做a爰片毛片 | 视频久久 | 亚洲AV无码久久精品色三人行 | 国产精品久久久网站 | 亚洲精品视频在线观看免费 | av成人动漫 | 国产一区二区三区影视 | 色香影院| 精品国产av鲁一鲁一区 | 精品国产专区 | 91免费看片| 一级在线播放 | 青青草视频网站 | www.人人干| 久操视频在线观看免费 | www.4hu95.com四虎| 黄频网站在线观看 | 亚洲精品黄色片 | 精品人妻一区二区三区换脸明星 | 欧美综合激情网 | 国产又粗又猛又爽又黄的视频在线观看动漫 | 欧美成人免费播放 | 夜夜操操操 | 欧美性xxxx图片 | 久久久久久亚洲av毛片大全 | 嫩草影院永久入口 | 在线观看成人免费视频 | 国产寡妇色xxⅹ交肉视频 | 国产自在线 | 欧美日韩一区视频 | 国产swag在线 | 国产五月婷婷 | 97超碰在线免费 | 广州毛片| 我们的2018中文免费看 | 中文字幕网站 | 日韩精品在线网站 | 91成人在线观看喷潮 | 国产伊人一区 | 在线观看午夜视频 | 日韩色婷婷 | 免费黄色链接 | 久久久99精品 | 日韩福利在线 | 免费黄色小视频 | 国产精品腿扒开做爽爽爽挤奶网站 | 五月婷婷综合久久 | 五月婷婷在线观看视频 | 国产理论片在线观看 | 精品人妻无码专区视频 | www一起操| 日本3级网站 | 国产乱free国语对白 | 亚洲一区二区自拍偷拍 | 影音先锋人妻啪啪av资源网站 | 国产麻豆电影在线观看 | 欧美一区欧美二区 |