Unity 2D与3D差异

时间:2014-06-15 10:54:17

标签: unity3d unity3d-2dtools

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

感谢您的时间!

2 个答案:

答案 0 :(得分:13)

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

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

    统一渲染2D项目比3D更快吗?

    通常,是的,每个2D精灵都可以被认为是一个非常简单的平面3D物体(带有两个三角形的纹理四边形)。它会比具有数千个三角形的3D角色渲染得更快。

      

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

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

答案 1 :(得分:3)

没有太大区别。有2d网格。渲染速度取决于每个对象主要具有的组件。一般来说,2d对象更快,因为他们不需要网格,只需要精灵。