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 图文详解]

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

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

 


目录
相关文章
|
4月前
|
人工智能 自然语言处理 小程序
政务VR导航:跨界融合AI人工智能与大数据分析,打造全方位智能政务服务
政务大厅引入智能导航系统,解决寻路难、指引不足及咨询台压力大的问题。VR导视与AI助手提供在线预览、VR路线指引、智能客服和小程序服务,提高办事效率,减轻咨询台工作,优化群众体验,塑造智慧政务形象。通过线上线下结合,实现政务服务的高效便民。
109 0
政务VR导航:跨界融合AI人工智能与大数据分析,打造全方位智能政务服务
|
6月前
|
机器学习/深度学习 人工智能 API
LangChain初探:为你的AI应用之旅导航
这篇文章带来了 LangChain 较为全面的精彩初探,带领小白选手轻松揭开其神秘面纱,一窥其独特之处。不容错过!
225 1
LangChain初探:为你的AI应用之旅导航
|
机器学习/深度学习 存储 传感器
Habitat Challenge 2022冠军方案:字节AI Lab提出融合传统和模仿学习的主动导航
Habitat Challenge 2022冠军方案:字节AI Lab提出融合传统和模仿学习的主动导航
253 0
|
人工智能 机器人 图形学
Unity NavMesh & LineRenderer AI寻路及导航路径的绘制
Unity NavMesh & LineRenderer AI寻路及导航路径的绘制
477 1
Unity NavMesh & LineRenderer AI寻路及导航路径的绘制
|
机器学习/深度学习 人工智能 资源调度
|
机器学习/深度学习 人工智能 算法
Nature再发DeepMind研究:AI复现大脑网格细胞模拟导航!
今天,DeepMind在Nature上发表的一篇论文引起AI领域和神经科学领域的极大震撼:AI展现出与人脑“网格细胞”高度一致的空间导航能力。这项发现有助于AI的可解释性和把神经科学作为新算法的灵感来源的重要意义。
2798 0
|
机器学习/深度学习 人工智能 搜索推荐
|
3天前
|
机器学习/深度学习 数据采集 人工智能
AI赋能教育:深度学习在个性化学习系统中的应用
【10月更文挑战第26天】随着人工智能的发展,深度学习技术正逐步应用于教育领域,特别是个性化学习系统中。通过分析学生的学习数据,深度学习模型能够精准预测学生的学习表现,并为其推荐合适的学习资源和规划学习路径,从而提供更加高效、有趣和个性化的学习体验。
34 8
|
1天前
|
人工智能 搜索推荐 安全
AI技术在医疗领域的应用与挑战
【10月更文挑战第27天】 本文探讨了人工智能(AI)在医疗领域的应用,包括疾病诊断、药物研发和患者管理等方面。同时,也分析了AI在医疗领域面临的挑战,如数据隐私、伦理问题和技术局限性等。通过对这些方面的深入分析,我们可以更好地理解AI在医疗领域的潜力和发展方向。
86 59