11

Unity 2D项目和unity 3D项目的主要区别是什么!unity 渲染 2D 项目是否比 3D 更快?或者 2D 预制件/纹理是否需要比 3D 更少的内存?是否有在 2D 项目中创建 2D 网格的选项?

感谢您的时间!

4

3 回答 3

14

真正的区别在于您在场景中使用的对象类型以及使用的相机。您可以在同一场景中混合 2D 和 3D 内容。让我尝试列举使用 2D 和 3D 时的差异:

  1. 相机:要获得您的世界的 2D 视图,您可以使用正交相机。使用这样的相机,您不会看到物体随着远离相机而逐渐变细的“透视效果”。用正交相机从一侧观察的立方体将是一个正方形。正交相机不关心物体与相机的距离(只要它们在相机的剪切平面内)
  2. Sprites vs Meshes:您通常会在 2D 游戏中使用 2D sprites,使用 SpriteRenderer 组件附加到对象。但您也可以使用带纹理的四边形显示 2D 对象。在 3D 游戏中,您将改为使用 MeshRenderer 组件来显示 3D 网格。但是,您可以在同一个场景中混合两种内容并实现例如 2.5D 效果。
  3. Physics2D vs Physics:Unity 有两组物理工具:一组用于 3D,另一组用于 2D。在 2D 游戏中,更容易使用 2D 物理工具:(RigidBody2D、Collider2D、相关的脚本类)。对于 3D 游戏,您将使用 3D 物理工具(RigidBody、Collider 和相应的脚本类)。请注意,您不能将 2D 物理与常规物理混合,即,您不能使用 CircleCollider2D 制作一个球并使用 BoxCollider 从盒子反弹。

unity 渲染 2D 项目是否比 3D 更快?

一般来说,是的,每个 2D 精灵都可以被认为是一个非常简单的平面 3D 对象(带有两个三角形的纹理四边形)。它的渲染速度比具有数千个三角形的 3D 角色要快。

是否有在 2D 项目中创建 2D 网格的选项?

精灵是您通常用于 2D 的东西;它们只是矩形图片。网格是 3D 构造。您可以导入平面网格并在场景中正确定位它以使其看起来像 2D。

于 2015-06-29T23:53:59.657 回答
3

没有太大区别。有二维网格。渲染速度取决于每个对象主要包含哪些组件。但总的来说,二维对象更快,因为它们不需要网格,只需要精灵。

于 2014-06-15T18:34:01.113 回答
2

据此(Unity 2D vs 3D),Unity 2D 总是比 3D 快。我知道比较适用于 Unity 4.3,但它可能仍然适用于 Unity 5。

上面的比较不是 Unity 做的官方基准,所以持保留态度?可能最好的确定方法是自己做基准测试......

这是博客的摘录:

因此,如果您现在正在开发 2D 游戏,则没有任何理由开始使用新的物理引擎。您将获得更好的性能,这意味着您将拥有更多的 CPU 时间来创建更好的游戏。

这是他们的话,但不是我的。

于 2015-08-15T17:54:38.660 回答