您的足迹: spriting

贴图

贴图

贴图是 Mindustry 不可缺少的一环,没了它每一个东西就都显示成 “oh no”了。

Mindustry的贴图风格很简单、但同时也充满限制,从其他地方胡乱搬来贴图会很违和。

你可以 在此查看全部的原版贴图

切记,未经允许盗用他人贴图极其破坏圈子氛围,当然灵感来源和引用其他模组的贴图是可以的

“开源的东西,我想干嘛就干嘛”这种借口不可认可和接受,小心吃黑名单

画图软件

强烈建议用支持透明度和导出PNG格式的画图软件。推荐下面这些:

桌面端

    • 初学可能有点难,但是习惯了极其顺手;
    • 付费 软件,但是如果 自行编译(必须自用)就是免费的了;
    • 有许多对于 Mindustry 贴图制作有益的特性
      • 镜像
      • 调色板
      • 动画
      • 层叠 (也能导出单个图层)
    • Aseprite 的拷贝,相对于原版来说不是最新的,能力也不足,你完全不需要用它
    • 简单的像素艺术软件,不如 Aseprite 和 LibreSprite 那么强大,但已足矣。既有在线版也有可下载的离线版,二者完全相同。
    • 不能导出单个图层
    • 在线贴图制作工具,比 Piskel 有更多的功能,但是没有镜像。如果你熟悉像素艺术,更推荐使用本软件。
    • 对于 Mindustry 的贴图制作绰绰有余
    • 非常基础的画图软件,不要和 3D 画图搞混, Paint.NER很好用。但是不如上面这些方;
    • Paint.NET缺乏 Mindustry贴图制作的基本特性。但你可以手动下载,并用插件弥补;
      • 尽管如此,还是不推荐为了方便用这个,如果你能下载,更建议下个 Piskel 或者 LibreSprite,这才是生产力级像素画图软件。

移动端

    • 老旧但可靠,被Anuke开发然后扔了,没有广告,虽然有一点点老,但是对于移动端用户还是很可靠的,拥有镜像功能。
    • 偶尔会出现大图被猫反杀的情况(指过大的图片偶尔会被破坏)。
    • 最有名的像素制图软件
    • 和 PC 版没什么不同
    • 有广告
    • 很少用做贴图制作,用之前需要设置一下。
    • 支持许多工具,比如八进制镜像、迷雾和倾斜,以及图标选择和图层
    • 能轻松地画复合贴图,但对于简单贴图有些过头了
    • 也有广告

尺寸

方块

最小的方块是 32px × 32px ,这是一个 1×1 的方块。增大方块尺寸就得增加贴图尺寸,边长每增加一,贴图变长就需要增加 32px,所以 2×2 的方块就是 64 × 64 ,凡是方块都得遵守这个规定。

  • 1×1 : 32px × 32px
  • 2×2 : 64px × 64px
  • 3×3 : 96px × 96px
  • 4×4 : 128px × 128px
  • 5×5 : 160px × 160px

但是,这些并没有限制你,贴图尺寸不对,游戏也会照常加载他们。然后,你就能看到一个特立独行的贴图,或者直接演变成灾难

<span id="物品液体和状态效果"></span>

物品、液体和状态效果

对于这些内容,最小尺寸是32px,可以再大一些,游戏会调整显示成 32px,但是并不会扩大,所以 32px 是最小值。

单位

单位贴图比其他的更加宽松,但不要试图降低贴图尺寸到 48px 以下。而且要记住,单位越大,hitSize就得调得越大。

贴图存储

贴图直接扔在 sprites/ 及其子目录下即可,内容解析器会自动递归浏览。

游戏里的图像为了高效率的调用会打包成 “atlas”。在 sprites/ 目录下的第一个子目录,比如 sprites/blocks ,决定了在放置贴图的 atlas 中的页。把方块材质扔进单位页可能会导致延迟,你最好类似原版那样组织贴图文件。

游戏会根据名称来寻找材质,比如 content/blocks/test-turret.json 的名称是 test-turretsprites/test-turret.png也是如此,所以这个贴图就由这个方块使用。

简单来说,游戏会寻找三种材质:方块、单位和物品。因此,贴图应该放在他自己的子目录下: - 方块贴图放在 sprites/blocks - 单位贴图放在 sprites/units - 物品贴图放在 sprites/items

游戏有时会修改一些贴图。炮塔和单位会有3-4px 的灰边,所以再制作贴图是需要预留空白。默认外圈半径和颜色能通过修改 BlockUnitType里的 outlineRadius / outlineColor实现自定义。

覆盖

你可以覆盖原有贴图,把贴图文件放在 sprites-override/ 就可以了。

后缀

游戏会为一个方块寻找数个材质。

对于炮塔,由于他的他的类型,游戏会寻找名称文件<name>-heat,也就是会寻找 test-turret-heat.png 。(这个就是发射一次后重载时的贴图)

对于方块和工厂来说,还有 <name>-top<name>-liquid,这些会放置在他的每一个层上。

阅读源码就可以得知每个方块各自加载的贴图,他们通常在各自的类中的load()方法里。(core.atlas.find的参数就是调用的贴图)

调色板

正如其他游戏一样, Mindustry 有自己的调色板。 强烈推荐初学者坚持从自己的贴图里吸取颜色,虽然他会看起来很违和甚至超凡脱俗,你也会让Discord 的 #spriting 版很糟心。

方块调色板:

Pal-mindustry.png Pal-mindustry.png

自然墙与地板调色板:

Pal-mindustry-evn.png Pal-mindustry-evn.png

如果你用了一个正确的画图软件,把这些图片导入为调色板即可。

画风与阴影

Mindustry 有简单但充满限制的画风,生搬硬套只会显得违和。由于大环境影响,处于善心,一些规则和指南都发出来帮助模组制作者创作出符合游戏的贴图。

Mindustry是 2D 游戏,所以我们需要添加深度比如凸起和凹陷,我们管这个叫做阴影,尽管真实材质仍然是 2D 的,尽可能的让他在游戏里看起来像 3D 。

根据光的入射位置,凸起需要涂成亮色平坦处需要涂成中性色凹陷需要涂成暗色,先 3D 画图,再 2D 投影,是 Mindustry 一种普遍的贴图画法。

记住,指南只是个初级玩意,你可以随便变通,但请先理解最基本的东西,并且要先做出不违和的成果。

<span id="注意以下都没有考虑方块的基底由于其材质固定所以不做考虑"></span>

(注意,以下都没有考虑方块的基底,由于其材质固定,所以不做考虑)

方块阴影

Alloy-smelter.png Alloy-smelter.png

这里使用合金冶炼厂作为示例。

对于方块,光从右上角入射,所以,越靠近光源就需要越亮的颜色,并且使用中性色的斜线分割亮部和暗部。

通常来说,工厂有三类颜色:

  • 基础颜色,有三个
    • B0BAC0 | 亮色
    • 989AA4 | 中性色
    • 6E7080 | 暗色
  • 印花颜色,也有三种:
    • FEB380 | 亮色
    • EA8878 | 中性色
    • BC5452 | 暗色
  • 底部颜色
    • 4a4b53

基础颜色代表了方块的主要颜色,这种颜色通常限制为亮灰和暗灰,在所有的方块里看起来都是相同的。

印花颜色代表方块的作用用途,用于区分方块。选择印花颜色需要根据方块的用途,例如:

塑钢压缩机

塑钢压缩机 塑钢压缩机

塑钢压缩机的印花颜色是绿色,绿色的印花和塑钢的颜色相同,因此你可以把这个方块和塑钢产生联想。

底部颜色代表了方块里部的颜色,也就是没有光的地方,所以要用暗色。这也能代表方块的开口,例如合金冶炼厂。

请注意,不同的方块根据其类型需要不同数量的材质。例如,墙只要一张,就是它自己,而像单位重构工厂这种方块需要四张。请参考 后缀一节

模组示例:

  • Flin#8261的模组 DiverseTech中的单位掩体,
    • [File: Flintyx-unit-bunker.png]

炮塔阴影

对于炮塔来说,光从右向左

浪涌 浪涌

这里使用浪涌作为示例。

炮塔有两到三类颜色,每种两个:

  • 基础颜色
    • 7B7B7B | 亮色
    • 4D4E58 | 暗色
  • 印花颜色
    • FEB380 | 亮色
    • EA8878 | 暗色
  • [可选项] 炮管颜色
    • 2C2D38

基础颜色,即身体颜色,是炮塔的主要颜色,其范围包括铜棕、白色或者暗灰。

  • 铜棕
    • Duo.png Scorch.png Hail.png -通常代表低级炮塔,比如双管炮火焰炮,、冰雹炮
      • C9A58F
      • 8F665B
  • 白色
    • 电弧 蓝瑟 牵引光束 裂解光束 -通常代表用电射击的炮塔,例如电弧蓝瑟牵引光束裂解光束
      • F4F4F4
      • C1C3D4
  • 深灰
    • 蜂群 气旋 熔毁 -大多数情况下,深灰代表中高级炮塔。
      • 7B7B7B
      • 4D4E58

炮塔的印花颜色和正规方块的相似,代表着用途或设计原型

炮管颜色是一个可选项,是炮塔炮管的颜色,通常适用于大炮或者导弹发射器

蜂群 浪涌

  • 2C2D38

非常规方法

  • 炮塔中性色
    • 还有一个不走常规路的方法,就是把中性色添加到炮塔里,使其看起来像平面,而不是非黑即白。
    • 有一个Unlimited Armament Works模组的”Skyhammer”作为例子
      • fig:Unlimited-Armament-Works-skyhammer.png

资源阴影

资源的阴影简单的一批,光可以从上面来,可以从上到下穿过,用右到左也可以。

为了不让其看起来像 2D 平面,最好选择三二种颜色。

示例:

Item-copper.png Item-plastanium.png Item-graphite.png Item-coal.png Item-surge-alloy.png Item-scrap.png Item-pyratite.png Liquid-cryofluid.png

单位阴影

现在我们到达了阴影最难的部分。

单位越大,阴影就越错综复杂。单位阴影中,光可能是自上而下自前到后。亮色和暗色的强度在单位重要的部分有所变化。

上文提到,亮色代表着凸起,中性色代表着平面,暗色代表着凹陷

单位基础颜色

Spriting-unit-shading.png Spriting-unit-shading.png

请注意观察上面的图片,这使用日蚀作为示例。随着贴图靠近尾部,亮色就变得越少而中性色和暗色也来越多。

被光照射的部分颜色更亮,而没被照射的部分颜色更暗,平面使用中性色。

Spriting-unit-shading-illustration.png Spriting-unit-shading-illustration.png

上面的图像粗略地模拟了单位 3D的样子。

  • 基础颜色,有三个
    • B0BAC0 | 亮色
    • 989AA4 | 中性色
    • 6E7080 | 暗色

单位印花颜色

单位的印花只有两种颜色——亮色和暗色,这代表了单位在游戏中的类别。

-黄色是核心单位,即核心产出的单位。

  • Gamma.png Beta.png
    • FFD37F | 亮色
    • D4816B | 暗色
  • 橙色代表袭击单位,即用于攻击对手
    • Fortress.png Horizon.png
      • FFA665 | 亮色
      • D06B53 | 暗色

-绿色代表辅助单位,能够建造、治疗和保护你的单位

  • Poly.png Retusa.png
    • 84F491 | 亮色
    • 62AE7F | 暗色
  • 紫色代表专业单位,这些单位独一无二,不能放置在以上类别。(不要把目光局限于爬爬)
    • Crawler.png Arkyid.png
      • BF92F9 | 亮色
      • 665C9F | 暗色

你也可以随意选取印花颜色,只要你整个模组保证风格统一即可

<span id="单位队伍能源颜色"></span>

单位队伍/能源颜色

单位能源用于区分不同队伍,他是材质顶层的单独材质

Spriting-unit-cell.png Spriting-unit-cell.png

能源自动染上所在队伍的颜色。

Fortress.png Fortress-cell.png

上面是堡垒和他的能源,能源贴图应该只有以下两种颜色

  • FFFFFF | 亮色
  • DCC6C6 | 暗色

这就是为什么推荐使用能导出单个图层的画图软件,因为你可以画一整个单位再分割涂层,只需要操作一个文件。

单位武器

单位武器和炮塔和单位的阴影规则相同。可以是自上而下或从右到左。

Zenith-missiles.png Large-artillery.png Large-laser-mount.png

武器旋转中心点是贴图中心,如果你想挪动旋转中心,挪动贴图位置即可。

单位贴图制作步骤

Spriting-unit-stepbystep.png

单位贴图制作共分五步

1.瞎画一些基本的图形,然后拿暗色重重的涂上去,画出来,慢慢地在每个部分之间添加线条,形成不太清晰的基本图形,然后试着去变成清晰的不规则或曲线图形,确保他看起来很好——大多数情况下不瞎画画不出来好单位,确保进行下一步之前你调整得足够满意。

2.提炼出图形,并且在线条递增45度处变形,你可能得扭一扭,不要太像之前的涂鸦。

<ol start="3">
<li>
加花,印花不容易画好,我展示了三个例子展示他的工作方式——你必须自己试试,然后才能看哪一种适合你。现在就添加印花,是因为稍后要绕着印花加图案,先画好对后面的步骤有益。
</li>
</ol>

4.粗糙的标记出来亮部和暗部。在亮部画在上部之后,你就应该马上标记出来你想要照亮哪一个图形和光的明暗,以避免之后回来再想。少覆盖一些,暗部最好只占30%到40%。另外,注意预留出印花旁边的空间以增加层次,使其看起来更令人满意。

5.最错综复杂的部分——增加细节。你没有多少小聪明可以耍,你必须逐渐擅长这件事。然而,我用的方法是:当不确定加什么的时候,就添加能源。他们看起来像印花,你也可以在印花周围添加图形,细节不要太多,使用任何方便的拐角,在大块空间上添加图形。

作者 Zhenьkotron#9493, 校对者 Geschiedenis#4783

环境贴图

环境贴图和其他风格不太一致。增加45°不再适用

环境贴图占了游戏内容大多数,但不是重点。最好的画法就是大同小异。

地板

地板只有两种颜色,变化的数量由你决定。

  • 原版示例:
    • Basalt1.png Basalt2.png Basalt3.png
    • Dirt1.png Dirt2.png Dirt3.png
  • 模组示例 :
    • _Endless-Rusting-Demo-_classem-stolnene1.png _Endless-Rusting-Demo-classem-stolnene2.png _Endless-Rusting-Demo-classem-stolnene3.png
    • _Endless-Rusting-Demo-ebrin-drylon1.png _Endless-Rusting-Demo-ebrin-drylon2.png _Endless-Rusting-Demo/ebrin-drylon3.png _Endless-Rusting-Demo-ebrin-drylon4.png _Endless-Rusting-Demo-ebrin-drylon5.png _Endless-Rusting-Demo-ebrin-drylon6.png
贴图由 Sh1penfire#0868 的 Endless-Rusting

环境静态墙

不要和建筑墙搞混,墙有三种颜色,正如地板,变体的数量由你决定。

墙也有2×2的版本,这是可选的。

  • 原版示例:
    • Dacite-wall1.png Dacite-wall2.png Dacite-wall-large.png
  • 模组示例:
    • _Endless-Rusting-Demo-classem-wallen1.png _Endless-Rusting-Demo-classem-wallen2.png
贴图来自 Sh1penfire#0868 的 Endless-Rusting

矿物

矿物显示在地板之上,它们是玩家获取资源和放置钻头的地方。

  • 原版示例:
    • Thorium1.png Thorium2.png Thorium3.png
    • Scrap1.png Scrap2.png Scrap3.png
  • Modded Examples :
    • _Endless-Rusting-Demo-melonaleum1.png _Endless-Rusting-Demo-melonaleum2.png
    • _Endless-Rusting-Demo-taconite1.png _Endless-Rusting-Demo-taconite2.png _Endless-Rusting-Demo-taconite3.png
贴图来自 Sh1penfire 的 Endless-Rusting

石头

石头是玩家可以破坏,随机出现在地板上的环境方块。他有自己的文件,不在环境贴图子文件夹。

  • 例子:
    • Boulder1.png Boulder2.png

<ul>
<li>
<ul>
<li>
Sand-boulder1.png Sand-boulder2.png
</li>
</ul>
</li>
</ul>

Spriting-props-white-tree-screenshot.png Spriting-props-white-tree-screenshot.png

树绘制于大多数方块之上,单位可以穿过,它们只是表现为地图上的叶子。

记住树有影子,你也需要自己画。

  • 例子:
    • fig:Spriting-props-white-tree.png
      • fig:White-tree-shadow.png

modding/spriting.txt · 最后更改: 2022/06/04 16:48 (外部编辑)
CC Attribution-Share Alike 4.0 International