unity学习笔记18

news2024/11/17 2:49:37

模型文件属性简介

1.动画类型:一共有四种:无 表示没有动画,旧版 就表示这个模型文件里面的动画片段可以用animation组件来播放的,最后两个 ”泛型“和“人形”都是animator组件来播放的。区别是泛型支持所有类型的动画播放,而人形是把人物的动画类型单独做一个分类。

选择Animation

这个时间轴表示动画的长度,可以修改长度

这个表示动画剪辑,点击加号可以生成。选择对应的动画剪辑,那么下方的设置都是为对应的动画剪辑做设置。

这个颜色表示匹配的程度,绿色代表很匹配,黄色代表勉强匹配,红色代表特别不匹配。

2.曲线:这个表示随着动画的执行返回的数值会越来越大,曲线上也可以增加关键帧来对曲线进行修改。

作用:比如角色有个挥拳动作,随着时间的增加拳头上的火焰特效越大,那么就可以给挥拳一个曲线数值由小到大,拿到这个数值再将这个数值返回给火焰特效,就可以通过这个数值来控制火焰的大小。

获取曲线数值的方式;

现在Run动画里面有一个曲线Test,且曲线数值是一个float类型的,可以在动画器中添加以恶搞float类型的参数来获取曲线的数值,当跑步动画执行的时候这个Test的数值就会发生改变。动画器的参数和曲线的名称必须一致才有值。

通过脚本来获取数值

Debug.Log(animator.GetFloat("Test"));

当动画执行Run的时候就能获取到属性的变化,动画可以设置多个曲线

3.事件:

是一种允许在动画播放的特定时间点上调用脚本方法的机制。通过动画事件,可以在动画播放的过程中触发自定义代码,实现一些特殊的逻辑、声音效果、粒子效果等。

使用方式:这两个白色线条是同步的,如果想在动作的某个时刻执行方法,在时间轴上找到希望触发事件的关键帧,就在该关键帧上添加事件。比如在run动画中,角色的脚接触地面时打印一个数值。然后脚本中编写将在动画事件触发时执行的方法。确保方法的签名是 void YourMethodName()。

示例:当角色左脚接触地面时添加一个事件将函数命名为LeftFoot,右键添加一个事件rightFoot。

只要动画执行的物体的脚本中有对应的方法就能执行这些事件。

测试代码,执行不同的方法时打印不同消息。

 void leftFoot()
    {
        Debug.Log("左脚");
    }

    void rightFoot()
    {
        Debug.Log("右脚");
    }

效果如下:

事件的应用场景:

播放声音:在动画的特定时刻播放声音效果。粒子效果:触发粒子系统的特效。触发动画状态切换:在动画的某个关键帧上切换到不同的动画状态。改变游戏状态:触发脚本中的方法来改变游戏状态或执行其他游戏逻辑。动态生成物体:在特定时间点生成新的游戏对象。
 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CoreDNS实战(一)-构建高性能、插件化的DNS服务器

1 概述 在企业高可用DNS架构部署方案中我们使用的是传统老牌DNS软件Bind, 但是现在不少企业内部流行容器化部署,所以也可以将Bind替换为 CoreDNS ,由于 CoreDNS 是 Kubernetes 的一个重要组件,稳定性不必担心,于此同时还可将K8S集…

微信扫码登录修改二维码的样式

默认是这个样子二维码都没有展示全 微信的了的 js 对象是这个样子,既然大家看到我这篇文章,想必里面的属性已经知道了,这里不做赘述。 let href data:text/css;base64,LmltcG93ZXJCb3ggLnFyY29kZSB7d2lkdGg6ODAlO21hcmdpbi10b3A6MH0uaW1wb3d…

价差后的几种方向,澳福如何操作才能盈利

在价差出现时,澳福认为会出现以下几种方向。 昂贵资产的贬值和便宜资产的平行升值。昂贵的资产贬值,而便宜的资产保持不变。昂贵资产的贬值和便宜资产的平行贬值,但昂贵资产的贬值速度更快,超过便宜资产。更贵的一对的进一步升值和…

Pycharm配置jupyter使用notebook详细指南(可换行conda环节)

本教程为事后记录,部分图片非实操图片。 详细记录了pycharm配置jupyter的方法,jupyter添加其他conda环境的方法,远程密码调用jupyter的方法,修改jupyter工作目录的方法。 文章目录 一、入门级配置1. Pycharm配置Conda自带的jupyt…

Python Opencv实践 - Yolov3目标检测

本文使用CPU来做运算,未使用GPU。练习项目,参考了网上部分资料。 如果要用TensorFlow做检测,可以参考这里 使用GPU运行基于pytorch的yolov3代码的准备工作_little han的博客-CSDN博客文章浏览阅读943次。记录一下自己刚拿到带独显的电脑&a…

springboot数据源配置

springboot数据源配置 数据层解决方案——持久化技术 内置持久化解决方案——jdbcTemplate 内置数据库 H2一般用于测试环境,配置profiels,只在开发阶段使用,让他在上线的时候不走这里就可以了 要使用内嵌的数据库H2,要先导入jar包

python提取通话记录中的时间信息

您需要安装适合中文的SpaCy模型。您可以通过运行 pip install spacypython -m spacy download zh_core_web_sm来安装和下载所需的模型。 import spacy# 加载中文模型 nlp spacy.load(zh_core_web_sm)# 示例电话记录文本 text """ Agent: 今天我们解决一下这…

语音识别从入门到精通——1-基本原理解释

文章目录 语音识别算法1. 语音识别简介1.1 **语音识别**1.1.1 自动语音识别1.1.2 应用 1.2 语音识别流程1.2.1 预处理1.2.2 语音检测和断句1.2.3 音频场景分析1.2.4 识别引擎(**语音识别的模型**)1. 传统语音识别模型2. 端到端的语音识别模型基于Transformer的ASR模型基于CNN的…

14、pytest像用参数一样使用fixture

官方实例 # content of test_fruit.py import pytestclass Fruit:def __init__(self, name):self.name nameself.cubed Falsedef cube(self):self.cubed Trueclass FruitSalad:def __init__(self, *fruit_bowl):self.fruit fruit_bowlself._cube_fruit()def _cube_fruit(s…

【从零开始学习Redis | 第六篇】爆改Setnx实现分布式锁

前言: 在Java后端业务中, 如果我们开启了均衡负载模式,也就是多台服务器处理前端的请求,就会产生一个问题:多台服务器就会有多个JVM,多个JVM就会导致服务器集群下的并发问题。我们在这里提出的解决思路是把…

Spring Security 自定义异常失效?源码分析与解决方案

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞…

python pyaudio对音频进行端点检测,检测出说话区间

python pyaudio对音频进行端点检测,检测出说话区间 主要采用过零率和语音能量来进行检测,并设置双阈值。 代码如下: # -*- coding: utf-8 -*- import wave import os import matplotlib.pyplot as plt import numpy as np# 判断是否变号 de…

差分基准站

差分基准站,又称参考接收机,是一种固定式卫星接收机,用于提高卫星定位精度。 差分基准站的作用是提供已知位置和准确的位置信号,以纠正其他移动定位终端接收器接收到的卫星信号中的误差。 卫星定位信号会受到多种因素的影响&#…

Redis缓存——Spring Cache入门学习

Spring Cache 介绍 Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。 Spring Cache 提供了一层抽象,底层可以切换不同的缓存实现,例如: EHCacheCaffeineR…

JAVA-作业7-画一个笑脸

要求如题 代码如下: SmileFace01: import java.awt.Color; import java.awt.Graphics;import javax.swing.JPanel;public class SmileFace01 extends JPanel {Overrideprotected void paintComponent(Graphics g) {super.paintComponent(g);int width getWidth(…

【c】有序数列插入一个整数

#include<stdio.h> int main() {int n;scanf("%d",&n);int arr[n1];for(int i0;i<n;i){scanf("%d",&arr[i]);}int a;scanf("%d",&a);arr[n]a;for(int j0;j<n;j){if(arr[j]>arr[n])//交换元素位置{int temparr[j];arr…

【广州华锐互动】风电场检修VR情景模拟提供接近真实的实操体验

风电场检修VR情景模拟系统由广州华锐互动开发&#xff0c;这是一种新兴的培训方式&#xff0c;它通过虚拟现实技术将风力发电场全范围进行1:1仿真建模还原&#xff0c;模拟监视风力发电场各种运行工况下的运行参数和指标&#xff0c;同时可进行升压站系统的巡视&#xff0c;倒闸…

JavaWeb 分页查询

由于html不能直接从域当中直接拿数据 所以我们引入了jsp文件 数据存在了requets域当中 如果数据量很大,不可能把所有数据全部在页面展示: 数据全部在页面展示缺点: SQL执行时间过长 用户查看数据,滚动滚动条,用户体验不高 在实际开发中,分页查询&#xff0c; 实现: sql语句…

什么是Overlay网络?Overlay网络与Underlay网络有什么区别?

你们好&#xff0c;我的网工朋友。 在传统历史阶段&#xff0c;数据中心的网络是以三层架构&#xff08;核心、汇聚、接入&#xff09;为基本标准。 但是随着技术的发展&#xff0c;不同的厂家有不同的组建方式&#xff0c;比如说在核心层、汇聚层和接入层增加虚拟化技术。 …

Linux Namespace技术

对应到容器技术&#xff0c;为了隔离不同类型的资源&#xff0c;Linux 内核里面实现了以下几种不同类型的 namespace。 UTS&#xff0c;对应的宏为 CLONE_NEWUTS&#xff0c;表示不同的 namespace 可以配置不同的 hostname。User&#xff0c;对应的宏为 CLONE_NEWUSER&#xf…