在Unity的世界里,當你輕點鼠標,角色仿佛被賦予了新的使命,沿著一條無形的軌跡,向著地圖上的目標點進發。每一次移動,不僅是簡單的位移,更是對未知的探索。這種交互,讓玩家與游戲世界緊密相連,仿佛自己就是那個掌控命運的魔法師,用指尖繪制出角色的冒險之路......
下面讓我們實現這個使用鼠標點擊來移動角色的功能吧!
目錄:
1.安裝導航網格
2.為角色和地圖設置和烘培導航網格
3.編寫功能的腳本
4.測試和運行
--------------------
一.安裝導航網格
1.打開package Manager包管理器,找到并選擇Unity Registry。
2.在搜索框里輸入“AI”,找到AI Navigation,然后點一下“安裝”按鈕。(像我這里,因為之前已經裝過了,所以沒有顯示“安裝”按鈕。如果你是第一次裝,就會看到一個“安裝”按鈕,點一下就能裝上了)
二.為角色和地圖設置和烘培導航網格
1.我們首先需要為角色添加一個導航組件,選中角色對象,然后在其上添加一個Nav Mesh Agent組件。
2.設置角色的碰撞框(角色身上綠色的圓柱型框框),讓其盡量去貼近我們的角色。
3.接著我們為地形添加導航網格。選中地形Terrain,然后點擊Add Component,添加Nav Mesh Surface組件。
4.設置Default Area的屬性為Walkable(可行走的)。
5.點擊“Bake”烘培。
6.(可選)如果需要額外添加“不可行走的”障礙物。選中該障礙物對象,點擊Add Component,為其添加一個NavMeshModifier的組件。
7.(可選)勾選上Override Area,選擇Not Walkable(不可行走的)。
8.(可選)重新烘培地形。
三.編寫移動功能的腳本
1.在Assets文件夾下創建一個空文件夾,可命名為Scripts(名稱可自定),用于存放腳本。接著,在Scripts文件夾中創建C#腳本。
2.實現鼠標點擊的移動功能
代碼、模型和動畫都已經上傳到我的個人博客了,大家可以自行下載。
原創來源于-谷宇博客:https://www.biguyu.top/home
四.測試和運行
經過對案例的運行測試,成功實現在“無障礙物”地圖上點擊鼠標左鍵,角色朝鼠標位置移動。在“有障礙物”地圖上點擊障礙物,角色成功移動到障礙物前停下,并且停止跑步動畫。