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

采购网站有哪些百度竞价排名软件

采购网站有哪些,百度竞价排名软件,图片生成链接的app,买了dede模板之后就可以做网站文章目录 前言一、Navigation 智能导航地图烘焙1.创建Plan和NavMesh Surface2.智能导航地图烘焙 二、MouseManager 鼠标控制人物移动1.给场景添加人物,并给人物添加导航组件2.编写脚本管理鼠标控制3.给人物编写脚本,订阅事件(添加方法给Mouse…

文章目录

  • 前言
  • 一、Navigation 智能导航地图烘焙
    • 1.创建Plan和NavMesh Surface
    • 2.智能导航地图烘焙
  • 二、MouseManager 鼠标控制人物移动
    • 1.给场景添加人物,并给人物添加导航组件
    • 2.编写脚本管理鼠标控制
    • 3.给人物编写脚本,订阅事件(添加方法给MouseManager的OnMouseClick)
    • 目前效果展示
  • 三、添加人物移动动画
    • 1.制作运动动画
    • 2.将动画机添加给人物
    • 3.关联人物速度给动画
    • 最终效果展示


前言

Uniyt版本:2022.3
实现内容:
1.点击地图,人物移动到点击位置
2.给人物添加移动动画

效果展示:
请添加图片描述

使用素材:
人物素材

  • 导入人物素材:
    Window->Package
    在这里插入图片描述

  • 22.3需要导入AI Navigation包

  • 在这里插入图片描述

一、Navigation 智能导航地图烘焙

1.创建Plan和NavMesh Surface

在这里插入图片描述
在这里插入图片描述

2.智能导航地图烘焙

在这里插入图片描述
下面展示烘焙完的效果:
在这里插入图片描述

二、MouseManager 鼠标控制人物移动

1.给场景添加人物,并给人物添加导航组件

人物属性栏Y轴改为0.5
在这里插入图片描述
在这里插入图片描述
添加导航组件:
在这里插入图片描述

2.编写脚本管理鼠标控制

创建脚本:MouseManager
脚本为设计为单例模式,场景中只需要一个。


using System;
using UnityEngine;public class MouseManager : MonoBehaviour
{//静态对象,其他脚本可以通过这个对象来调用当前类的方法public static MouseManager Instance;void Awake(){if(Instance!=null){Debug.LogError("存在多个对象,可能存在问题");Destroy(gameObject);}Instance = this;}//事件,我认为是方法集,其他脚本可以通过这个添加一个放过进来,此脚本会在合适时机执行里面的方法public event Action<Vector3> OnMouseClick;RaycastHit hitInfo;//射线碰撞的对象的信息结构体void Update(){MouseControl();}void MouseControl(){Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);//Input.GetMouseButtonDown(0)按下鼠标左击返回为trueif (Input.GetMouseButtonDown(0)&&Physics.Raycast(ray, out hitInfo)){Debug.Log("鼠标被点击了");//如果点击地面就拿到点击位置给方法集if(hitInfo.collider.gameObject.CompareTag("Ground")){Debug.Log(hitInfo.point);//?是表示如果方法集里不为空执行后面操作OnMouseClick?.Invoke(hitInfo.point);}}}}

创建空对象命名为MouseManager挂载脚本
在这里插入图片描述

3.给人物编写脚本,订阅事件(添加方法给MouseManager的OnMouseClick)

using UnityEngine;
using UnityEngine.AI;public class MouseController : MonoBehaviour
{NavMeshAgent agent;void Awake(){agent = GetComponent<NavMeshAgent>();}void Start(){//添加方法到放过方法集里-订阅MouseManager.Instance.OnMouseClick += MoveToTarget;}//告诉agent目标位置public void MoveToTarget(Vector3 target){//设置这个变量,人物就会向目标方向移动agent.destination = target;}
}

添加脚本给人物:
在这里插入图片描述

目前效果展示

请添加图片描述

三、添加人物移动动画

1.制作运动动画

运动动画有三种状态:待机,走,跑
三种状态可以通过速度来更改状态动画

  • 创建Animator Controller命名为Player
    在这里插入图片描述
    双击进入动画机界面,右键空白位置,创建混合树
    在这里插入图片描述
    在这里插入图片描述

双击混合树,添加Float变量命名为Speed:
在这里插入图片描述

修改混合树参数,添加通过三种动画到混合树里
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.将动画机添加给人物

在这里插入图片描述

3.关联人物速度给动画

通过脚本MouseContorller将速度给动画机的Speed变量

using UnityEngine;
using UnityEngine.AI;public class MouseController : MonoBehaviour
{NavMeshAgent agent;Animator anim;void Awake(){agent = GetComponent<NavMeshAgent>();anim = GetComponent<Animator>();}void Start(){//添加方法到放过方法集里-订阅MouseManager.Instance.OnMouseClick += MoveToTarget;}void Update(){anim.SetFloat("Speed", agent.velocity.sqrMagnitude);}//告诉agent目标位置public void MoveToTarget(Vector3 target){//设置这个变量,人物就会向目标方向移动agent.destination = target;}
}

最终效果展示

请添加图片描述

http://www.cadmedia.cn/news/15398.html

相关文章:

  • 网站建设需求信息报个电脑培训班要多少钱
  • 四川网站建设scyiyou谷歌关键词排名查询
  • 移植wordpress数据库网站的优化与推广分析
  • 河南疫情第二波最新消息seo原创工具
  • 泰安工程建设信息网站搜狗搜索旧版本
  • 淄博学校网站建设公司9个成功的市场营销案例
  • 企业门户账号是什么seo人员是什么意思
  • 内蒙古建设工程造价管理网站百度提交工具
  • p2p网站建设多少钱seo营销论文
  • 多语种外贸网站自己做网站需要什么条件
  • 网站建设的维护百度怎么推广网站
  • 学校网站建设栏目有哪些免费的网页制作软件
  • 邯郸网站建设设计电商网站模板
  • 电子商务网站建设流程武汉网络推广公司排名
  • 同城招聘网站自助建站广告网站推荐
  • 模拟黑客网站网站推广系统方案
  • 南京建设工程管理局网站应用商店关键词优化
  • 网站建站卖首饰侵权google建站推广
  • 公司网站的建设最新新闻播报
  • 机械类 网站源码看颜色应该搜索哪些词汇
  • 浙江省住房和城建建设厅网站想做游戏推广怎么找游戏公司
  • 网页制作基本教程seo分析案例
  • 网站建设能用手机制作吗百度教育网站
  • 网站建设有哪些特点链接网
  • 南京 网站建设模板价格企业网站推广方案设计
  • 深圳房地产信息网官方网站8个公开大数据网站
  • 百度权重高的网站seo网站有优化培训班吗
  • 网站建设怎么今日军事新闻头条新闻
  • 网页编辑格式seo平台
  • 晋中推广型网站建设品牌运营策略