IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Spine2D基础知识 -> 正文阅读

[游戏开发]Spine2D基础知识

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

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

  • 最小的体积: 传统的动画需要提供每一帧图片。而 Spine
    动画只保存骨骼的动画数据,它所占用的空间非常小,并能为你的游戏提供独一无二的动画。
  • 美术需求: Spine 动画需要的美术资源更少,能为您节省出更多的人力物力更好的投入到游戏开发中去。
  • 流畅性: Spine 动画使用差值算法计算中间帧,这能让你的动画总是保持流畅的效果。
  • 装备附件: 图片绑定在骨骼上来实现动画。如果你需要可以方便的更换角色的装备满足不同的需求。甚至改变角色的样貌来达到动画重用的效果。
  • 混合: 动画之间可以进行混合。比如一个角色可以开枪射击,同时也可以走、跑、跳或者游泳。
  • 程序动画: 可以通过代码控制骨骼,比如可以实现跟随鼠标的射击,注视敌人,或者上坡时的身体前倾等效果。

Spine2d一款功能强大的2D动画绑定软件,在游戏制作中一直有着很高的地位。目前来说,Spine2d常用的几个场景有下面四个:

1.以2D为主体游戏,横版,RPG等等,Spine2d会在制作过程中帮助动画师处理,人物动作。

2.动态立绘,目前来说动态例会在手机游戏中很吃香,所以很多工作室就使用Spine2d来做动态立绘,当然还有另外一款软件更适合做动态立绘——Live2D,不过这个软件是订阅制,价格比较高,所以一般个人开发也都选择Spine2d,因为是买断制,一次付款,终身享受。

3.片头过场,这一个在一些体量比较小的游戏上使用的会比较多,用Spine2d来做出人物立绘一样的动效,之后加入AE处理,duang的特效,最后就可以呈现比较好看的短片。

4.UI动效,最常见的就是一些比较可爱的Q版游戏,点击按钮点一下会有些扭曲,这就是用来制作UI的结果,还有就是特效,通过图片的叠加或者变换,来得到不错的视觉效果。

以上就是目前游戏制作通常会用到Spine2d的4个方向。

本文主要以0基础快速上手为主,总的来说就是导入原画切片,绑定骨骼,建立网格,添加动画这些基本操作,一步一步认真读,教程没有太多图片,认真读完,保证会有一个基本的收获——上手完成,之后自然就可以去看更高级的教程了。

万事要多学多练,上手不代表入门,入门不代表会用,一起加油!

废话少说,开始:

切片导入(以PS为例)

将原画的图片放入PS,使用PhotoshoptoSpine插件将分层图片导出png(做sprite用)+json文件

拖拽json文件到Spine软件中,会提示导入json文件到Spine,确定就好。

人物到软件中一般不会准确的在世界水平以上(原点),仔细看,视图中心X和Y轴交点有个远点,将人物放到这个原点之上,保证人物可以站在地面上。

之后存档,点击左上Spine菜单,存好这个文档就ok。

建立骨骼

导入完图片后需要绑定骨骼,或者给图片制作网格,不过还是建议先做骨骼,因为有了内在才好做外在,至少我是这样认为的。

在左下找到新建的选项,一个骨骼的图标,开始绑定,绑定的时候记住尾椎的位置先点一个点,作为角色的重心,之后向上做腰骨,胸骨,胸骨和脖子直接最好有个衍生骨(我自己是这么称呼的其实算是肩膀),之后是脖子,头,正常比较简单的人物是这个顺序,之后双机空白处左键,取消建立;

之后选择衍生骨,在左侧做上臂,下臂,手,这样做是为了在之后绑定权重的时候,手臂可以以衍生骨为父级,好控制,同时也美观,右臂同理,不多赘述。

之后是腿骨,同样操作,点击最开始做的那个重心点(骨盆),之后向下拉大腿,小腿,脚。

备注:拉手臂和腿的时候要注意,手要成一个“倒单立人旁”的样子,腿要成“横折捺”的样子,如图我已经画了,因为要涉及到IK反动力绑定,做饭了就成动物了,很诡异。

在这里插入图片描述

网格变形

做好骨骼,选取Sprite切片,勾上网格,新建网格,新增网格,开始绘制

绘制很简单,记住常用规则,不会弯曲的骨头至少两个点(手臂,小臂),关节(手肘,手腕,腰部,膝盖,脚腕)三个点。其他的随意。

完成后移动网格点,与骨骼对齐。

使用建立 选项,修改布线,因为之前说了手肘,膝盖这种关节要各三个点,所以布线修改的时候,要以左侧中间点向对面发射三条线,两边的点连线即可,而手腕这种,直接三条线相连即可。

手肘与手腕网格布线参考如下,这样做可以让人物动起来看着更好看。最后点击编辑网格,完成编辑。

PS:衣物,裙子等,如果想要整齐的效果,最好点和点之间等距。

在这里插入图片描述

开始绑定

切片绑定:选择sprite,设定父级。

网格绑定:选择网格,工具栏Tools选择权重,绑定,选择要绑定的骨骼,选择自动权重。

手动修改权重:点击网格点,选择骨骼,上下移动鼠标更改。

PS:可以批量(按住ctrl)选择网格点,选择骨骼,更改权重。

设置IK

一般最多两根骨头,头发需要使用路径约束。

腿(适用于手)IK约束:

按住Ctrl选择两根腿骨,点击建立IK反向约束,之后选择位置(一个点)来确定IK所在位置,一般选择小腿骨的尖端,就是小腿骨和脚骨相连的地方(对三段式简易骨骼来说)。

头发路径约束:

要先确定路径附着的骨骼,选择新增 > 路径,之后绘制路径曲线。之后选中要约束的骨骼,点击路径约束,完成约束。

选中路径,右侧菜单下拉找到旋转后面的模式选项,选择连接,这样骨骼就不会出现反转之类的离谱表现方式了。

毛发变形约束:

选中要约束的骨骼,选择变形约束,之后可以选择旋转,缩放等一系列操作,比如毛发立起来,通过旋转可以实现。

在这里插入图片描述

以上,做完还会出现两个问题:

[if !supportLists]1. [endif]如果只设置好了IK,整体拉动人物的时候会发现IK限制了人物的移动,比如下蹲时候手还是在IK点位置不动,为了解决这个问题,就要选择IK点,之后选择 设定父级> 点击父级骨骼,比如双手IK点的父级一般选择腰部骨骼,这样问题就解决了。

[if !supportLists]2. [endif]如果腿部的IK点定在了脚后跟,那么hip(臀部/尾椎/下蹲)下压的时候,脚尖会同样下压,掉到平面以下,游戏里就会发生穿模,观感会很诡异,所以需要新增一个骨骼或端点来限制脚步,所以在脚上设置骨骼,之后将腿部IK的父级设定设定在新增的骨骼上,然而这样并不能解决问题,需要再次点击脚步骨骼,设置IK,将IK点设置在角质,之后选择父级为刚刚新建的限制骨骼。完成限制。(此问题也有其他解决办法,比如曲线,限制,这里不过多解释,以快速上手为目的。)

[if !supportLists]3. [endif]

制作动画

新建:

选择左上角SETUP按钮,可以进入ANIMATE动画模式,快捷键Ctrl+Tab。

在右侧选择动画,新增动画,输入名字Idle,教程以Idle(空闲)动画为例。

帧数:

制作动画前要确定帧数,在右上角选择窗口,有播放选项,可以更改帧数,默认是30FPS,也就是说30帧/s,不懂这里的去补补游戏与帧数的关系,百度下就行,不过多解释,如果动作很细腻,可以增加帧数。

制作动画:

在开始之前,可将图片选取关闭,关闭方法是点掉Options栏中第二行图片鼠标指针列下的点。

首先摆好第一个姿势,点击你变更过的点(可多选),可以看到Transform栏中的钥匙图标会编程黄色,点击黄色钥匙,就会添加动作帧,添加完初始关键帧之后,打开自动关键帧按钮,之后改变的关键帧就会自动添加。

注意:第一帧和这动作的最后一帧要相同,动画才可以循环,所以复制第一帧到最后一帧的位置就可以。

文档输出

一般来说只输出json文件是远远不够的,所以要点击打包,将图集一起导出,会有atlas,json,png三个文件。

至此教程结束,Spine绑定2D人物的基本流程就是如此,一般来说如果是项目会和同事确定好需求规则,按照规则输出和制作就好,基本操作很简单,想要做出好的人物动作还要多观察人的运动,这个更多的是经验经验问题了。

此外,如果需要导入Unity与UE4等引擎,到官网找到相应的API按照官网步骤一步一步做就可以搞定,这里不做赘述,希望各位学业有成!

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章           查看所有文章
加:2022-05-15 11:43:54  更:2022-05-15 11:44:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 11:02:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码