【Unity动画系统】Unity动画系统Animation详解,参数细节你是否弄清?

2023-12-29 07:36

本文主要是介绍【Unity动画系统】Unity动画系统Animation详解,参数细节你是否弄清?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述


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

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

👨‍💻 本文由 秩沅 原创

👨‍💻 收录于专栏:Unity基础实战

🅰️



文章目录

    • 🅰️
    • Unity中现存两套动画系统Legacy动画系统和Mecanim动画系统
    • 🎶(==1==) 动画中帧的概念
    • 🎶(==2==) Animation窗口预览模式以及参数的介绍
      • Animation的基本参数
      • 关键帧模式下的动画编辑
      • 曲线模式下的动画编辑
      • **Animation Clip 组件的相关参数(Normal状态下)**
      • **Animation Clip 组件的相关参数(Debug状态下)**
    • 🅰️


Unity中现存两套动画系统Legacy动画系统和Mecanim动画系统

  • Legacy动画系统:功能相对简单 核心组件Animation;
  • Mecanim动画系统:当前主要的动画系统,功能相对复杂,核心组件Animator;

Unity的动画系统是一种强大的工具,可以用来创建和控制游戏对象的动画。它提供了一套灵活的功能,让开发者能够创建复杂的运动和转换效果,包括移动、旋转、缩放、淡入淡出等。
Unity的动画系统基于关键帧动画的概念。开发者可以在时间轴上设置关键帧,然后Unity会根据这些关键帧来自动计算中间帧。这使得创建复杂的动画非常简单,只需设置起始和结束状态,然后让Unity自动填充中间的帧。
Unity的动画系统支持多种动画曲线类型,包括线性、贝塞尔曲线、步进曲线等。这些曲线可以用来调节动画的速度和缓动效果,使动画表现更加平滑和自然。
除了基本的动画功能,Unity还提供了一些高级功能,如动画事件、动画层、混合树等。动画事件可以用来触发特定的动作或事件,动画层可以在同一个游戏对象上添加多个动画,混合树可以用来与其他动画系统进行交互。
总的来说,Unity的动画系统非常强大且易于使用,它为开发者提供了丰富的功能和工具,使得创建和控制游戏对象的动画变得更加简单和灵活。


🎶(1 动画中帧的概念


在Unity中,动画是通过关键帧来定义的。每个关键帧指定了一个对象在特定时间点上的属性值,例如位置、旋转和缩放。当动画播放时,Unity会自动在关键帧之间进行插值,以平滑地过渡对象的属性值。

  • 一个动画可以包含多个帧,每帧对应于一个关键帧。帧之间的时间间隔称为帧率,通常以每秒帧数(FPS)来表示
  • 例如,如果一个动画以30FPS的帧率播放,那么每个关键帧之间的时间间隔就是1/30秒。
  • 假设某个动画的帧率为60帧每秒(每帧1/60秒),意味着该动画1秒钟最多会有60次改变机会
    每一帧的间隔时间是 1s/60 ≈ 16.67毫秒
    也就是说 我们最快可以每16.67毫秒改变一次对象状态

在Unity中,可以通过动画窗口来创建和编辑动画。在动画窗口中,可以在时间轴上添加关键帧,并设置每个关键帧的属性值。此外,还可以通过拖动和缩放时间轴来调整关键帧的位置和时间。
帧的概念在Unity中非常重要,它们定义了动画的运动和变化。通过设置不同的关键帧,可以实现物体的移动、旋转和缩放等动画效果。


🎶(2 Animation窗口预览模式以及参数的介绍


Animation的基本参数


  • Ctrl + 6 :打开动画窗口 Animation
  • Preview——>预览模式
    在这里插入图片描述

1.录制: ———在这里插入图片描述
2.第几帧:———在这里插入图片描述

  • 关键帧模式和曲线模式
    (关键帧模式适合匀速动画的需求)
    (曲线模式适合动画中又变速动画的需求)
    在这里插入图片描述
  • 添加关键帧和添加事件

在这里插入图片描述

  • 动画事件轴
    (一格一帧,0到1就是60格也就是60帧,Update——>可看作1秒60帧)
    在这里插入图片描述

  • 切换动画
    在这里插入图片描述

  • 窗口的额外属性

在这里插入图片描述

关键帧模式下的动画编辑


  • 添加属性——.(属性为对象任意的组件)
    在这里插入图片描述

曲线模式下的动画编辑


在这里插入图片描述

Add Key:添加关键帧
Delete Key:删除关键帧
Clamped Auto:切线模式,自动设置切线
Auto:旧版切线模式,和Clamped Auto基本类似,主要用于老动画系统,建议不使用除非是老动画
Free Smooth:自由设置切线
Flat:切线设置为水平
Broken:单独控制左右曲线切线

Lfet Tangent___左边的切线
Free:自由设置
Linear:直线
Constant:常量切换
Weighted:权重切换


Animation Clip 组件的相关参数(Normal状态下)

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

Loop Time:循环动画
Loop Pose:无缝循环运动
Cycle Offset:循环动画在哪个事件段开始循环


Animation Clip 组件的相关参数(Debug状态下)


  • Sample Rate —— 改变一秒多少帧和Animation的额外属性中改变帧属性作用一致
  • Wrap Mode——播放模式(Pingpong 从头到尾播放然后再从尾到头播放)
    在这里插入图片描述在这里插入图片描述

🅰️


⭐【Unityc#专题篇】之c#进阶篇】

⭐【Unityc#专题篇】之c#核心篇】

⭐【Unityc#专题篇】之c#基础篇】

⭐【Unity-c#专题篇】之c#入门篇】

【Unityc#专题篇】—进阶章题单实践练习

⭐【Unityc#专题篇】—基础章题单实践练习

【Unityc#专题篇】—核心章题单实践练习


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


在这里插入图片描述


这篇关于【Unity动画系统】Unity动画系统Animation详解,参数细节你是否弄清?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/548801

相关文章

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Android中Dialog的使用详解

《Android中Dialog的使用详解》Dialog(对话框)是Android中常用的UI组件,用于临时显示重要信息或获取用户输入,本文给大家介绍Android中Dialog的使用,感兴趣的朋友一起... 目录android中Dialog的使用详解1. 基本Dialog类型1.1 AlertDialog(

C#数据结构之字符串(string)详解

《C#数据结构之字符串(string)详解》:本文主要介绍C#数据结构之字符串(string),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录转义字符序列字符串的创建字符串的声明null字符串与空字符串重复单字符字符串的构造字符串的属性和常用方法属性常用方法总结摘

Java中StopWatch的使用示例详解

《Java中StopWatch的使用示例详解》stopWatch是org.springframework.util包下的一个工具类,使用它可直观的输出代码执行耗时,以及执行时间百分比,这篇文章主要介绍... 目录stopWatch 是org.springframework.util 包下的一个工具类,使用它

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

Java实现时间与字符串互相转换详解

《Java实现时间与字符串互相转换详解》这篇文章主要为大家详细介绍了Java中实现时间与字符串互相转换的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、日期格式化为字符串(一)使用预定义格式(二)自定义格式二、字符串解析为日期(一)解析ISO格式字符串(二)解析自定义

springboot security快速使用示例详解

《springbootsecurity快速使用示例详解》:本文主要介绍springbootsecurity快速使用示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录创www.chinasem.cn建spring boot项目生成脚手架配置依赖接口示例代码项目结构启用s