当前位置: 首页 > news >正文

Unity(第二十三部)导航

你可以使用 unity官方提供的 unity导航组件或第三方 unity导航组件,以实现游戏中角色或其他物体的导航。

unity导航组件通常具有多种导航模式,如飞行模式、步行模式、车辆模式等,可以根据不同的需求选择合适的模式。同时,unity导航组件还可以设置路径规划目标导航等功能,以实现更加复杂的导航需求。

导航是生成网格的时候,网格内可以走,网格外不能走

导航的应用

在这里插入图片描述
烘培配置、他是通过人的数据生成
在这里插入图片描述
设置好点击bake,就会产生这样的网格、蓝色曲云可以行走
在这里插入图片描述

使用导航根据鼠标点击移动,自动避障

在移动的物体上添加导航代理组件
在这里插入图片描述
代理类型,第二个打开导航设置进入上面的导航面板(不是导航代理组件哈)
在这里插入图片描述
在导航中添加代理选项和配置
在这里插入图片描述
新建脚本、需要移动的物体上绑定上脚本

using System.Collections;
using System.Collections.Generic,
using UnityEngine;
using UnityEngine.Al;public class PlayerControl : MonoBehaviour{private NavMeshAgent agent;void start(){//获取代理组件agent = GetComponent<NavMeshAgent>();}void Update(){//如果按下鼠标if (input.GetMouseButtonDown(0)){//获取点击位置Ray ray= Camera.main.ScreenPointToRay(Input.mousePosition);//声明射线碰撞的信息RaycastHit hit;if(Physics.Raycast(ray,out hit)){//点击位置Vector3 point = hit.point;//设置该位置为导航目标点agent.SetDestination(point);}}}
}

网格链接和动态障碍物

1、网格障碍物组件
障碍物上把静态去掉
在这里插入图片描述
在去掉静态的物体上添加导航网格障碍物组件
在这里插入图片描述
点击切割会动态烘培导航、耗性能

如果想要从高台上跳跃下去、那么就需要,点击高台物体,点击导航设置,点击对象,点击生成网格链接
在这里插入图片描述

下面参数才能生效
在这里插入图片描述
高度设置成10后会有一下几个圆形区域,就是这些位置是可以跳下去的
在这里插入图片描述
2、网格链接组件
类似于传送门,从地图的a点到b点在这里插入图片描述
组件总的自动更新位置,物体发生位置改变时,传送位置自动改变

导航区域

在这里插入图片描述

在这里插入图片描述
设置区域
添加物体静态的勾选
选择物体后,点击导航的对象、点击区域设置、然后重新烘培
在这里插入图片描述
特殊需要特殊角色能进入,正常人不能进入的区域,就修改区域遮罩

在这里插入图片描述

http://www.lryc.cn/news/310257.html

相关文章:

  • 根据建表sql语句生成go的struct代码工具
  • Qt 自定义长条进度条(类似播放器进度条)
  • 休息日的思考与额外题——双指针、原地哈希day28
  • 数据修改
  • Android JNI复杂用法,回调,C++中调用Java方法
  • C++从零开始的打怪升级之路(day41)
  • uni-app app实现web-view H5图片长按下载
  • 全量知识系统问题及SmartChat给出的答复 之5
  • DolphinScheduler——工作流实例的生命周期
  • 阻塞和非阻塞网络io有什么区别,分别有哪些应用场景?
  • 面试数据库篇(mysql)- 12分库分表
  • LaTeX中的多行数学公式
  • 绕过5秒盾Cloudflare和DDoS-GUARD
  • react 原理揭秘
  • el-table实现转置表格
  • (3)(3.1) FlightDeck FrSky发射器应用程序
  • 【Unity】导入IAP插件后依赖冲突问题 com.android.billingclient冲突
  • docker 转为docker-compose(composerize 命令)
  • 【Golang切片】
  • React-router的创建和第一个组件
  • 计算机设计大赛 深度学习猫狗分类 - python opencv cnn
  • Linux服务器磁盘及内存用量监控Python脚本(推送钉钉群通知)
  • Android13 Audio框架
  • kafka消费者接收不到消息
  • Python如何从SQL Server存取数据?
  • 学校机房Dev c++解决中文乱码问题
  • 基于java+springboot景区行李寄存管理系统设计和实现
  • 03-grafana的下拉列表选项制作-grafana的变量
  • Linux网络编程—— IO多路复用
  • C++进阶(二) 多态