亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

U3D自帶navmesh自動尋路教學

2019-11-14 13:40:10
字體:
來源:轉載
供稿:網友

網易博客轉載 博主:啊趙

unity自帶尋路Navmesh入門教程(一)

      說明:從今天開始,我阿趙打算寫一些簡單的教程,方便自己日后回顧,或者方便剛入門的朋友學習。水平有限請勿見怪。不過請尊重碼字截圖錄屏的勞動,如需轉載請先告訴我。謝謝!

unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙

 

      unity自從3.5版本之后,增加了NavMesh尋路的功能。在此之前,unity用戶只能通過第三方插件(如Astar尋路插件)等做尋路功能。阿趙我也使用過A*尋路插件,A*的原理并不復雜,有興趣的朋友可以自己百度一下。不過由于不是自帶的功能,所以在設定網格和烘焙的過程難免會出現很多不便。NavMesh作為unity自帶的功能,用法和之前的LightMapping烘焙或者遮擋剔除Occlusion Culling有很多相似之處。

      這個功能有很多有趣的地方,而且用起來也很方便,我打算分開幾篇日志來逐一介紹。這次的目的只是簡單的認識一下NavMesh的基本用法,所以暫時不詳細的翻譯組件每一個參數和功能的意思。

      先來看看怎么在unity打開NavMesh功能的窗口吧:

在window下拉列表中可以看到Navgation,點擊:

unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
在原來Inspector面板的旁邊會出現Navigation的面板:
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
這個Objcet的面板是對應當前選擇的物體的,旁邊的Bake面板是對應全局選項的。結構和烘焙或者遮擋剔除是一樣的。在選擇了物體的情況下會出現上面的內容:
 上面的All、MeshRenderers、Terranis是對Hirarchy面板里面顯示的物品選擇的一個篩選過濾:
all就是全部顯示
MeshRenderers是只顯示可渲染的網格物體
而Terrains當然就是只顯示地形物體了。
 
下面的是重要的選項,第一個Navigation Static選項是選擇該物體是否用做尋路功能的一部分。只有勾選了這個選項,下面的其他選項才會可操作。
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
 OffMeshLink Generation選項是選擇該物體是否根據高度、可跳躍寬帶等全局的選項自動生成OffMeshLink,這個會在以后的講解中詳細說明,這次就暫時不討論。
Navigation Layer是對參與尋路功能的地圖物體的一個分類,用層來分類,默認有三個層可以選擇,當然也可以自己添加層。
舊版本:在Edit下拉列表,選擇PRoject——NavMeshLayers
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
 
注意:在4.幾的新版本后,這個尋路層管理打開的位置發生了變化,變成了在Navigation 面板里面了:
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 窮到掉渣的超級奶爸阿趙
 
出現了NavMesh層的管理界面: 
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
上面三個Buit-in Layer是系統默認的三個可選擇層,我們可以在下面的User Layer里面輸入自己需要的層的名稱,比如我現在輸入一個叫做“brigde”的層
 
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
這時候,剛才輸入的“bridge”層,就會出現在可選擇的列表里面
 
通過剛才的幾步,NavMesh常用的幾個面板我們都已經操作過了,接下來可以做一個小例子:
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
 在場景里面,我放了一個攝像機(Camera),一個充當地面的面片(plane),一個角色模型(man)和一個目標點物體(target)
為了便于觀察目標點的位置,我在目標點物體身上添加了Light組件讓它會發光。角色模型(man)身上必須添加NavMesh組件,不然就不能尋路了。為了方便,我使用了官方的大兵模型,里面已經帶有了動畫和動畫控制的腳本。不過這些動畫的表現暫時是不重要的,你可以選擇放一個膠囊或者Cube代替人物的模型。
 
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
還記得剛開始介紹的Navigation面板嗎?選擇地面(plane),在Navigation面板里面里面勾選Navigation Static選項,其他的默認不改動。
然后點擊右下角的Bake面板。這時候會有一個計算的過程,曾經用過烘焙或者遮擋剔除的朋友應該對這個過程很熟悉了。
不過和之前兩個功能一樣,如果你沒有保存場景level,unity會提示你先保存,然后再bake。
由于現在場景里面的物體很少,所以Bake的過程很快就結束了。
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
留意看scene視窗,現在地面的顏色已經發生改變了,這是因為unity已經幫你生成了尋路用的NavMesh網格,由于現在沒有遮擋的阻礙物,所以整個地面都是屬于可以行走的范圍。
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
寫一個最簡單的控制腳本吧,以上是C#,由于很簡單,估計用Js的朋友也能對應的寫出來。
簡單的解釋一下,這個腳本是直接拖放到角色(man)身上的,并把場景中的目標物體(target)拖放指定到該腳本的target變量上面進行了賦值。在腳本一開始的時候,我 先獲取了man身上的NavMeshAgent腳本組件,然后在Update的過程中,man不斷的進行對target的位移的一個尋路并移動到目標位置的操作。
 
在進行完以上的操作后,你應該已經可以點擊unity的播放按鈕,然后移動目標物體(target),這時候角色模型已經可以追著目標點跑了。
這里我還做了一個簡單的鼠標點擊plane設定目標點的功能,由于這個功能不在這次的討論范圍內,所以有興趣的朋友可以自己去百度一下具體的方法。
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
 
進行到這一步,人物已經跑起來了,但由于沒有遮擋的障礙物,所以人物只是會直線的行走,看不出尋路的感覺。接下來我們就做點更復雜的:
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
在場景里面添加一個Cube做為障礙物,具體的形狀和位置請根據自己喜歡來調節,阿趙我是把它做成了一個長方形,并擺在了角色面前。
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
和剛才對地面的操作差不多,選擇遮擋物Cube,在Navigation面板里面勾選Navigation Static選項,這次的Navigation Layer要選擇Not Walkable。顧名思義,這是不能行走的意思,代表了這個Cube是不能通過的。
選擇完成后,我們再次點擊Bake,又是一個小等待的過程。
Bake完成后,我們回到scene視窗。
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
 觀察scene視窗,會發現剛才整個地面都是NavMesh的情況已經改變了,在障礙物的周圍,NavMesh留出了一個缺口,這代表了角色已經不能從障礙物身上通過了。
 
再次點擊unity的播放按鈕
unity自帶尋路Navmesh入門教程(一) - 阿趙 - 有爪的小羔羊阿趙
現在可以看到,人物已經可以繞著障礙物走了,我們的目的已經順利達到了。
 
 
      這次的例子就到此結束了。
      在第二節里,我會詳細的講解高低落差、爬梯子以及跳躍等較為復雜一點的功能。然后會在第三節里面講解分條件的尋路(不同人走不同的路),以及動態控制道路(如吊橋)等的功能。
 
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲午夜色婷婷在线| 国产精品黄页免费高清在线观看| 亚洲人成网站在线播| 在线观看亚洲视频| 68精品国产免费久久久久久婷婷| 国产精品一区二区三区成人| 国产精品普通话| 精品亚洲aⅴ在线观看| 日韩av免费网站| 久久国产精品免费视频| 这里只有精品久久| 亚洲热线99精品视频| 欧美激情伊人电影| 欧美激情女人20p| 亚洲精品电影网| 国产精品久久99久久| 国产精品96久久久久久| 国产在线视频2019最新视频| 91精品中国老女人| 国产精品精品久久久久久| 亚洲欧美成人在线| 成人国产精品久久久| 国产精品高潮呻吟久久av黑人| 欧美体内谢she精2性欧美| 日韩成人在线网站| 国产精品久久久久久久久男| 精品久久久久久久久国产字幕| 91精品国产成人www| 原创国产精品91| 欧美激情精品久久久久久免费印度| 欧美日韩美女在线观看| 国产精品久久77777| 国产成人免费91av在线| 高跟丝袜欧美一区| 狠狠躁夜夜躁人人躁婷婷91| 亚洲国产精品va在看黑人| 久久久亚洲影院你懂的| 国内成人精品视频| 国产噜噜噜噜噜久久久久久久久| 777777777亚洲妇女| 亚洲色图15p| 欧美猛男性生活免费| 欧美一区亚洲一区| 欧美性精品220| 国产成人精品久久亚洲高清不卡| 欧美野外猛男的大粗鳮| 日韩欧美一区二区在线| 一区二区三区视频观看| 欧美精品18videos性欧美| 国产精品视频地址| 黑人巨大精品欧美一区二区免费| 久久99视频精品| 亚洲精品成人久久电影| 国产精品久久久久秋霞鲁丝| 精品女厕一区二区三区| 亚洲日韩中文字幕在线播放| 精品视频在线播放色网色视频| 91久久精品国产91久久性色| 国产va免费精品高清在线观看| 久热精品视频在线| 91精品国产九九九久久久亚洲| 欧美高清无遮挡| 国产女精品视频网站免费| 亚洲最大的免费| 久久91精品国产91久久跳| 国产精品美女无圣光视频| 欧美激情免费在线| 欧美精品videossex88| 欧美成aaa人片在线观看蜜臀| 欧美日韩激情网| 国内免费久久久久久久久久久| 日韩欧美在线观看视频| 中国china体内裑精亚洲片| 亚洲欧美激情精品一区二区| 精品视频久久久久久久| 午夜精品国产精品大乳美女| 136fldh精品导航福利| 97在线精品国自产拍中文| 亚洲精品自产拍| 国产成人福利网站| 亚洲裸体xxxx| 日本19禁啪啪免费观看www| 久久婷婷国产麻豆91天堂| 日韩中文字幕在线视频播放| 欧美国产日韩一区| 精品少妇一区二区30p| 欧美黑人xxxx| 热门国产精品亚洲第一区在线| 成人淫片在线看| 国产精品久久av| 国产精品精品视频一区二区三区| 欧美乱大交xxxxx另类电影| 日本精品中文字幕| 激情久久av一区av二区av三区| 日韩中文字幕视频在线观看| 欧美性猛交xxxx富婆弯腰| 日韩美女主播视频| 永久免费精品影视网站| 成人精品视频99在线观看免费| 国产精品网红直播| 最近2019好看的中文字幕免费| 国产亚洲美女精品久久久| 久久久久久久一| 久久久免费精品| 国产91色在线| 欧美孕妇性xx| 国产精品视频免费在线| 高清视频欧美一级| 日韩久久精品成人| 成人福利视频在线观看| 日本道色综合久久影院| 国产精品一区二区av影院萌芽| 4438全国成人免费| 国产欧美一区二区三区在线| 日韩av一区二区在线观看| 这里只有精品视频在线| 国产精品福利在线观看| 欧美精品在线第一页| 另类视频在线观看| 欧美日韩色婷婷| 亚洲aⅴ日韩av电影在线观看| 亚洲国产精品一区二区三区| 91在线视频一区| 亚洲国产日韩欧美综合久久| 亚洲欧美在线一区二区| 另类少妇人与禽zozz0性伦| 成人h猎奇视频网站| 欧美日韩中文字幕在线| 欧美中文在线观看| 国产精品福利片| 92国产精品久久久久首页| 国产精品男女猛烈高潮激情| www.欧美视频| 日本aⅴ大伊香蕉精品视频| 久久久久99精品久久久久| 精品国产一区二区三区久久狼黑人| 欧美日韩国产成人在线观看| 视频在线观看99| 欧美亚洲激情视频| 国产一区二区黑人欧美xxxx| 国产xxx69麻豆国语对白| 久久国产精品免费视频| 91精品国产沙发| 久久久久国产一区二区三区| 黑人精品xxx一区一二区| 98精品国产高清在线xxxx天堂| 2019日本中文字幕| 久久九九有精品国产23| 精品视频久久久久久久| 久久久久久91| 在线播放国产一区二区三区| 国产91精品在线播放| 国产精品激情av在线播放| 在线播放日韩av| 中文字幕亚洲无线码a| 欧美电影免费观看高清| 久久久久这里只有精品| 欧美在线国产精品| 欧美激情va永久在线播放| 中文字幕日韩在线视频| 成人网址在线观看| 亚洲国语精品自产拍在线观看| 美女国内精品自产拍在线播放| 精品香蕉一区二区三区|