Inochi2D像素艺术家手册

0 点赞
Aseprite
转载

Inochi2D是目前制作像素艺术虚拟主播模型的最佳选择,本指南将从基础开始,为你介绍如何制作和绑定模型、相关技巧以及关于Inochi的整体实用信息。 简介:开源绑定 大家好!很高兴再次为你分享信息。这次的主题是Inochi2D! :3

Inochi2D,不要与Live2D混淆。 Inochi2D是一个开源项目,用于绑定虚拟主播模型或其他内容! 请注意,Live2D和Inochi2D不兼容,因此任何声称“适用于Live2D模型”的内容可能不适用于Inochi2D,因为它们的格式不同! Inochi2D是开源的,这意味着你可以贡献代码并查看代码。 如果你在本教程的任何部分遇到困难,可以寻求帮助。 对于像素艺术家来说,可能感兴趣的是,与Live2D不同,Inochi2D支持点过滤,这意味着你的像素艺术模型在任何分辨率下都能保持清晰。 Live2D(左)与Inochi2D(右)对比

这些图片均来自在Aseprite中放大了200%的模型。 我建议你为Live2D调整模型大小时放大3000%以上,为Inochi2D调整时放大600%以上(超过这个比例效果不大)。 对于这两种软件,一个重要的经验法则是始终使用偶数比例进行放大,不要使用300%、500%、700%这样的比例,因为这可能会干扰Live2D和Inochi2D对模型部件的定位! 你需要对Inochi2D有一些了解,建议在继续之前观看有关Inochi2D的教程。即使不能完全理解也没关系,本教程仍会涵盖基础知识! 补充说明:随着我对Inochi2D的学习,我会为这个教程添加更多内容。 第一部分:我的模型 在这里,我想展示我的模型结构、精灵动画等内容。

这是我Grat10_V2.3模型的基本结构概述。它整体上就像一个普通的Live2D模型结构,以及通常制作像素艺术虚拟主播模型的方式。这是虚拟主播模型的简单精灵动画结构。

你只需将动画的每一帧放入一个图层中。当然,你也可以在单独的文件中制作动画,然后将每一帧复制到模型文件里。最终结果会类似这样,只不过是在你选择的实时绑定软件中呈现!

◆ 导出模型 完成模型制作后,你需要将其导出以便在Inochi中进行绑定操作。为此,你需要Aseprite的【Export as PSD】脚本。 在继续操作前,请务必备份你的模型文件,以防万一! 接下来,我们首先需要调整模型大小。使用精灵尺寸菜单并锁定比例,可确保调整大小时模型不会被拉伸。

接下来你需要将PSD脚本安装到Aseprite中,如果你已经安装过了,就直接继续操作!根据你调整的尺寸大小,模型导出为PSD文件可能需要一段时间。如果你将尺寸调整到了3000%以上,我个人建议你去看个视频,因为这可能会花费较长时间。在此过程中,Aseprite也可能会出现冻结的情况。导出为PSD的脚本位于脚本下拉菜单中,具体路径是【文件/脚本/export as psd】。

点击后会弹出一个菜单,你可以在其中选择导出位置以及其他设置。

根据大小不同,此菜单会在PSD成功导出时弹出提示。

现在你有一个PSD文件,但它损坏了,这不是你的错!只是PSD脚本无法完美导出,所以Inochi可能无法识别该文件,但GIMP可以。使用GIMP你可以打开该文件并将其导出为PSD格式(损坏的PSD→未损坏的PSD)。如果你没有GIMP,可以下载它。

第二部分:像素基础到Inochi2D 在Inochi2D中为像素画绑定骨骼并不特别困难,难度大致和在Live2D中相当。 我在绑定过程中不使用任何变形方式,所以无法教你如何对物体进行变形,但我可以教你几乎所有其他内容! 首先,一个重要的原则是遵循网格——像素网格。因此,始终尽量让物体的边缘与网格对齐。 我建议在模型文件中新建一个图层。

这将让你能够100%确定自己正在瞄准。

在《Inochi Creator》中,你可以选择网格,然后控制网格内的不透明度。这意味着与在绘图软件中设置不透明度相比,你拥有更大的灵活性,因为对齐元素时可能需要网格比在绘图软件中设置的不透明度更清晰! ◆ 点过滤与什么是木偶 首先,我将从一个干净的、刚导出的模型PNG开始,这样你就能准确看到我所看到的内容。

这是像素模型PNG刚导入时的样子,但目前还不是100%清晰。 (我只展示像素艺术模型PNG,因为我想在之后的章节中介绍图层/节点结构。) 这是因为模型未启用点过滤,而该功能可在模型的Puppet节点中启用。 如果你使用过Godot,可能已经了解节点的工作方式!否则也不会太复杂。 我的PNG结构大致如下: Puppet { Grat-Grot-V6-2.png } 如果在节点选项卡中点击Puppet节点,检查器中应该会显示相关内容。 在这里可以保存模型的一些小数据,例如: - 模型名称 - 制作模型的艺术家 - 绑定模型的绑定师 - 联系方式字段等一封电子邮件 许可链接 您的模型拥有何种版权 您的模型来源

我们感兴趣的是渲染设置,它位于底部(在Inochi creator v0.8.3中)。勾选它将使你的模型使用点过滤进行渲染。点过滤的对比效果,根据模型大小的不同,差异可能会更大。我使用的模型图片相当大!【左:无点过滤,右:有点过滤】

◆ 节点树 节点结构对新手来说可能有点复杂,所以我想在本章中把它分解成更小的部分来讲解。 再次,我想回顾一下上一章的木偶示意图。 木偶 { }

木偶包含模型的所有内容以及相关数据。 导入模型时,所有绘图图层都会成为节点,为简单起见,我们称之为【艺术节点】。 Inochi Creator 会移除所有文件夹结构,因此木偶的结构应如下所示: puppet { hair face body etc } 为恢复秩序,我们需要将内容放入节点或【艺术节点】中。这听起来可能有点令人困惑,下面举例说明。 假设你有一缕头发,而这缕头发上有一个发饰,其结构如下: puppet { hair { hair strand { hair accessories } } }

那么,我们为什么要这么做呢?因为每个层级下的内容都会相互影响。简单来说,如果我们现在移动头发,发丝也会随之移动,发丝下的所有内容也会一起移动。 不过,如果没有可以放置内容的父层级怎么办?比如有多个瞳孔,但没有一个主瞳孔作为它们的父层级。这时,你可以在节点选项卡中右键点击,创建一个节点。节点本身不会执行任何操作,除非你对其进行设置,所以它实际上就像一个可以放置内容的文件夹。 我们可以这样设置: 模型 { 瞳孔(节点){ 普通瞳孔 愤怒瞳孔 瞳孔高光 } }

你可以通过设置这种结构来训练所有这些内容,完成后记得保存! 【对齐提示】 对齐和移动对象对于模型来说非常重要,这对于创建滚动3D效果(将在后续章节中介绍)也同样重要。 好的,我们先从移动对象开始。你可能已经注意到,无法使用键盘的方向键来移动节点,所以一种方法是使用移动栏。

它会出现在任意节点上,你可以用鼠标移动它,不过这样可能很难精确操作。但在【检查器】中有一个更精确的选项,我建议使用这个选项。

以下是输入对应的操作说明: 第一个用于沿X轴(左右方向)移动节点。 第二个用于沿Y轴(上下方向)移动节点。 最后一个是Z轴。 使用鼠标并滚动输入框可实时移动节点。 你也可以双击输入框并输入自定义数值。 现在,最重要的是确保动画与像素精确对齐,这就是我们设有网格层的原因。

网格将对对齐有很大帮助。所以在移动物品到位时,你可以根据需要使用它。 ◆ 滚动3D效果 引用自@poribaketu137:我收到了很多询问,所以这里有个小技巧! 这是一个极端的例子,但如果你在使用像素艺术搭配Live2D,最好少用变形,多用多重滚动来营造3D效果,这样像素就不会被挤压! 正如poribaketu所说,滚动3D效果对于像素模型来说很重要,能避免像素被挤压。 [X轴移动时3D滚动效果的示例]

我们可以通过分类来简化操作。 前发会随着面部朝向你注视的方向移动。 中发用于连接后发和前发。 后发会朝着与你注视方向相反的方向移动。 你可以使用任意数量的头发图层来创建滚动3D效果。 这是Grat10_V2.3的头发示意图,它没有中发。

绘制模型时,你也应该能在绘图程序中创建3D滚动效果,这是测试模型能否以这种方式进行绑定的好方法。 我会让前发随视线移动两个像素,同时让后发向后移动3个像素。对齐时使用网格非常重要! 确保效果看起来不错,这做起来也很有趣! (有些绑定师还会让模型随着音乐点头)

◆ 最近邻与线性 在制作精灵动画前,有个重要的点需要了解,那就是Inochi Creator中的插值模式。 目前(v0.8.3版本)有三种: 最近邻 线性 三次方 我们将重点介绍前两种。 线性是默认模式,它会将两个轴平滑混合,在精灵动画中,这会使精灵缓慢变得透明。 最近邻会跳转到最近的轴,因此在精灵动画中,它会立即将显示的精灵切换为隐藏的精灵。 线性非常适合混合那些保持不变、仅改变颜色的元素。然后它会在完全变色前缓慢混合这两种颜色。 【最近邻采样】非常适合切换精灵动画的帧或图层,你可以在Aseprite等绘图软件中预先制作动画,并将帧放入模型文件中。 线性采样(左)与最近邻采样(右)的对比图

一种模式会将颜色平滑混合,另一种则直接跳转到新帧。这虽然简单但非常实用!当你激活参数时,右键点击节点即可更改该节点的插值模式。

◆ Inochi2D中的精灵动画 是时候制作一些精灵动画了! 注意:在撰写本文时,Inochi还没有简单的参数触发方式,因此你无法切换服装、头盔或其他特殊动画。

首先,一个 spite动画在你的绘图程序中看起来大概是这样的。我们可以在程序中预先制作动画,并将每一帧作为图层添加到模型中。

我们要做的是切换每个帧图层的可见性,这样就能在绑定软件中创建精灵动画了!

这是一个6帧动画的轴点,用于太空头盔开启动画。 判断已为多少帧预留空间的一个好方法是数轴点之间的空格,这里轴点之间同样有6个空格。 要创建像上面那样明快的精灵动画,我们需要将插值模式设置为最近邻,并且需要让帧的不透明度降至零。

选择艺术节点时,不透明度位于检查器底部。尝试使用线性插值可能也是个好主意,以创建一些很酷的过渡效果!

精灵嘴巴

精灵嘴巴!你也可以通过精灵动画实现对话效果。我们用于嘴巴动画的是嘴巴形态,你可以像制作其他任何形式的参数一样来制作它。

默认的嘴型有很多线条,这对典型的嘴部绑定很有用。但我使用X轴3个轴点和Y轴5个轴点,因为我只有少量的嘴部精灵可供使用。这意味着你需要移除默认嘴型中的一些轴点。

(Y) 这是它的样子,最上面一行是我嘴巴张开的所有精灵图,最下面是我嘴巴【最】闭合的精灵图。 (X) -1 值代表悲伤表情,0 是中性表情,正值(1及以上)是开心表情。 第三部分:导出并使用你的模型!

导出模型非常简单,只需依次点击【文件】->【导出】->【Inochi2D 木偶】。你还可以导出图像,支持JPEG、PNG或TGA格式,也能导出视频(MP4格式)。若要导出图像或视频,你需要一个相机节点。

导出模型会生成一个Inp文件,它与Inochi Creator保存的Inx保存文件不同。大多数人让模型动起来的方法是使用Inochi Session,这也是我目前所知的唯一方法。 Inochi Session和OpenSeaFace Inochi2D还需要一个程序来将模型动画化为面部追踪数据,这个程序就是Inochi Session,它支持多种面部追踪软件。其中一个选择是开源面部追踪器OpenSeaFace,我正在使用它,并且会向你展示如何进行设置。

Inochi Session刚启动时的界面就是这样。 要开始使用,我们需要将模型导入Inochi Session,方法是将Inochi2D模型文件拖放到Inochi Session窗口中并释放。 要让模型被追踪,你需要一个外部追踪器(截至2023年9月21日),因为Inochi Session没有内置追踪器。 要设置追踪软件以便Inochi Session能够识别,建议查看该特定面部追踪软件的文档。 对于OpenSeaFace,我们需要输入特定的IP和端口。要设置“虚拟空间”,请前往【视图】->【虚拟空间】。在菜单中,你需要在输入框中添加名称,然后按+键。你可以选择新建的虚拟空间,并在其中选择一个追踪器。如果你使用其他设备,可以选择你想要的追踪器,但在本示例中,我们将选择OpenSeaFace。以下是你的虚拟空间应有的大致样子:osf_bind_port应设为11573,osf_bind_ip应设为127.0.0.1,这些是OpenSeaFace的默认设置。

要让OpenSeaFace运行,建议按照自述文件中的教程操作,其中也涵盖了不同操作系统的相关内容。OpenSeaFace运行时的样子如下↓

其他:额外资源 本章包含我收集的与Live2D像素艺术或Inochi2D文档相关的其他优质链接。 Inochi文档 非官方文档 其他:如何支持Inochi2D Inochi2D作为自由及开源软件(FOSS),资金来源有限。因此,支持Inochi2D的一个好方法是通过以下途径进行捐赠: Inochi2D主要开发者的Patreon 通过GitHub赞助Inochi2D项目 报告漏洞也是提供帮助的好方式,你可以在以下地方报告漏洞: Inochi Creator漏洞报告提交处 Inochi Session漏洞报告提交处 如果你发现的漏洞不属于上述任何类别,请在Inochi2D相关社区寻求帮助。支持该项目的另一种方式是为Inochi2D的代码仓库贡献代码。讨论并使用Inochi2D也有助于该软件在虚拟主播领域站稳脚跟。以下是Inochi2D的社交媒体账号:Inochi2D官方网站、Twitter、Mastodon、Itch、Github。其他:Inochi2D的许可说明:请注意,此处讨论的是Inochi2D软件,而非模型。你的模型归你所有,你可以为其设置任何许可。引用自Luna the fox girl:Inochi2D项目不对使用该软件制作的模型主张任何形式的所有权或隐含许可。Inochi2D 使用 BSD 2 条款许可证。请注意:未经 Inochi2D 开发者许可,您不得声称您制作的内容获得 Inochi2D 的认可。关于 Inochi2D 的品牌和许可的更多信息,请参考官方文件。我不擅长这类事务,因此建议您查阅官方说明。