Raywenderlich:寻迹
生活随笔
收集整理的這篇文章主要介紹了
Raywenderlich:寻迹
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 使用算法
- NavMeshSurface
- 將 Player 排除在 Navmest 的 include layer
- 從 Navmesh 剔除物體
- 移動(dòng) Player
- 修改路徑權(quán)重
使用算法
A* (or A-star)
NavMeshSurface
將 Player 排除在 Navmest 的 include layer
選擇 Hierarchy - Player ,點(diǎn)擊右側(cè)的 Layer , 增加 Layer 層,并重命名為 Player。
重新選擇 Player 的 layer 層:
選擇 Yes, change children 。
選擇 Navmesh , 去掉 include layers 的 Player 。
從 Navmesh 剔除物體
分別選擇 Corner 和 Water , 添加組件:
- 勾選 Override Area, Area Type 選擇 Not Walkable
移動(dòng) Player
選擇 Player , 添加 Nav Mesh Agent。設(shè)置:
在 RW / Scripts 下創(chuàng)建腳本 PlayerMovement.cs 腳本。將腳本掛載到 Player 身上。運(yùn)行游戲,可以移動(dòng) Player 了。
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.AI;public class PlayerMovement : MonoBehaviour {private Camera _camera;private NavMeshAgent _agent;// Start is called before the first frame updatevoid Start(){_camera = Camera.main;_agent = GetComponent<NavMeshAgent>();}// Update is called once per framevoid Update(){if (Input.GetMouseButtonDown(0)){Ray ray = _camera.ScreenPointToRay(Input.mousePosition);if (Physics.Raycast(ray, out RaycastHit hit)){_agent.SetDestination(hit.point);}}} }修改路徑權(quán)重
[1] pathfinding-with-navmesh-getting-started
總結(jié)
以上是生活随笔為你收集整理的Raywenderlich:寻迹的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 中文事件抽取研究综述
- 下一篇: python 图像分析自然纹理方向与粗细