如何利用Spine制作简单的2D骨骼动画

news2024/11/24 15:04:14

在2D游戏中,我们经常看到各种各样的角色动画。动画能给游戏带来生机和灵气。创作一段美妙的动画,不仅需要强大的软件工具,更需要一套完善的工作流程。

Spine就是一款针对游戏开发的2D骨骼动画编辑工具。Spine 可以提供更高效和简洁 的工作流程,以创建游戏所需的动画。

Spine3.8.75 专业版/中文

为什么选择骨骼动画?

在 Spine 中通过将图片绑定到骨骼上,然后再控制骨骼实现动画。2D 骨骼动画相对于传统的逐帧动画有以下优势:

最小的体积: 传统的动画需要提供每一帧图片。而 Spine 动画只保存骨骼的动画数据,它所占用的空间非常小,并能为你的游戏提供独一无二的动画。

美术需求: Spine 动画需要的美术资源更少,能为您节省出更多的人力物力更好地投入到游戏开发中去。

流畅性: Spine 动画使用差值算法计算中间帧,这能让你的动画总是保持流畅的效果。

装备附件: 图片绑定在骨骼上来实现动画。如果你需要可以方便地更换角色的装备满足不同的需求。甚至改变角色的样貌来达到动画重用的效果。

混合: 动画之间可以进行混合。比如一个角色可以开枪射击,同时也可以走、跑、跳或者游泳。

程序动画: 可以通过代码控制骨骼,比如可以实现跟随鼠标的射击,注视敌人,或者上坡时的身体前倾等效果。

Spine的工作流程

骨骼

以一个小小动画为例:

这里是一个机器人“小垃圾”,我们在绘画软件中完成对游戏人物的绘制后,将其导入至Spine。

在上文中,我们提到,骨骼动画和传统动画不同的地方是,骨骼动画并非逐帧绘制,而是将图片绑定到骨骼上,然后再控制骨骼实现动画。因此,在人物绘制时,我们不能“一个图层干到底”,要根据人物运动的需求,区分好人物的身体各个结构的图层。

在导入素材后,我们就要进行创建骨骼的工作了。通常情况下,父骨骼带动子骨骼运动,即为FK(Forward Kinematics)正向动力学。以手臂的弯曲为例子,小臂的弯曲会带动手掌运动,而不是手掌停留在原地。

那么,我们接下来为素材创建骨骼,就要确定父子集关系,进行骨骼集合的排列组合。

在完成了全身的骨骼建立后,我们将图片(插槽)指定给骨骼,基础的绑定就完成了。

网格与权重

权重用于将网格顶点绑定到一个或多个骨骼,调整骨骼时,顶点也会调整,使得网格跟随骨骼自动变形。

在完成骨骼与权重的设置后,移动骨骼,软件就会自动计算素材引发的扭曲与变化,从而实现动画。
动画

在动画制作阶段,对骨骼在时间轴上添加关键帧,做出形变和位移等操作,诸多。

在完成动画后,调整曲线(动画各个阶段播放速度)等许多可选项,我们的小机器人走路动画就完成了。相对起骨骼绑定,网格与权重设置,在2D骨骼动画中,具体的动画制作无疑是相对更具有挑战性的过程,在制作过程中需要考虑到的因素也更加的多。

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

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

相关文章

【STM32智能车】寻迹模块

【STM32智能车】寻迹模块 寻迹模块 传感器原理接线说明 智能车寻迹是一种机器人控制技术,它通过使用传感器和程序算法,使汽车能够在行驶过程中识别出路径上的黑线,并沿着该线路行驶。 智能车寻迹常用于竞赛或教育用途,可以提高学生…

【学习心得】Virtual Studio Code下载安装与简单设置

一、下载 1、vs code 官网:https://code.visualstudio.com/ 二、安装 1、双击安装文件开始安装。 2、同意协议开始下一步。 3、选择你自己想要安装的路径。 4、勾选这三个,方便右键在vs code 中打开文件或文件夹。 5、安装步骤几乎没有坑,直…

探究低代码开发平台的价值所在,为企业带来哪些优势?

随着数字化转型的加速,企业和组织需要以更快的速度交付新的软件应用程序,以保持竞争力和创新性。然而,传统的软件开发模式已经不再适用于当前的快节奏商业环境。在这种背景下,低代码开发平台日益成为软件开发的热门趋势&#xff0…

【JavaWeb基础】三层架构

一、知识点整理 三层架构的含义 Controller: 控制层,接收前端发送的请求,对请求进行处理,并响应数据。 Service:业务逻辑层,处理具体的业务逻辑。 Dao(Data Access Object): 数据访问层(持久层),负责数据访问操作,包括数据的增、删、改、查。 二、代码实现 原EmpController.…

spring整合logBack日志框架:

1. SLF4J简介 SLF4J(Simple Logging Facade for Java)是一种日志规范,类似于JDBC,我们常用的日志log4j、logback等都实现了这个规范,所以我们可以直接使用SLF4J的规范来使用日志。 2. logback和log4j 它们是同一个作…

【hadoop】大数据的几个基本概念

大数据的几个基本概念 数据仓库的基本概念数据仓库与大数据OLTP与OLAP 数据仓库的基本概念 数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。 本…

堆排序算法及其稳定性分析

堆排序算法及其稳定性分析 什么是堆排序? 堆排序是利用数据结构堆而设计的一种排序算法。 堆分为两种,大顶堆和小顶堆。 所谓大顶堆就是每个节点的值都大于或者等于其左右孩子节点的值。 小顶堆则是相反的,每个节点的值都小于或者等于其…

超全整理,接口测试实战详细(实例)一篇打通...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、接口测试范围 …

Git无法上传删除 Commit里面有大文件

1.Bug描述 因为在一次提交中不小心把一个打包的aab文件弄到commit文件里了,于是在上传的时候push rejected 了。 因为GitHub的文件上限是100M,但是打的包太大了,有170M,所以是不能上传的,但是又是已经在Commit历史中了…

rsync增量备份工具

目录 一、概述 二、配置 rsync 源服务器 1.查看rsync配置文件位置 2.修改 /etc/rsync.conf 配置文件 3.为备份账户创建数据文件 4.保证所有用户对源目录都有读取权限 5.启动 rsync 服务 三、发起端 1.rsync命令 2.将指定的资源远程同步到本地/opt 目录下进行备份。 3.将…

【Docker】docker安装nginx及端口映射相关配置

前言: 最近,在一台新服务器上准备运行一个前端vue项目,服务器上安装了docker,想要尝试试通过docker安装nginx的并运行项目,以下是操作步骤 操作步骤: 一、安装nginx 1、拉取镜像 从docker仓库里拉取最…

unaipp打包app启动界面配置

1、配置代码 2、IOS端启动界面demo参考 iOS平台自定义storyboard启动界面 - DCloud问答

面试官当面夸奖了我,反手却把我挂了,这是什么套路?

最近几个朋友找我聊天,给我讲述了面试过程中遇到的一些不太理解的事情。我有个朋友作为一个技术面试官,今天来分享 10 个面试相关的套路。 1.自我介绍 自我介绍是一个重要的开始,好的开始是成功的一半。不需要太多花里胡哨的东西&#xff0…

SpringBoot05:自动配置原理

一、自动配置原理 SpringBoot官网 1、分析自动配置原理 以HttpEncodingAutoConfiguration(Http编码自动配置)为例解释自动配置原理 //表示这是一个配置类,和以前编写的配置文件一样,也可以给容器中添加组件 Configuration(prox…

解决阿里qiankun微应用资源无法加载

公司老项目多了,却想用新版本的框架,最好的解决办法就是用微前端。 本文说下我们在用阿里微前端框架qiankun,遇到的一些问题,以及一些巧妙的解决办法。 背景 因为接入微前端很长时间了,导致现在的微应用变成了实际意…

Python接口自动化测试之UnitTest详解

基本概念 UnitTest单元测试框架是受到JUnit的启发,与其他语言中的主流单元测试框架有着相似的风格。其支持测试自动化,配置共享和关机代码测试。支持将测试样例聚合到测试集中,并将测试与报告框架独立。 它分为四个部分test fixture、TestC…

【LeetCode】149. 直线上最多的点数

149. 直线上最多的点数(困难) 枚举直线 哈希表统计 思路 遍历每两个点之间的连线,然后计算这条连线上有多少个点。 具体步骤如下: 初始化最大点数为 0。遍历每个点,用它和其他点计算斜率。如果两个点的x坐标相同&…

7月大概率加息25bp!美股螺旋式下跌,加密市场“迎难而上”!

今年6月,美股标普500指数走出了自1948年以来最长的熊市,进入新的牛市,美联储暂停加息给全球资本市场一个喘息的机会。尽管如此,美国目前经济基本面的情况仍不及预期,股市其上涨态势恐怕将会迎来一轮调整。 以Solita Ma…

资深开发竟然不清楚int(1)和int(10)的区别

一、困惑 最近遇到个问题,有个表的要加个user_id字段,user_id字段可能很大,于是我提mysql工单alter table xxx ADD user_id int(1)。领导看到我的sql工单,于是说:这int(1)怕是不够用吧,接下来是一通解释。…

做一个小程序需要多少钱

做一个小程序要多少钱,这种分2种类型 定制版 定制版就是按着客户的需求来做了。首先是聊需求,然后画思维导图,做原型图,做完原型图,就是做UI设计,然后做前端,后端。这个费用下来大概几千元到几…