当前位置: 首页 > 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点在这里插入图片描述
组件总的自动更新位置,物体发生位置改变时,传送位置自动改变

导航区域

在这里插入图片描述

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

在这里插入图片描述

相关文章:

  • oracle基础体系
  • 安装Docker及DockerCompose
  • LockBit病毒入侵揭秘:如何防范与应对
  • (libusb) usb口自动刷新
  • YOLO V5、SAM、RESNET50模型在GPU环境下搭建过程
  • pytorch项目代码记录
  • 【亚马逊云科技】通过Amazon CloudFront(CDN)快速访问资源
  • C++ 面试题
  • 独立游戏《星尘异变》UE5 C++程序开发日志2——创建并编写一个C++类
  • 【java-面试题】start和run的区别
  • 从零开始学习Netty - 学习笔记 -Netty入门【半包,黏包】
  • Vue3:使用 Composition API 不需要 Pinia
  • C++知识点总结(22):模拟算法真题 ★★★☆☆《安全警报》
  • 【LeetCode】1768_交替合并字符串_C
  • 牛市初期,Penpad 以 Fair Launch 方式推出首个资产 PEN
  • ES6指北【2】—— 箭头函数
  • 「面试题」如何实现一个圣杯布局?
  • css选择器
  • Java-详解HashMap
  • jquery ajax学习笔记
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • OSS Web直传 (文件图片)
  • react 代码优化(一) ——事件处理
  • Ruby 2.x 源代码分析:扩展 概述
  • SpriteKit 技巧之添加背景图片
  • 翻译:Hystrix - How To Use
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 我建了一个叫Hello World的项目
  • ​软考-高级-系统架构设计师教程(清华第2版)【第1章-绪论-思维导图】​
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • $forceUpdate()函数
  • (Python第六天)文件处理
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (蓝桥杯每日一题)love
  • (算法)求1到1亿间的质数或素数
  • (转)原始图像数据和PDF中的图像数据
  • .jks文件(JAVA KeyStore)
  • .NET Reactor简单使用教程
  • .net 简单实现MD5
  • .net 生成二级域名
  • .netcore 6.0/7.0项目迁移至.netcore 8.0 注意事项
  • .NET开源项目介绍及资源推荐:数据持久层
  • .NET是什么
  • @converter 只能用mysql吗_python-MySQLConverter对象没有mysql-connector属性’...
  • [AI]文心一言爆火的同时,ChatGPT带来了这么多的开源项目你了解吗
  • [AIGC] 如何建立和优化你的工作流?
  • [Angular 基础] - 表单:响应式表单
  • [AutoSar]BSW_Com02 PDU详解
  • [C++][数据结构][算法]单链式结构的深拷贝
  • [C++基础]-入门知识
  • [C和指针].(美)Kenneth.A.Reek(ED2000.COM)pdf
  • [HTML]HTML5实现可编辑表格
  • [Java]深入剖析常见排序
  • [javaSE] 数据结构(二叉查找树-插入节点)
  • [JavaWeb学习] Spring Ioc和DI概念思想