unity学习38:导入角色和动画,实测用脚本控制trigger和动作状态的转换

目录

1 资源准备:先从unity的 Asset store下载一些free的资源

2 在project/Asset里找到角色模型和动画

2.1 在prefab里找到角色资源

2.2 找到动画资源,一般在Animation下的模型文件fbx下层

2.3 准备工作

2.4 拖拽模型文件里的动作到Animator

2.5 模型贴图文件丢失了,不影响测试动作,暂时先这样吧

2.6 跑步动作OK

2.7 拖入多个动作,设置多个动作 state直接的关系,形成循环

2.8 增加参数, 控制2个动作组成的循环,切换的条件

2.9 点击 2个动作state之间的 transition 线,添加转换条件

2.10 测试动作state的转换条件

2.11 动作之间的退出时间

2.12 动作之间的过渡持续时间(动作融合过渡时间)

3 用脚本控制动作

3.1 GetComponent ().SetTrigger()

3.2 脚本

3.3 实测OK


1 资源准备:先从unity的 Asset store下载一些free的资源

  • 先从unity的 Asset store下载一些free的资源
  • 在unity里打开
  • 下载 download
  • 导入 import

2 在project/Asset里找到角色模型和动画

在project/Asset里找到角色模型和动画

2.1 在prefab里找到角色资源

  • 找到导入的资源包
  • 找到prefabs
  • 找到一个模型文件,一般就是角色

2.2 找到动画资源,一般在Animation下的模型文件fbx下层

  • 找到动画资源,一般在Animation下的模型文件fbx下层
  • Animation文件夹下面,首先是模型fbx文件
  • 模型文件里包含了动画文件

2.3 准备工作

  • 新建一个Animator Controller 
  • 然后关联到挂包含Animator组件的角色模型/物体上的 controller里

2.4 拖拽模型文件里的动作到Animator

  • 双击Animator Controller 
  • 打开Animator
  • 拖拽模型文件里的动作到Animator

2.5 模型贴图文件丢失了,不影响测试动作,暂时先这样吧

  • 模型贴图文件丢失了

2.6 跑步动作OK

  • 测试 OK

2.7 拖入多个动作,设置多个动作 state直接的关系,形成循环

  • 拖入多个动作
  • 设置entry 默认接下来的动作
  • 然后设置run 和 wave之间的关系,make transition(过渡)

  • 注意动作本身的属性
  • run是loop的
  • wave是不loop的
  • 因此,如果只是从 RUN指向 WAVE ,执行到WAVE就会停止
  • 因此,如果只是从 RUN指向 WAVE ,又回到RUN,执行到RUN就会继续WAVE。。。。如此循环下去

2.8 增加参数, 控制2个动作组成的循环,切换的条件

如果我们想在run切换到wave的时候,设置切换的条件,需要先加参数

参数的4种类型

  • float
  • int
  • bool
  • trigger

这里创建一个trigger类型的参数,改名为wave

2.9 点击 2个动作state之间的 transition 线,添加转换条件

  • 点击 2个动作state之间的 transition 线
  • 在conditions里点+
  • 添加一个wave 条件

2.10 测试动作state的转换条件

  • 不勾选wave参数时,始终执行run 
  • 勾选了wave参数时,相当于满足了一次 wave的trigger触发条件
  • 可以看到会执行一次wave动作

2.11 动作之间的退出时间

  •  has exit time
  • 这个可以勾选掉
  • 否则必须播放完当前动作,才能播放下一个动作

2.12 动作之间的过渡持续时间(动作融合过渡时间)

  • 这个也可以勾选掉,
  • 勾选掉之后,动作之间会直接切换,比较生硬
  • 有得情况下,动作直接会有一个过渡变化,但是切换没那么快

3 用脚本控制动作

3.1 GetComponent<Animator>().SetTrigger()

  • GetComponent<Animator>().SetTrigger("wave");
  • 用来设置 Animator的某个trigger的值

3.2 脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class TestPlayer1 : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid Update(){if(Input.GetKeyDown(KeyCode.Q)){//触发wave参数GetComponent<Animator>().SetTrigger("wave");}}
}

3.3 实测OK

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/19982.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Weboffice在线Word权限控制:限制编辑,只读、修订、禁止复制等

在现代企业办公中&#xff0c;文档编辑是一项常见且重要的任务。尤其是在线办公环境中&#xff0c;员工需要在网页中打开和编辑文档&#xff0c;但如何确保这些文档只能进行预览而无法被编辑或复制&#xff0c;成为许多企业面临的一个痛点。尤其是在处理涉密文档时&#xff0c;…

Endnote使用笔记——持续更新

&#xff08;1&#xff09;如果样式库里没有想要的期刊格式&#xff0c;可以到这个网址进行下载&#xff0c;并放在本地安装Endnote的文件下边的styles文件里&#xff1a; https://endnote.com/downloads/styles/ &#xff08;2&#xff09;EndNote导入参考文献时&#xff0c;关…

try learning-git-branching

文章目录 mergerebase分离 HEAD相对引用利用父节点branch -f 撤销变更cherry-pick交互式 rebase只取一个提交记录提交的技巧rebase 在上一次提交上amendcherry-pick 在上一次提交上 amend tag多分支 rebase两个parent节点纠缠不清的分支偏离的提交历史锁定的Main推送主分支合并…

Unity使用反射进行Protobuf(CS/SC)协议,json格式

protobuf生成的协议,有挺多协议的.利用反射生成dto进行伪协议的响应 和 发送请求 应用场景: 请求(CS)_后端先写完了(有proto接口了),前端还没搞完时(暂还没接入proto),后端可使用此请求,可自测 响应(SC)_可自行构建一个响应(有些特殊数据后端下发不了的),对数据进行测试 // 请…

Linux探秘坊-------8.进程详解

1.概念详解 1.运行&&阻塞&&挂起 内容基础&#xff1a;方框中的就是调度队列&#xff0c;是一个 双向队列&#xff0c;每一个元素是PCB其对应的代码数据 1.运行 只要进程 在调度队列中&#xff0c;进程的状态就是运行&#xff08;running&#xff09;. 2.阻塞…

VUE 集成高德地图部署到nginx后打开不了,控制台报错

VUE 集成高德地图部署到nginx后打开不了&#xff0c;控制台报错:xxxxxxx,because it violates the following Content Security Policy directive: “script-src ‘self’ https://webapi.amap.com ‘unsafe-inline’ ‘unsafe-eval’ blob: data:”. Note that ‘script-src-e…

解决vue-awesome-swiper 4.x + swiper 5.x 分页pagination配置不生效问题

这次给的需求需要实现几个轮播图&#xff0c;我打算用swiper来做。刚开始我参照同事之前实现的swiper&#xff0c;复制到我的新页面中&#xff0c;是可用的。但是这次的需求需要有底下的分页pagination&#xff0c;而且因为版本比较老&#xff0c;比较难找到配置项。这里说一下…

Linux中线程创建,线程退出,线程接合

线程的简单了解 之前我们了解过 task_struct 是用于描述进程的核心数据结构。它包含了一个进程的所有重要信息&#xff0c;并且在进程的生命周期内保持更新。我们想要获取进程相关信息往往从这里得到。 在Linux中&#xff0c;线程的实现方式与进程类似&#xff0c;每个线程都…

Unity Muse AIGC工具

这篇介绍unity3D的AIGC工具&#xff0c;Unity Muse&#xff0c;实现文本生成材质、动画、聊天等功能。 一、关于Unity Muse Unity Muse Unity Muse&#xff1a;利用 AI 释放您的创造潜力 | Unity 利用编辑器内置的 AI 更快地将你的想法变成现实 使用Unity Muse&#xff0c…

UART(一)——UART基础

一、定义 UART(Universal Asynchronous Receiver/Transmitter)是一种广泛使用的串行通信协议,用于在设备间通过异步方式传输数据。它无需共享时钟信号,而是依赖双方预先约定的参数(如波特率)完成通信。 功能和特点 基本的 UART 系统只需三个信号即可提供稳健的中速全双工…

【MyBatis】预编译SQL与即时SQL

目录 1. 以基本类型参数为例测试#{ }与${ }传递参数的区别 1.1 参数为Integer类型 1.2 参数为String类型 2. 使用#{ }传参存在的问题 2.1 参数为排序方式 2.2 模糊查询 3. 使用${ }传参存在的问题 3.1 SQL注入 3.2 对比#{ } 与 ${ }在SQL注入方面存在的问题 3.3 预编译…

Redis 03章——10大数据类型概述

一、which10 &#xff08;1&#xff09;一图 &#xff08;2&#xff09;提前声明 这里说的数据类型是value的数据类型&#xff0c;key的类型都是字符串 官网&#xff1a;Understand Redis data types | Docs &#xff08;3&#xff09;分别是 1.3.1redis字符串&#xff0…

Linux:线程概念、理解、控制

目录 一、认识线程 1.认识线程V1 2.认识线程V2 3.认识线程V3 4.认识线程V4 5.认识线程V5 二、线程控制 1.前言 2.创建线程 3.线程等待 4.线程终止 5.线程分离 三、线程理解 一、认识线程 1.认识线程V1 借用大多数计算机教材的话&#xff0c;线程是进程的一个执行…

maven使用默认settings.xml配置时,Idea基于pom.xml更新依赖时报错,有些组件下载时连接超时

1、问题背景&#xff1a;maven使用默认settings.xml配置时&#xff0c;Idea基于pom.xml更新依赖时报错&#xff0c;有些组件下载时连接超时&#xff0c; 通过日志发下&#xff0c;去连接maven.org网站下载依赖&#xff0c;有时候肯定会超时。 2、解决办法&#xff1a;使用国外…

【第3章:卷积神经网络(CNN)——3.5 CIFAR-10图像分类】

嘿,小伙伴们,今天咱们来聊聊一个超级酷炫的话题——卷积神经网络(CNN)及其在CIFAR-10图像分类中的应用。这不仅仅是一个技术话题,更是一场探索人工智能奥秘的旅程。准备好了吗?咱们这就发车! 一、CNN:人工智能的“千里眼” 首先,咱们得知道CNN是啥。CNN,全名Convol…

Win10环境借助DockerDesktop部署大数据时序数据库Apache Druid

Win10环境借助DockerDesktop部署最新版大数据时序数据库Apache Druid32.0.0 前言 大数据分析中&#xff0c;有一种常见的场景&#xff0c;那就是时序数据&#xff0c;简言之&#xff0c;数据一旦产生绝对不会修改&#xff0c;随着时间流逝&#xff0c;每个时间点都会有个新的…

【射频仿真技巧学习笔记】Cadence修改图表背景、曲线颜色

很多初始设置的Cadence仿真出来的曲线是长下面这样的&#xff0c;背景是黑色&#xff0c;而且曲线是Dot点状fine细线&#xff0c;这样查看图像会很不方便 如果一条一条去改曲线的性质会很不方便&#xff0c; 这里我介绍两种方法 方法一 首先打开virtuoso的初始界面 在命令…

【Vue3源码解析】应用实例创建及页面渲染

下载源码 git clone https://github.com/vuejs/core.git写该文章时的Vue版本为&#xff1a; "version": "3.5.13",这里要注意 pnpm 的版本不能太低&#xff0c;我此时的版本为 9.15.4。更新 pnpm 版本&#xff1a; npm install -g pnpm然后安装依赖&…

Ubuntu 系统 cuda12.2 安装 MMDetection3D

DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 需要更多数据资源和技术解决方案&#xff0c;知识星球&#xff1a; “DataBall - X 数据球(free)” 贵在坚持&#xff01; ---------------------------------------…

云贝餐饮连锁V3独立版全开源+vue源码

一.介绍 云贝餐饮连锁V3独立版&#xff0c;作为一款全开源、全插件的源码部署系统&#xff0c;其在餐饮行业软件系统中独树一帜。该系统不仅功能全面&#xff0c;涵盖了餐饮连锁企业的日常运营、财务管理、库存管理、会员管理等多个方面&#xff0c;而且框架结构清晰&#xff…