unity-AI(自动导航基础)

简介: unity-AI(自动导航基础)

 image.gif编辑

👨‍💻个人主页:@元宇宙-秩沅

hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

本文由 秩沅 原创

收录于专栏 unity实战入门

你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!

栓Q

⭐相关文章⭐

———————————————————

-[本站最全-unity常用API大全(万字详解),不信你不收藏]

-[关于游戏剧情模式中用到的基础简单API]

-[控制游戏人物移动的细节到底有多少?]

-[坦克炮管旋转发射炮弹 游戏demo ]

-[基于unity物体定点移动与模拟刹车的细节 GIF 图文详解]

————————————————————

目录

给人物导航

一.地形创建

二.创建导航系统

以上就是简单的导航系统,学到的话,点个赞同再走吧,码友~


给人物导航

一.地形创建

1.首先我们在Hierarchy面板中创建一个地形对象terrian,自行设定地形外貌,此时我们设置一个如下的地形外观

image.gif编辑

二.创建导航系统

1.在主人公的Inspector、面板中添加Nav Mesh Agent (导航网格代理),而后点击windows-AI-Navigation(航行器),则会出现如下面板:

image.gif编辑

2.点击Bake部分,再点击下方的部分Bake可理解为烘培出可导航的区域,则会出现下图所示的蓝色指引区域:

image.gif编辑

3.添加叫脚本:

射线导航:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class navmesh : MonoBehaviour
{
    // Start is called before the first frame update
    public NavMeshAgent boss;//创建一个网格导航对象Boss
    void Start()
    {
    }
    // Update is called once per frame
    void Update()
    {
        //利用射线来判断指引位置
       if(Input .GetMouseButtonDown (0))// 当按下鼠标右键时运行
        {
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            //相当于发射光线ray 让其获得由当前相机屏幕前鼠标点击处转化来的射线点位置
            RaycastHit store;  
            //创建Raycastthit类型的对象,为下面让其保存射线碰撞的位置的信息做铺垫
            //RaycastHit 意思为光线投射碰撞
            //Raycast 则是光线投射
        if(Physics .Raycast(ray ,out store ) )
            //此时调用内置的方法,按输出传递参数Out,返回值为两个,一个给了store另一个返回ture
            {
                boss.SetDestination(store.point);
                //此时游戏物体boss接下来要到达的位置已经生成
            }
        }
    }
}

image.gif

image.gif编辑

此时鼠标点击相应的位置人物立即换成跑步的动画,那么达成这个效果还需要和动画系统做练习,(动画系统的生成见主页),那么此时联系代码的关键语句为:

bboss.SetFloat("speed", boss.velocity.magnitude);

//给动画对象设置一个float类型的参数,该参数的名称为“speed”,值为网格导航对象boss的速度的值

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class navmesh : MonoBehaviour
{
    // Start is called before the first frame update
    public NavMeshAgent boss;//创建一个网格导航对象Boss
    public Animator bboss;      //用于人物动画切换的参数
    void Start()
    {
    }
    // Update is called once per frame
    void Update()
    {
        //利用射线来判断指引位置
       if(Input .GetMouseButtonDown (0))// 当按下鼠标右键时运行
        {
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            //相当于发射光线ray 让其获得由当前相机屏幕前鼠标点击处转化来的射线点位置
            RaycastHit store;  
            //创建Raycastthit类型的对象,为下面让其保存射线碰撞的位置的信息做铺垫
            //RaycastHit 意思为光线投射碰撞
            //Raycast 则是光线投射
        if(Physics .Raycast(ray ,out store ) )
            //此时调用内置的方法,按输出传递参数Out,返回值为两个,一个给了store另一个返回ture
            {
                boss.SetDestination(store.point);
                //此时游戏物体boss接下来要到达的位置已经生成
                bboss.SetFloat("speed", boss.velocity.magnitude);
                //给动画对象设置一个float类型的参数,该参数的名称为“speed”,值为网格导航对象boss的速度的值
            }
        }
    }
}

image.gif

以上就是简单的导航系统,学到的话,点个赞同再走吧,码友~

⭐相关文章⭐

———————————————————

-[本站最全-unity常用API大全(万字详解),不信你不收藏]

-[关于游戏剧情模式中用到的基础简单API]

-[控制游戏人物移动的细节到底有多少?]

-[坦克炮管旋转发射炮弹 游戏demo ]

-[基于unity物体定点移动与模拟刹车的细节 GIF 图文详解]

————————————————————

你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!

 


目录
相关文章
|
17天前
|
存储 人工智能 SEO
全开源免费AI网址导航网站源码
Aigotools 可以帮助用户快速创建和管理导航站点,内置站点管理和自动收录功能,同时提供国际化、SEO、多种图片存储方案。让用户可以快速部署上线自己的导航站。
38 1
|
4月前
|
人工智能 自然语言处理 小程序
政务VR导航:跨界融合AI人工智能与大数据分析,打造全方位智能政务服务
政务大厅引入智能导航系统,解决寻路难、指引不足及咨询台压力大的问题。VR导视与AI助手提供在线预览、VR路线指引、智能客服和小程序服务,提高办事效率,减轻咨询台工作,优化群众体验,塑造智慧政务形象。通过线上线下结合,实现政务服务的高效便民。
112 0
政务VR导航:跨界融合AI人工智能与大数据分析,打造全方位智能政务服务
|
6月前
|
机器学习/深度学习 人工智能 API
LangChain初探:为你的AI应用之旅导航
这篇文章带来了 LangChain 较为全面的精彩初探,带领小白选手轻松揭开其神秘面纱,一窥其独特之处。不容错过!
229 1
LangChain初探:为你的AI应用之旅导航
|
机器学习/深度学习 存储 传感器
Habitat Challenge 2022冠军方案:字节AI Lab提出融合传统和模仿学习的主动导航
Habitat Challenge 2022冠军方案:字节AI Lab提出融合传统和模仿学习的主动导航
256 0
|
人工智能 机器人 图形学
Unity NavMesh & LineRenderer AI寻路及导航路径的绘制
Unity NavMesh & LineRenderer AI寻路及导航路径的绘制
484 1
Unity NavMesh & LineRenderer AI寻路及导航路径的绘制
|
机器学习/深度学习 人工智能 资源调度
|
机器学习/深度学习 人工智能 算法
Nature再发DeepMind研究:AI复现大脑网格细胞模拟导航!
今天,DeepMind在Nature上发表的一篇论文引起AI领域和神经科学领域的极大震撼:AI展现出与人脑“网格细胞”高度一致的空间导航能力。这项发现有助于AI的可解释性和把神经科学作为新算法的灵感来源的重要意义。
2800 0
|
机器学习/深度学习 人工智能 搜索推荐
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
当前AI大模型在软件开发中的创新应用与挑战
2024年,AI大模型在软件开发领域的应用正重塑传统流程,从自动化编码、智能协作到代码审查和测试,显著提升了开发效率和代码质量。然而,技术挑战、伦理安全及模型可解释性等问题仍需解决。未来,AI将继续推动软件开发向更高效、智能化方向发展。