Unity - 2D Navigation

更新於 發佈於 閱讀時間約 1 分鐘
  1. 從個連結中下載這個資料夾 https://github.com/h8man/NavMeshPlus
  2. 打開剛下載的資料夾,然後將一個名 NavMeshComponents 的資料夾放入你的 Unity 中。
  3. 創建一個 Square,作為平面,新增一個名為 Navigation Modifier 的組件。
  4. 再創建一個 Square,作為𥕞礙物,新增一個名為 Navigation Modifier 的組件,之後在新增的 Component 中勾選 Override Area ,而後會出現一個方框,點擊方框選擇 Not Walkable。
  5. 再創建兩個任意物件,一作為 NPC,另一作為 Target。而在 NPC 中新增一個名 Nav Mesh Agent 的 Component。
  6. 創建一個新的 Script,名 npc ,將下面的代碼複製上去。
using UnityEngine;

using UnityEngine.AI;

public class npc : MonoBehaviour
{

public NavMeshAgent agent;

public Transform target;

void Start()
{
agent.updateRotation = false;
agent.updateUpAxis = false;
agent.SetDestination(target.position);
}
}

7. 將這個 Script 掛載在 NPC 中,然後將組件掛載上去,如下圖。就完成了。

raw-image

成品

raw-image

avatar-img
0會員
7內容數
這裏分享我遊戲開發的記錄,亦會分享開發的小技巧。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
夏葉 的其他內容
緣由 生成一個格子是一件十分之簡單的事,但我不知道為甚麼每一次重新寫的時候,都會忘記如何寫。所以我在這裏記錄一下。 代碼 public float num; public GameObject currentGameObject; void Update() { if(Input.G
這篇文章深入探討如何利用 Lerp 來實現物體的移動,並介紹透過 Slerp 來獲得更流暢的移動效果。以簡化移動的實現過程。文章將比較 Update 和 IEnumerator 兩種方案,並指導讀者如何設定速度、加速度及移動時間,提供全面的學習資源以助於更佳理解,尤其是對於遊戲開發者。
Text Mesh Pro 是 Unity 內自置的 UI 文字系統。如果你已經用了 Unity 很多年的人會好奇,它和 Text 有甚麼的分別。總括來講 Text Mesh Pro 更加的靈活和可以做更多不同的變化。 Sprite Asset Sprite Asset 以簡單來說是 emoji
緣由 生成一個格子是一件十分之簡單的事,但我不知道為甚麼每一次重新寫的時候,都會忘記如何寫。所以我在這裏記錄一下。 代碼 public float num; public GameObject currentGameObject; void Update() { if(Input.G
這篇文章深入探討如何利用 Lerp 來實現物體的移動,並介紹透過 Slerp 來獲得更流暢的移動效果。以簡化移動的實現過程。文章將比較 Update 和 IEnumerator 兩種方案,並指導讀者如何設定速度、加速度及移動時間,提供全面的學習資源以助於更佳理解,尤其是對於遊戲開發者。
Text Mesh Pro 是 Unity 內自置的 UI 文字系統。如果你已經用了 Unity 很多年的人會好奇,它和 Text 有甚麼的分別。總括來講 Text Mesh Pro 更加的靈活和可以做更多不同的變化。 Sprite Asset Sprite Asset 以簡單來說是 emoji
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
這篇文章介紹了網站的整體架構以及開發時所使用的工具和套件,包括 Next.js、Tailwind CSS 和 socket.io 等。文章回顧了程式碼的重構與優化,幫助開發者提高工作效率,適合希望深入瞭解前端開發和網站架構的讀者。
Thumbnail
這篇內容,將會用一個簡單的範例,來解釋物件(Object)和實體(Instance)的差別。包括Instance的簡介、ID、物件改變會影響實體。
Thumbnail
這篇內容,將簡單介紹Asset Browser、Workspace、Inspector、Code Browser,作為入門的介面導覽。
Thumbnail
這篇內容,將教你如何開啟新的GameMaker專案,並調整畫面佈局。也會講解,為何建議用英文語系,來進行遊戲開發。
Thumbnail
這篇內容,將教你如何安裝GameMaker,並更改語言設定。包括GameMaker的下載說明、版本說明、安裝說明、語系更改。
Thumbnail
進入Lua的第一步! 安裝和執行
Thumbnail
教你如何在遊戲或劇情中建立和使用隨機名字,透過隨機產生不同的名字,讓角色更加多樣化,提升遊戲劇情的豐富度。
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
這篇文章介紹了網站的整體架構以及開發時所使用的工具和套件,包括 Next.js、Tailwind CSS 和 socket.io 等。文章回顧了程式碼的重構與優化,幫助開發者提高工作效率,適合希望深入瞭解前端開發和網站架構的讀者。
Thumbnail
這篇內容,將會用一個簡單的範例,來解釋物件(Object)和實體(Instance)的差別。包括Instance的簡介、ID、物件改變會影響實體。
Thumbnail
這篇內容,將簡單介紹Asset Browser、Workspace、Inspector、Code Browser,作為入門的介面導覽。
Thumbnail
這篇內容,將教你如何開啟新的GameMaker專案,並調整畫面佈局。也會講解,為何建議用英文語系,來進行遊戲開發。
Thumbnail
這篇內容,將教你如何安裝GameMaker,並更改語言設定。包括GameMaker的下載說明、版本說明、安裝說明、語系更改。
Thumbnail
進入Lua的第一步! 安裝和執行
Thumbnail
教你如何在遊戲或劇情中建立和使用隨機名字,透過隨機產生不同的名字,讓角色更加多樣化,提升遊戲劇情的豐富度。