皮肤

大家好,我是笨笨,笨笨的笨,笨笨的笨,谢谢!
欢迎加入专业Spine技术交流群 Spine2D骨骼动画 7708065
转载请保留原始链接:https://blog.csdn.net/jx520/article/details/83057847

皮肤可以让骨架的所有骨骼和动画保持不变,然而替换不同的附件,从而实现重用。这大大减少了对于具有相似骨骼和动画的人物的工作量。

皮肤的关键是 皮肤占位符。皮肤占位符在层级树的插槽之下,就像任何其他附件一样。但它仅仅是实际将使用的附件的占位符,它来自于当前活动的皮肤。皮肤只是皮肤占位符的附件集合。当激活不同的皮肤时,它将会改变整个骨架中皮肤占位符所用的附件。

设置

设置皮肤包括了创建皮肤和皮肤占位符,然后用该皮肤的附件填充皮肤占位符。

皮肤

通过选择层级树中的 皮肤 节点并单击 新建皮肤 以创建皮肤。

皮肤占位符

通过选择层级树中的骨骼或插槽并单击 新建… 皮肤占位符 以创建皮肤占位符。

皮肤占位符可保持每个皮肤的附件,因此它的名称不需要表明它用于哪个皮肤。皮肤占位符名称只需表明它表示哪个附件。例如,如果有“红色”和“蓝色”皮肤,那么“头”就是很好的皮肤占位符名称,而不是“红色头”或“蓝色头”。

附件

要想用皮肤的附件填充皮肤占位符,首先要确保所需皮肤为活动状态。层级树中的可见性圆点表明哪个皮肤为活动状态。此处,“红色”皮肤为活动状态:

皮肤一旦激活后,就可以将附件置于皮肤下占位符以下,以定义活动皮肤的附件。如果有不同的皮肤激活,那么这些附件将消失,将会出现为新激活皮肤中定义的附件。

捷径

如果骨架的所有附件未使用皮肤占位符创建,那么创建皮肤占位符并将现有附件移到它们上面会非常费事。为了更高效地完成该任务,首先使用层级树顶部的的过滤按钮隐藏骨骼和插槽,从而更容易选择多个附件。接下来,创建一个皮肤或确保皮肤处于活动状态,然后选择附件,再选择 新建…``皮肤占位符。这将使用相同的名称创建每个附件的皮肤占位符,并且附件被移到活动皮肤的皮肤占位符之下。

如果不再需要皮肤占位符,那么将附件移动到插槽并并删除皮肤占位符将会非常费事。为了更高效地完成该任务,首先选择皮肤占位符,然后单击层级树底部属性中的“删除”。在“删除”对话框中,选中 '保持当前附件`。这可以将当前皮肤的附件移动到插槽,再删除皮肤占位符。

重用动画

皮肤是对一起的附件进行分组的好方法。例如,男性和女性精灵可能使用不同的图像。您可以创建两个皮肤并在运行时选择使用哪个皮肤。

这是非常好的皮肤用法,而且 Spine 自带了这样实现的“goblins”示例项目,但只对附件分组不是什么难题。例如,运行时代码知道骨架上显示哪些配件,从而使它看起来像男性或女性精灵。

皮肤的真正强大之处来自于:当动画显示附件时,其实是对皮肤占位符创建关键帧,而不是具体的附件。显示的实际附件是当前活动皮肤的皮肤占位符的附件。如果不是这样,那么显示附件的动画就不能重用。
例如,精灵骨架需要有一个动画,通过在眼睛上显示 eyesClosed-male 或 eyesClosed-female 附件,使它眨眼睛。如果没有皮肤,就需要两个动画。使用皮肤后,只需要一个显示 eyesClosed 皮肤占位符的动画。

合并皮肤

有些项目需要复杂的附件配置。例如头像系统,需要混合和匹配许多不同的脸、身体和衣服。为了解决这个问题,按正常方式创建皮肤占位符,然后为每一个“项目”创建一个皮肤,对附件分组。 接下来,运行时代码通过编程创建皮肤并将每个“项目皮肤”的附件填充进去,以定义所需的附件配置。

例如,可以有定义了 torso、sleeveLeft 和 sleeveRight 皮肤占位符附件的 red shirt 皮肤。要配置带有红色衬衫项目的骨架,运行时代码将以编程方式创建一个皮肤并用来自 red shirt 皮肤(以及其他所需的项目皮肤)的所有附件填充它。

Spine 目前还不能实现编辑器中多个皮肤同时处于活跃状态。该功能已规划,但到目前为止,只能在运行时进行皮肤合并。

Spine 皮肤Skins相关推荐

  1. Spine皮肤系统使用

    Spine皮肤系统使用 一.Spine创建带有相同网格信息.骨骼信息.骨骼权重信息的皮肤网格 二.创建皮肤 三.创建皮肤占位符 一.Spine创建带有相同网格信息.骨骼信息.骨骼权重信息的皮肤网格 选 ...

  2. 【spine】spine 简介

    写在前面 某天,在一阵头脑发热之后,买了 spine.放了很久,最近,才想起来,应该好好利用下.于是,开始了新的折腾.好吧,再看了官网的价格之后,立马心情大好.好了,不说了,又挖了个新的大坑. 什么是 ...

  3. Delphi 皮肤控件AlphaControls的使用

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Alph ...

  4. Cocos Creator 的 web/原生多平台 Spine 换装方案解析,附 Demo 源码

    引言:Spine 换装是游戏开发中的一种常见实现方案,本次,羽毛先生将介绍自己对整体换装和局部换装实现方案的探索与选择. 运行环境 Cocos Creator 3.5.2 web/native 需求 ...

  5. PHP游戏人物解锁,雨中冒险2全人物解锁代码 教你怎么解锁全人物皮肤

    雨中冒险2解锁人物代码皮肤,相信大家都清楚,这款PC版的雨中冒险2是可以通过一些修改器来解锁皮肤的,但需要我们一些游戏外的操作才能够解锁,许多玩家都不怎么清楚操作,下面来给大家分享一下吧 存档位置 如 ...

  6. 如何添加RichFaces 3.3.x到Maven项目

    首先参考[url=http://sylven.iteye.com/blog/556022]这篇文章[/url]配置Maven去使用Jboss仓库 如果你正在使用旧版本(3.2.x, 3.1.x),你需 ...

  7. R语言包翻译——翻译

    Shiny-cheatsheet                                                                                     ...

  8. COC建筑拖动的实现

    最近在玩COC,多体验一下手游的体验,因为自己毕竟一直是做页游的,有些观念需要转变一下. 好像偏了,玩了几次之后突然想起COC那个地图拖动的自己之前实现过,那是2010年左右的时候,模拟经营类页游大行 ...

  9. 软件绿化之实践一--绿化福昕PDF阅读器

    福昕PDF阅读器作为国内一款免费免费的PDF阅读器,启动速度快,而且特别小,不像Adobe Reader启动特别慢,而且安装体积特别大,安装了很多不需要的功能. 对于我来说,我只需要打开PDF文件,简 ...

最新文章

  1. 我所了解的Linux运维技术
  2. 用python赚零花钱_用Python拓展副业的几种方式
  3. 家用计算机机箱怎么选,一般家用电脑主机买什么配置的比较好
  4. CentOS7.9安装及配置
  5. 电商购物APP UI 模板素材,充满时尚感的设计
  6. c语言中什么函数可以作为虚函数,C++语言中的“虚函数”就像C语言中的指针,必须要弄懂的...
  7. qt 写的tcp客户端程序实现简单的连接接受和发送消息
  8. 我的世界服务器物品箱子,我的世界:使用箱子储存物品居多,难不成他们很“鸡肋”?...
  9. 教程:批量自动删除微博
  10. Demand Side Platform (需求方平台)名词一览
  11. Microsoft Teams免费版本初体验
  12. 2021字节跳动校招秋招算法面试真题解题报告--leetcode148 排序链表,内含7种语言答案
  13. 微软 Office Online 在线查看word,pdf, xls,ppt 文档
  14. 4k显示器用html好还是dp,4k显示器用hdmi还是dp
  15. 服务器2008临时文件夹删除,Windows2008修改文件夹所有者
  16. ShardingSphere-ShardingSphere的基本介绍
  17. springboot复制bean_【springboot 无法注入Bean_springboot】 | IT修真院·坑乎...
  18. 机房重构前奏——三层转七层
  19. 最新kali之netsniff-ng
  20. SunFMEA培训-PFMEA中常见的预防措施

热门文章

  1. 仿照QQ的左右滑动切换界面的效果
  2. 【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介
  3. 姬魔恋战纪送衣服显示服务器繁忙,姬魔恋战纪新手有哪些问题-姬魔恋战纪萌新常见问题汇总_手心游戏...
  4. python爬虫之selenium的使用
  5. python wait notify_java与python多线程wait,notify操作比较
  6. 华为手机备份工具备份方法与新版本不再支持备份到手机内部存储解决办法
  7. 在线pdf转换成word转换器怎么样
  8. S60v5 编程环境的搭建(2)
  9. 360校园招聘笔试题
  10. 求美国EO-1卫星的ALI载荷和Hyperion载荷的光谱响应函数