2D游戏开发快速入门指南

前言:        

        此快速入门指南适用于想要在Unity中创建2D游戏的2D游戏开发人员。您可以使用Unity创建几种不同类型的2D游戏。您可以从头到尾阅读本指南,但请注意,有些部分与具有某些游戏视角和艺术风格的2D游戏更相关。

注:本指南适用于2019 LTS以上版本的Unity。


此快速入门指南可帮助您:

  • 决定你希望你的游戏有什么游戏视角或观点。
  • 决定你希望你的游戏有什么艺术风格。
  • 建立你的Unity项目。
  • 创建一个2D游戏。

有关详细的2D游戏教程,请参阅以下Unity学习材料:

  • Ruby的冒险:2D初学者(项目)
  • 开始2D游戏开发(课程)
  • 其他二维学习教程

1、 2D游戏的游戏视角

决定你希望你的游戏有什么游戏视角或观点。下表描述了2D游戏视角的主要类型:

游戏视角描述
Top-down自上而下提供动作俯视图或鸟瞰图的2D游戏。
Side-on在2D游戏中,角色向左或向右(或上下)移动,屏幕随之滚动。视角是侧面的。
Isometric and 2.5D (three-quarter view)

具有等轴测视图的2D游戏模拟3D几何体和深度轴,但使用正交摄影机而不是透视摄影机。这使玩家可以鸟瞰动作。

2.5D(也称为四分之三视图)游戏是2D游戏,使用3D几何图形作为环境和角色,但将游戏限制在二维。3D效果具有视觉目的而非功能目的。

        本指南的许多部分都与所有游戏视角相关。对于自上而下和侧面透视图,Tilemap和9切片工具对于设计级别特别有用。对于等轴测、四分之三视图或2.5D透视,“等轴测瓷砖贴图”工具特别有用。

示例:

A top-down 2D game demo made with Unity

使用Unity制作的自上而下的2D游戏演示

A 2D side-on game demo made with Unity

用Unity制作的2D侧边游戏演示

An isometric 2D game demo made with Unity

使用Unity制作的等距2D游戏演示

2、2D游戏的艺术风格

决定你希望你的游戏有什么艺术风格。下表介绍了二维艺术样式的主要类型:

艺术风格/技巧描述
Minimalist极简主义者。色彩平坦,线条清晰,可读性强,例如手机益智游戏。
Pixel art像素艺术 。像素化图形,例如复古游戏艺术风格。
Illustrative说明性的 。卡通、风格化或写实的艺术风格。
Pre-rendered 3D预渲染的3D。使用此技术可以使用三维工具创建二维艺术。可以创建渲染为“精灵”或“精灵”序列的艺术。当需要资源的多个角度时,可以使用此技术,例如用于复古艺术中使用的8或4方向精灵角色。

        本指南的大部分章节都与任何艺术风格的游戏相关。

示例:

Mini Metro, a 2D game made with Unity with a minimalist art style

迷你地铁,一款由Unity制作的2D游戏,具有极简主义艺术风格

Phased, a 2D game made with Unity with a pixel art style

Phased,一款由Unity制作的2D游戏,具有像素艺术风格

Flipping Death, a 2D game made with Unity with an illustrative art style

翻转死亡,一款由Unity制作的2D游戏,具有插图艺术风格

Rise of Kingdoms, a game made with Unity with the pre-rendered 3D technique

《王国崛起》,一款使用预渲染3D技术与Unity制作的游戏。 相信这款游戏大家十分熟悉了。

3、2D游戏的初始设置

      注意:对于本指南,Unity建议并假设您选择通用渲染管道(URP),而不是内置渲染管道。

  1. 安装Unity版本2019 LTS或更高版本;请参阅安装Unity。
  2. 使用二维模板创建新项目。
  3. 在软件包管理器中,安装最新的URP软件包版本;请参见将通用渲染管道安装到现有项目中。
  4. 设置二维渲染器;请参见2D渲染器设置步骤。
  5. 安装您需要的任何可选软件包;请参阅安装软件包。

需要安装程序包:
        在Unity中制作2D游戏所需的大多数软件包都包含在Unity编辑器中。下表列出了选择二维模板时默认包含的软件包:

Package描述
2D Animation2D动画提供了将骨骼动画应用于精灵所需的工具和运行时组件。
2D Pixel Perfect

2D Pixel Perfect套装包含Pixel PerfectCamera组件,可确保您的像素艺术在不同分辨率下保持清晰,运动稳定。

2D PSD Importer2D PSD导入程序包允许您从Photoshop导入多层PSD文件。您可以将其用于精灵,或装配角色。
2D Sprite精灵编辑器提供了一个编辑器内环境,用于创建和编辑精灵资源。“精灵编辑器”(Sprite Editor)用于添加用于编辑与精灵相关的数据的自定义行为。
2D SpriteShape使用“二维精灵形状”可以创建有机形状和地形,类似于矢量绘图工具。例如,可以选择填充纹理和边界精灵。
2D Tilemap Editor二维平铺编辑器允许您使用正方形、六边形或等轴测平铺创建基于栅格的世界。将瓷砖添加到瓷砖调色板,并使用不同的设置和笔刷绘制和填充瓷砖网格。使用其他工具可以将智能绘图、随机化或动画添加到平铺资源中。

下表列出了一些您可以安装的可选软件包,这些软件包可能对2D游戏开发特别有用:

Package描述
Shader Graph使用“Graph”可以直观地构建着色器。
CinemachineCinemachine软件包是一套模块,为操作Unity Camera提供高级功能。
2D Tilemap Extras

2D Tilemap Extras包包含可重复使用的2D和Tilemap Editor脚本,您可以将其用于自己的项目。

4. 创建2D游戏

在创建2D游戏之前,您需要决定游戏视角和艺术风格。

要创建2D游戏,请设置Unity项目,然后按照以下顺序熟悉相关概念:

  1. 基本原理
  2. 脚本
  3. 精灵
  4. 构建游戏内环境
  5. 角色动画
  6. 图样
  7. 物理2D
  8. 音频
  9. 用户界面
  10. 分析、优化和测试
  11. 发布

4.1 基本原理

        GameObjects是Unity中的基本对象,代表角色、道具、场景等。游戏中的每个对象都是GameObject。

        GameObjects表示游戏中的项目;放置它们以构建关卡的空间称为场景。Unity中的场景总是3D的;当你在Unity中制作2D游戏时,你通常会选择忽略第三个维度(z轴),但你也可以在特殊情况下使用它,例如制作2.5D游戏时。

        GameObjects的行为是由称为组件的功能块定义的。以下组件是2D游戏的基本组件:

  • 变换(Transform):变换组件确定场景中每个游戏对象的位置、旋转和比例。每个GameObject都有一个Transform组件。
  • 精灵渲染器(Sprite Render):精灵渲染器组件渲染精灵并控制它在场景中的外观。
  • 相机(Cameras):捕捉并向玩家显示世界的设备。将摄影机标记为正交将删除摄影机视图中的所有透视图。这对于制作等轴测或2D游戏非常有用。
  • Collider 2D:此组件定义2D游戏对象的形状,用于物理碰撞。请参见2D物理。

        组件是C#类的UI表示;您可以使用脚本来更改组件并与之交互,或者创建新的组件。

4.2 脚本

所有2D游戏都需要脚本。脚本响应玩家的输入,并安排游戏中的事件在应该发生的时候发生。
有关如何在Unity中使用脚本的详细信息,请参阅脚本概述。另请参阅Unity Learn初级脚本课程。
脚本附加到GameObjects,您创建的任何脚本都继承自MonoBehavior类

4.3 精灵

        精灵是二维图形对象。您可以将精灵用于所有类型的2D游戏。例如,可以将主要角色的图像导入为精灵,也可以使用精灵集合来构建角色。这样可以更好地控制角色的移动和动画。

        可以使用Sprite Atlas将多个纹理合并为一个组合纹理。这样可以优化游戏并节省内存。例如,可以将与特定角色或目的关联的所有精灵添加到精灵图谱中。

4.4 构建游戏内环境

        环境设计是指构建游戏关卡和环境的过程。您可以将本节中的环境设计工具以任何对游戏最有意义的方式进行组合;例如,您可以只使用9片制作自上而下的游戏,也可以使用Tilemap和SpriteShape制作平台上的边。

9切片:
        9切片是一种2D技术,允许您重用各种大小的图像,而无需准备多个资产。Unity可以动态拉伸和平铺精灵的指定部分,以允许一个精灵作为多种大小的UI元素的边界或背景。请参见9切片精灵。例如,在构建二维级别时,可以使用9切片来拉伸精灵以进行造型。

以下几点描述了更改图像尺寸时发生的情况:

  • 四个角(A、C、G 和 I)的大小不变。

  • B 和 H 部分水平拉伸或平铺。

  • D 和 F 部分垂直拉伸或平铺。

  • E 部分同时水平且垂直拉伸或平铺。

Tilemap:

        瓷砖贴图组件是一个存储和处理瓷砖资源以创建二维标高的系统。使用二维瓷砖贴图编辑器软件包(默认情况下已安装)来使用瓷砖贴图。例如,可以使用瓷砖和笔刷工具使用瓷砖贴图绘制标高,并定义瓷砖行为的规则。

 二维平铺附加:

        若要将一些额外的Tilemap资源添加到项目中,请安装2D Tilemap Extras软件包。此包包含可重复使用的2D和Tilemap Editor脚本,您可以将其用于自己的项目。您可以自定义脚本的行为,以创建适合不同场景的新笔刷。

等轴测瓷砖贴图:

        对于具有等轴测透视的游戏,可以创建等轴测平铺。

精灵形状:

        与矢量绘制工具类似,“精灵形状”提供了一种更灵活的方式来创建更大的精灵,例如看起来有机的风景和路径。请参见精灵形状轮廓。

 

4.5 角色动画

        有三种不同的方法可以设置2D角色的动画:

2D动画类型用于
Frame-by-frame逐帧的艺术原因,如果你想让你的游戏拥有经典的动画艺术风格。逐帧动画在制作和运行方面都是相对资源密集型的。
Cutout平滑骨骼动画,当角色不需要逼真的关节时。
Skeletal平滑骨骼动画,其中精灵根据骨骼结构弯曲。当角色需要更自然的感觉时,可以使用此选项。

 

 

 

 逐帧:

        逐帧动画是基于传统的cel动画技术,将动画的每一个瞬间绘制为单独的图像,这些图像按快速顺序播放,就像在动画书上翻页一样。

Cutout:

        在剪切动画中,多个精灵组成一个角色的身体,每个精灵都会移动,以产生整个角色移动的视觉效果。此动画样式类似于骨骼动画(请参见下文),只是精灵不弯曲。

骨骼动画:

        使用骨架动画,可以将一个精灵或一组精灵映射到动画骨架上。可以为角色和对象创建和定义动画骨骼,定义它们应该如何弯曲和移动。这种方法允许骨骼弯曲和变形精灵,以获得更自然的运动样式。若要使用骨骼动画,需要使用2D动画包(默认情况下已安装)。

4.6 图样

        本节介绍使用通用渲染管道(URP)时的图形选项。

        灯光:

        因为将URP与2D渲染器一起使用,所以可以使用“灯光2D”组件将优化的2D照明应用于精灵。有关详细信息,请参见二维灯光简介。

这两幅图像显示了相同的场景;在左侧的图像中,2D灯光处于禁用状态,在右侧的图像中启用2D灯光。使用2D灯光,可以使用相同的精灵来创建不同的天气条件或情绪。

        阴影:

        若要定义灯光用于确定其投射的阴影的形状和特性,请使用“阴影投射器2D”组件。将灯光的阴影强度增加到零以上。

        增强外观和感觉:

        粒子系统和后处理是可选的工具,可以用来为游戏添加抛光。

        粒子系统

        可以使用粒子系统创建动态对象,如火、烟或液体,作为使用“精灵”的替代方案。精灵更适合物理对象。请参见粒子系统。

        后期处理:

        您可以使用后处理效果和全屏效果来显著改善游戏的外观。例如,可以使用这些效果来模拟物理摄影机或胶片特性,或创建样式化的视觉效果。

        URP有自己的后处理实现。请参见通用渲染管道中的后期处理。

4.7 物理2D

        物理2D设置定义了2D游戏中物理模拟准确性的限制。要了解如何使用Unity的2D物理引擎,请参阅2D物理学习教程。

        以下二维物理工具适用于二维游戏。

4.8 音频

        您可以在Unity中为游戏添加背景音乐和音效;请参阅音频概述。使用第三方软件创建您的音频,并使用建议的设置将其导入Unity。

4.9 用户界面

        如果你想在游戏中添加菜单或帮助,你需要设置一个用户界面。要设置用户界面,请使用Unity UI。

4.10 分析、优化和测试

        性能分析:
        评测可以让你了解游戏中不同部分的资源密集程度。你应该始终在其目标发布平台上对你的游戏进行简介;请参阅分析您的应用程序。

        优化:
        分析之后,您可以使用结果进行性能改进和优化。请参阅理解Unity中的优化。

        测试:
        使用Unity测试框架测试您的游戏和代码;请参阅Unity测试框架。

4.11 发布

当你完成游戏后,你就可以发布它了。请参阅发布构建。

 5、后记

         更多内容请参考官方文档手册 2D部分。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值