您想找什么?
Games

快乐丰收演示:了解最新的 2D 技术

SHANTI ZACHARIAH / UNITY TECHNOLOGIESSenior content marketing manager
Jul 5, 2023|13 Min
快乐丰收演示:了解最新的 2D 技术
为方便起见,此网页已进行机器翻译。我们无法保证翻译内容的准确性或可靠性。如果您对翻译内容的准确性有疑问,请参阅此网页的官方英文版本。

当今的 2D 游戏的 创新性是无限的。由于有如此多的创造可能性以及 Unity 2D 渲染和工具的演变,我们将让您了解在Unity中制作 2D 游戏的最佳实践。

Happy Harvest 现已在 Unity Asset Store 和 Unity Samples上架,它向开发人员展示了如何利用 Unity 2022 LTS中的通用渲染管线 (URP) 来创建 2D 灯光、阴影和特效的最新功能。它融合了任何 2D 创作者都可以使用的最佳实践,包括不将阴影烘焙到精灵中、保持精灵平坦、将阴影和体积信息移动到辅助纹理、高级 Tilemap 功能等等。

从上往下看勤劳的农民
《丰收快乐》中的主角和他的猪
《丰收快乐》中的主角和他的猪

《Happy Harvest》 是一款自上而下的演示游戏,具有欢快的卡通艺术。这个样本将带你了解勤劳农民的日常生活。他从农舍走出,沿着灯笼照亮的鹅卵石小路前行。他照料小麦、胡萝卜和玉米作物,采摘苹果,并喂养猪和牛。他的农场里遍布池塘,后面有一座谷仓,周围环绕着翠绿的松树。

自上而下的视角面临着诸多挑战,例如如何投射角色、管理重叠的物体以及以富有想象力的方式创建阴影。这些问题通过使用Unity 2022 LTS 中包含的阴影、精灵库和 Tilemap 2D 功能来处理。

所有这些资产都可以免费用于您的个人或商业项目,并且您也可以根据自己的想法修改演示。立即下载 并开始探索这个田园风光及其众多细节。

探索演示中使用的技术
 用于控制昼夜循环的插值器脚本
用于控制昼夜循环的插值器脚本

该演示附带一系列指导文章。这些技术演练将帮助您了解灯光、阴影、环境和动画是如何创建的,以便您可以在自己的 2D 项目中使用相同的步骤。

演示版提供以下页面:

您可以在Unity Asset Store 页面的描述中以及演示中的编辑器内教程窗口找到这些文章。此外,您还可以预览 Unity Samples 中的每个脚本,以更好地了解 2D 游戏的推荐指南和编码结构。

让我们简单看一下您将从每一页学到什么。

创造深度幻觉、阴影和昼夜循环
不同类型的资产的制作方法及其法线贴图和遮罩贴图,从左到右:一个骨骼动画角色、一个可平铺的精灵和一个道具
不同类型的资产的制作方法及其法线贴图和遮罩贴图,从左到右:一个骨骼动画角色、一个可平铺的精灵和一个道具

《快乐丰收》中有很多可爱的细节,从成熟的玉米地和金色的小麦田,到轻轻摇曳的灯笼和红色木瓦的农舍。但灯光和阴影才是这个温馨世界中最令人身临其境的部分,呈现出全身光芒和午后阴影。

通过将光影信息移动到单独的纹理(这在艺术创作过程中确实需要一些额外的步骤),您可以创建优化的实时 2D 光影。

阅读文章“使用通用渲染管线的 2D 光影技术”以了解如何:

  • 创建并使用法线贴图和蒙版贴图(二次纹理)来添加丰富的细节,如主角、桶、灯柱和其他道具上的边缘照明。
  • 使用环境光和聚光灯来设置氛围,并通过色调和效果模仿全天的太阳运动。
  • 通过在灯光上启用法线贴图,创造出体积感,就像灌木丛上使用的效果一样。
  • 使用阴影投射器 (Shadow Caster) 的斑点阴影和无限阴影为任何形状和时间创建阴影。
  • 使用昼夜脚本控制时间的移动和光线的变化。
  • 使用Unity团队提供的提示优化您的 2D 灯光。
使用 2D Tilemaps 设计大型景观环境
一旦设置了规则图块,绘制连续路径就会变得更容易、更高效。
一旦设置了规则图块,绘制连续路径就会变得更容易、更高效。

鹅卵石小路、池塘、草地和背景森林有什么共同点?它们都是用 Unity 的 Tilemap 系统制作的,该系统提供了一种用图块(放置在网格上的小精灵)创建游戏世界的方法。您无需将关卡设计为一张大图像,而是可以将其分割成砖块状的碎片,并在整个关卡中重复这些碎片。

Tilemaps 可以帮助节省艺术创作时间以及内存和 CPU 能力。这是因为可以通过专用渲染器渲染图块,并且可以禁用屏幕上不可见的图块。画笔工具可以高效地在网格上绘制图块,并且可以编写脚本来使用绘画规则。它们还具有自动碰撞生成功能,以便更有效地测试和编辑。此外,您还可以放置GameObjects或使用API来实现游戏逻辑。

您可以在文章“使用Unity中的 2D Tilemaps 创建艺术和游戏玩法”中找到有关使用 Tilemap 系统的提示,其中包括如何:

  • 对图块地图使用二级纹理:示例中的每个图块贴图都有对应的 法线贴图和遮罩贴图纹理 ,它们具有相同的尺寸和布局,但被绘制用于显示光照。
  • 使用 Rule Tile 功能,它是2D Tilemap Extras包的一部分。此包包含可重复使用的 2D 和 Tilemap 编辑器脚本,您可以在自己的项目中使用它们,也可以将它们作为自定义画笔和 Tile 的基础。
  • 在项目层次结构中组织图块:
  • 在示例中,所有图块都包含在一个名为 Grid的游戏对象 (GameObject) 中。
  • 我们在网格内创建了尽可能少的图块地图,以防止像素重叠并有助于保持较低的过度绘制。
  • 根据示例中的使用方式使用 Tilemap API 。
了解角色装配、骨骼动画和精灵交换
面部绑定可以完全控制表情,包括在某些动画中创建半三维效果。
面部绑定可以完全控制表情,包括在某些动画中创建半三维效果。

《快乐丰收》 中的农民卷起袖子,梳着庞帕杜发型,准备干活。为了让他在场景中移动,我们使用了一些技术,例如装配他的脸部以创建不同的表情、 使用精灵库 来改变角色,以及 使用精灵交换 来在动画过程中在附加到同一骨骼的精灵之间进行切换。

在“Happy Harvest中的 2D 角色和动画”一文中,我们分解了用于创建动画的这些和其他技术。您将获得有关如何执行以下操作的提示:

  • 从不同角度绘制和制作动画角色以适应自上而下的视角。在 《Happy Harvest》中,美观的视觉效果是通过四个方向实现的。
  • 使用 2D AnimationPSD导入器 包在Unity中处理骨骼动画。通过将所有角色图层作为精灵导入并将它们精确地放置在应用程序中绘制的位置,您可以将角色作品直接从 Photoshop 导入Unity 。
  • 在 Sprite 编辑器中装配角色。
  • 将精灵与骨骼、几何形状和重量连接起来。
  • 使用 Sprite Library Editor 和 Sprite Swap 来管理除骨骼旋转可实现的动画类型之外的动画类型。这包括角色改变方向时的面部表情。
  • 使用 2D 逆运动学 (2D IK) 工具,它是2D Animation包的一部分。它计算旋转量并允许骨骼链移动到目标位置。
制造雨水、温暖的炉火、烟雾和摇曳的树叶
使用 VFX Graph for 2D 生成雨滴粒子
使用 VFX Graph for 2D 生成雨滴粒子

农民的庄稼既需要阳光,也需要雨水。幸运的是,夜晚带来了降雨,我们辛勤工作的农民可以回到他的小房子里,在壁炉里享受温暖的炉火。

在Unity中,有不同的选项可用于创建此类 2D 视觉效果。您可以逐帧制作爆炸动画或生成粒子和云精灵。使用 内置粒子系统 在 CPU 上产生粒子。或者,您可以利用 GPU 并使用 VFX GraphShader Graph 来生成数百万个粒子或使用 URP Volumes应用后处理效果。

在《使用 VFX Graph 和 Shader Graph 实现 2D 特效》一文中,您将了解用于在 《Happy Harvest》中创建特效的不同技术,包括:

  • 使用内置粒子系统创建的简单粒子效果,例如灌木丛中落下的树叶或农民的足迹
  • 使用内置粒子系统在夜晚使用翻页粒子在灯周围创建飞蛾,或使用 VFX Graph 产生雨水溅起的水花
  • 常见的效果包括将着色器应用于水砖以产生波浪移动、壁炉中的火焰以及烟囱中的烟雾
  • 在 VFX Graph 中制作的雨和雷等天气效果 - 雨粒子使用 2D Lit 着色器,因此它们可以与环境完美融合并对灯光做出反应
  • 着色器移动树木和其他植被来模拟微风
  • 将色调和光晕后期处理效果应用于整个场景,营造出温暖、欢快的氛围

在我们的电子书 《在Unity中创建高级视觉效果的权威指南》中了解有关创建视觉效果的更多信息。电子书完整概述了如何使用Unity中的视觉效果创作工具创建高级效果,包括水和液体、烟雾、火、爆炸、天气、冲击、魔法、电力等等。

下载、播放并获取最佳实践

Happy Harvest 是希望在Unity中学习新视觉技术的 2D 创作者的游乐场。扩展示例,在您自己的项目中重复使用其元素和脚本,并在您的移动和桌面设备上进行测试。此示例及其支持内容旨在为每个人(从初学者到经验丰富的 2D 开发人员)提供有用的提示。祝你收获快乐!

Unity电子书的代表性图片“艺术家的 2D 游戏艺术、动画和灯光”。

如果还没有,请务必下载这些高级电子书,其中涵盖 2D 游戏开发以及Unity中的渲染和视觉效果( 3D和 2D):

另外,请查看我们的其他 2D 演示 《The Lost Crypt》《Dragon Crashers》

您将在 Unity最佳实践中心找到更多面向高级程序员、艺术家、技术艺术家和设计师的资源。

有反馈吗?请在专门的 论坛上分享您对该演示的想法。