0x00 前言

unity5.6作為Unity5最后的一個版本,的確起到了一個承上啟下的作用。除了上一篇文章《進擊的AssetBundles和它的工具們》中提到的AssetBundles-Browser,本文還會介紹另一個在Github開源的,用于Unity5.6+的新尋路功能。

0x01 曾經(jīng)的痛點

Unity5.6之前的navmesh系統(tǒng)的確操作起來十分容易上手,門檻很低。我們只需要將場景內(nèi)需要烘焙navmesh的區(qū)域勾選上Navigation Static選項,之后就可以在Navigation窗口中烘焙整個場景了。

但是曾經(jīng)的navmesh系統(tǒng)卻也存在著一些性能上的和使用場景上的缺陷。
一個常見的問題,由于要預(yù)先烘焙場景的navmesh,因此我們很難方便的在運行時動態(tài)的修改navmesh。更不用說,有一些游戲的場景并非提前制作好的,需要在運行時動態(tài)的生成,這種情況下就無法使用navmesh了。
另一個問題是,如果場景過大的話,烘焙之后的navmesh也會保存很多數(shù)據(jù),在運行時會造成一些內(nèi)存上的開銷。
當(dāng)然,拋開這些不談,另外一個讓我吐槽navmesh的一點就是,它竟然不支持垂直面的導(dǎo)航。