U3D Navigation
让我们来一起粗步认识一下NavMesh的简单使用
首先我们建立一个新场景,在新场景我们创建 一个地形或者创建一个Plane,
然后在其上面用Cube或者其它的建立一些障碍物
再创建自己需要为其设置自动寻路的Cube,可以为它改个名字,我们在这里
将其改名为walker
再创建一个walker要自动到达的位置,创建一个Cube,改名为endposition;
准备工作做好了,让我一起来尝试下NavMesh
打开Navigation,Windows->Navigation
在Hierarchy层次窗口中将所有障碍物选上,在Navigation窗口,将Navigation Static打上勾,选择一个Navigation Layer 层
在Hierarchy层次窗口中将允许行进的地形或者Plane选上,做与上面一样的操作,注意将允许行进和不允许行进的Navigation Layer设置为不一样
选中walker为其添加NavMeshAgent组件 Component-> Navigation ->NavMeshAgent
组件属性就不介绍了,看得懂
唯一注意的就是在NavMesh Walkable中将不允许行进的NavigationLayer名字去除掉,将如这里不允许行进的Navigation Layer是Not Walkable
NavMesh Walkable就不应该将此层选中
在Hierarchy中将允许行进或者不允许行进的物体选中,在Navigation窗口中,选中Bake烘焙
为了让其运动,我们写一个简单的脚本,脚本内容如下
using UnityEngine;
using System.Collections;
public class Nav : MonoBehaviour {
// Use this for initialization
public Transform target;
private NavMeshAgent navmeshagent;
void Start () {
navmeshagent = gameObject.GetComponent<NavMeshAgent>();
}
// Update is called once per frame
void Update () {
navmeshagent.SetDestination(target.position);
}
}
脚本不做解释,不懂的人查下文档
将脚本拖拉到walker中,再将endposition拖拉到上述脚本的target;
最后运行,完成,你会发现walker会自动寻找路线移动到endposition的位置。
U3D Navigation的更多相关文章
- ANT自动打包U3D安卓项目研究笔记
概述 因项目使用Atlassian Stash作为项目源码管理端,且其支持Ant命令自动编译,可使其根据最新的代码自动打包,故产生该研究Ant打包的任务.在此将研究过程及一些相关知识整理记录在此. 本 ...
- U3D面试题四
1.配置Unity3D调试环境 在windows环境下,设置unity3d的编辑器调试环境方法: 点击“Edit‘---”Preferences“,弹出如下窗口 选择MonoDeveop即可. 在编辑 ...
- U3D DrawCall优化手记
在最近,使用U3D开发的游戏核心部分功能即将完成,中间由于各种历史原因,导致项目存在比较大的问题,这些问题在最后,恐怕只能通过一次彻底的重构来解决 现在的游戏跑起来会有接近130-170个左右的Dra ...
- arcgis api for js共享干货系列之二自定义Navigation控件样式风格
arcgis api for js默认的Navigation控件样式风格如下图: 这样的风格不能说不好,各有各的爱好,审美观,这里也不是重点,这里的重点是如何自定义一套自己喜欢的样式风格呢:自己自定义 ...
- The Safe Navigation Operator (&.) in Ruby
The most interesting addition to Ruby 2.3.0 is the Safe Navigation Operator(&.). A similar opera ...
- U3D学习笔记1: HelloWorld
Unity 版本: 5.3.5.f1 Hello World工程 1.新建工程 HelloWorld U3D可选2D和3D游戏 2.新建C#脚本文件 在project栏的assets目录右键-&g ...
- Unity3D 导航网格自动寻路(Navigation Mesh)
NavMesh(导航网格)是3D游戏世界中用于实现动态物体自动寻路的一种技术,将游戏中复杂的结构组织关系简化为带有一定信息的网格,在这些网格的基础上通过一系列的计算来实现自动寻路..导航时,只需要给导 ...
- ABP理论学习之导航(Navigation)
返回总目录 本篇目录 创建菜单 注册导航提供者 展示菜单 每一个web应用在页面之间都有一些要导航的菜单.ABP提供了公用的基础设施来创建菜单并将菜单展示给用户. 创建菜单 一个应用可能由不同的模块组 ...
- Sharepoint学习笔记—ECM系列—文档列表的Metedata Navigation与Key Filter功能的实现
如果一个文档列表中存放了成百上千的文档,想要快速的找到你想要的还真不是件容易的事,Sharepoint提供了Metedata Navigation与Key Filter功能可以帮助我们快速的过滤和定位 ...
随机推荐
- CentOS yum update 与 yum upgrade 区别
yum -y update 升级所有包同时也升级软件和系统内核 yum -y upgrade 只升级所有包,不升级软件和系统内核 官方文档:https://access.redhat.com/docu ...
- Ubuntu 16.04安装JAD反编译工具(Java)
JAD反编译工具有个好处,就是字节码和源代码一起输出. 官网:https://varaneckas.com/jad/ 安装步骤: 1.下载: 离线版本:(链接: https://pan.baidu.c ...
- NIO与传统IO的区别(形象比喻)[转]
传统的socket IO中,需要为每个连接创建一个线程,当并发的连接数量非常巨大时,线程所占用的栈内存和CPU线程切换的开销将非常巨大.使用NIO,不再需要为每个线程创建单独的线程,可以用一个含有限数 ...
- 8.Java web—JSP基本语法
1)脚本标识 <%-- <%@这两都之间不能为空格 ,但page前面可以任意空格 --%> <%@ page language="java" content ...
- Android 系统广播机制
一.Android应用程序注冊广播接收器(registerReceiver)的过程分析 參考Android应用程序注冊广播接收器(registerReceiver)的过程分析http://blog.c ...
- vue - 前置工作
vue 中文官网:https://cn.vuejs.org/ vue ES6语法:https://www.cnblogs.com/zhouyangla/p/7225335.html vue Debug ...
- AppCan移动应用开发平台新增9个超有用插件(内含演示样例代码)
使用AppCan平台进行移动开发.你所须要具备的是Html5+CSS +JS前端语言基础.此外.Hybrid混合模式应用还需结合原生语言对功能模块进行封装,对于没有原生基础的开发人员,怎样实现App里 ...
- 最小公倍数(Least Common Multiple)
最小公倍数=两个数的乘积/两个数的最大公约数. 接上篇求最大公约数方法,最小公倍数的代码例如以下: public class LCM { //最小公倍数=两数乘积/最大公约数 public stati ...
- SQL server 子查询的应用
设置主键关联表格 时间函数的应用
- ISC DHCP: Enterprise grade solution for configuration needs
https://www.isc.org/downloads/dhcp/ ISC DHCP: Enterprise grade solution for configuration needs All ...