首先我们从看一下,如果从空间表现的角度来分,都有哪些游戏类型。
游戏类型
1.全3D游戏
3D 游戏通常使用三维几何体,在游戏对象的表面上渲染材质和纹理,使它们看起来像构成游戏世界的坚固环境、角色和对象。摄像机可以在场景中及其周围自由移动,并以逼真的方式在游戏世界中投射光线和阴影。3D游戏通常使用透视渲染场景,因此当对象靠近摄像机时,对象在屏幕上显得更大。对于符合此描述的所有游戏,请采用3D模式。
2.正交3D(2.5D)
有时游戏使用 3D 几何体,但使用正交摄像机,而不是透视。这是游戏中常用的技巧,可用于对动作进行鸟瞰,有时也称为“2.5D”。如果要制作这样的游戏,还应该在3D模式下使用 Editor,因为即使没有透视,仍将使用3D模型和资源。但此情况下需要将摄像机和 Scene 视图切换为正交 (Orthographic) 视图。
3.全2D
2D 游戏使用平面图形(称为精灵),并且没有三维几何形状。它们以平面图像的形式绘制到屏幕上,并且游戏的相机(正交相机)没有透视。对于这种类型的游戏,应该以 2D 模式启动 Editor。
4.包含3D的2D玩法(2.5D)
一些2D游戏使用3D几何图形来表示环境和角色,但将游戏玩法限制在二维,例如,摄像机可以显示横向卷轴视图,并且玩家只能在两个维度上移动,但是游戏本身仍然将 3D 模型用于障碍物并且将 3D 透视用于摄像机。对于这些游戏,3D 效果的用途可能是为了营造风格,而不是充当某种功能。这种类型的游戏有时也被称为“2.5D”。尽管游戏玩法是 2D,但主要是操纵 3D 模型来构建游戏,因此应该以 3D 模式启动 Editor。
5.带视差的2D
还有另一种流行的 2D 游戏风格,使用 2D 图形,但通过透视摄像机来获得视差卷轴效果。这是一个“纸板剧院”风格的场景,所有图形都是平面的,但按照与摄像机之间的不同距离排列。在这种情况下,2D 模式最有可能符合开发要求。但是,应将摄像机的投影模式更改为透视 (Perspective),并将 Scene 视图模式更改为 3D。
Unity中的2D和3D
在 Unity 中创建任何类型的 2D 或 3D 游戏或其他交互体验。从在 Unity 中打开新项目的那一刻起,您就可以选择在 2D 或 3D 之间进行选择,但无论您设置何种模式,您都可以随时在两者之间进行切换。
在 2D 或 3D 模式下启动的选择决定了 Unity 的一些设置,例如图像是否作为纹理或精灵导入,以及相机项目是正交还是透视。
除了3D 开发的所有功能外,Unity 还拥有适用于 2D 游戏的全面功能集,包括 Sprite 编辑器、2D 物理、渲染器或 Sprite 蒙版、世界构建工具(例如用于方形、六边形和等距图块的 Tilemap 编辑器、骨骼)基于动画,并且可以轻松创建 2D 灯光和着色器。
在Unity中是可以切换2D和3D模式的。
打开 Editor 设置(顶部菜单:Edit > Project Settings,然后选择 Editor 类别)。
然后将 Default Behavior Mode 设置为 2D 或 3D。
另一种区别就是摄像机的投影形式,可以在选中相机后在Inspector中切换。
相机的投影方式有两种:透视(Perspective)、正交(Orthographic)
这两种方式的区别:现实世界中的摄像机(实际相当于人眼)在观察外界事物时,物体距离视点越远,看起来越小。这种众所周知的透视效果在艺术和计算机图形领域广泛应用,对于创建现实场景至关重要。当然,Unity支持透视摄像机,有时需要专门在没有这种效果的条件下渲染视图。例如,需要创建一种与真实世界的对象不完全相同的地图或信息显示效果。显示的对象不随距离变远而缩小的摄像机称为正交摄像机;Unity摄像机也有这样的选项。在透视和正交模式下观察场景称为摄像机投影。
在透视模式(左)和正交模式(右)下显示的同一场景
现在我们总结一下:
项目类型 | 视图模式 | 摄像机投影方式 |
---|---|---|
全3D | 3D | 透视 |
正交3D(2.5D) | 3D | 正交 |
全2D | 2D | 正交 |
包含3D的2D玩法 | 2.5D | 3D |
带视差的2D | 2D | 透视 |
以上就是对游戏按空间进行了分类,在确定了使用哪种视角后,结合游戏使用的渲染管线就可以创建项目。关于Unity项目模板的选择,请参考《深入了解Unity项目模板》
留两个作业吧:
- AR/VR/MR游戏属于上面哪种类型呢?
- 看看自己手机上常玩的游戏都是什么类型呢?在评论区说说吧。
比如《王者荣耀》、《原神》、《消消乐》。。。
参考资料:
- Unity 2D和3D项目的差异:
https://docs.unity3d.com/cn/current/Manual/2Dor3D.html - Unity 2D和3D游戏的差异:
https://unity.com/how-to/difference-between-2D-and-3D-games - Unity2D和3D的设置:
https://docs.unity3d.com/cn/current/Manual/2DAnd3DModeSettings.html