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

【动画】Unity2D骨骼动画-Animation2D

骨骼动画原理

  • 叫骨骼蒙皮动画或者矩阵变换动画更贴切
  • 骨骼动画 = transform动画 + 骨骼顶点变换 + 渲染模型
    • KeyframeAnimation(transform节点),
    • 骨骼引起的顶点变换(bone,mesh)
    • draw mesh

动画驱动

  • Animation控制transform,transform提供了骨头的矩阵,连续的keyframe控制骨头的位置,让每个精灵分块动了起来;
  • 骨头影响顶点变换,顶点动起来
  • 形成了动画

顶点变换

使用骨骼影响顶点的移动

方式1:gpu

着色器顶点函数里获得骨骼的矩阵对顶点做变换

方式2:cpu

cpu里修改mesh顶点,这个动画复杂,模型复杂会卡

贴图

蒙皮,即把图片盖在模型上,使用某个精灵生成网格,每个顶点自动对应到texture某个uv坐标,编辑器下完成,美术的活

骨骼

  • 骨骼 = 所有骨头
  • 每个骨头都记录顶点和变换矩阵的关系,骨头有父子关系,在unity的形式为Transform节点

骨骼和顶点绑定的方法

在某一顶点区域创建骨头,那么这个区域的顶点都收到这个骨头的影响。骨头的影响范围可以调整。顶点最多可以受到n个骨头影响,游戏里一般是4个。

切块

精灵中不相连的部分都可以算作一个独立的块,也可以在制作的时候自定义切块,一般这些切块是人性骨骼的躯干、头部、四肢、武器

unity animation2D的接口

  • 编辑器导出unity资源:skeletonEditor.export()
  • 导出的资源:Animator + Animation + Sprite + GameObject

源码

入口类

SpriteSkin,对应编辑器SpriteSkinEditor,LateUpdate

Boner2D

利用SkinnedMeshRenderer的特性,构造其需要的参数,骨骼权重,骨骼位置,骨骼动画的计算这个库交给SkinnedMeshRenderer处理了

http://www.dtcms.com/a/237920.html

相关文章:

  • Linux系统编程中的_GNU_SOURCE宏
  • 【Blender】Blender 基础:导入导出
  • Unity中如何播放视频
  • WEB3全栈开发——面试专业技能点P1Node.js / Web3.js / Ethers.js
  • webrtc 在线测试, 如何在线拉流测试
  • 建造者模式深度解析与实战应用
  • Framework开发之IMS逻辑浅析1--关键线程及作用
  • 软件工程的软件生命周期通常分为以下主要阶段
  • [论文阅读] 人工智能+软件工程 | 结对编程中的知识转移新图景
  • 基于 Transformer robert的情感分类任务实践总结之三——FGM
  • day 18进行聚类,进而推断出每个簇的实际含义
  • Boost ASIO 库深入学习(3)
  • Unity VR/MR开发-VR/开发SDK选型对比分析
  • 服务器 | Centos 9 系统中,如何部署SpringBoot后端项目?
  • debian12拒绝海外ip连接
  • DHCP / DHCPv6 原理 / 报文解析 / 配置示例
  • 对比传统引擎,Unity3D 在生产配套中的独特优势
  • 前端打包工具简单介绍
  • 前端知识导图
  • Spring Boot中Bean注入方式对比与最佳实践
  • webpack其余配置
  • 详解鸿蒙Next仓颉开发语言中的动画
  • RabbitMQ入门
  • 大数据+智能零售:数字化变革下的“智慧新零售”密码
  • 【Docker 02】Docker 安装
  • 【Mac 从 0 到 1 保姆级配置教程 16】- Docker 快速安装配置、常用命令以及实际项目演示
  • Maven入门(够用)
  • windows10下搭建nfs服务器
  • Maven的使用
  • maven 1.0.0idea的使用说明