选择哪一种:java游戏的2D还是3D

选择哪一种:java游戏的2D还是3D,java,3d,2d,Java,3d,2d,当一支小队时间不多但雄心勃勃时,他们第一场比赛应该选择什么?我是一个经验丰富的程序员,但在此之前没有做过任何游戏编程。我的设计师很有才华,也很有艺术感,他大约一年前就开始从事3D设计,但从那以后就再也没有做过,所以他可能需要一段时间才能重新学习,我不确定他是否能够在这方面做得很好,尽管他的平面设计技能非常出色 我们主要关心的是尽快完成游戏,并且很容易完成,因为这是我的第一个游戏编程项目。同时,我们不希望有任何限制,可能会阻碍我们以后的进步,或以其他方式使游戏在某些方面没有乐趣 例如,我了解到某些

当一支小队时间不多但雄心勃勃时,他们第一场比赛应该选择什么?我是一个经验丰富的程序员,但在此之前没有做过任何游戏编程。我的设计师很有才华,也很有艺术感,他大约一年前就开始从事3D设计,但从那以后就再也没有做过,所以他可能需要一段时间才能重新学习,我不确定他是否能够在这方面做得很好,尽管他的平面设计技能非常出色

我们主要关心的是尽快完成游戏,并且很容易完成,因为这是我的第一个游戏编程项目。同时,我们不希望有任何限制,可能会阻碍我们以后的进步,或以其他方式使游戏在某些方面没有乐趣

例如,我了解到某些动画在2D中是不可能的,比如旋转等。我希望玩家的角色能够变形为动物,并且必须能够射向怪物(比如射箭,看到它飞过并击中另一个人)。这些东西在2D中可能吗


将来,如果我们想从3D转到2D,是否可以不完全重写游戏?

您不必使用3D来实现“3D外观”。旋转、运动或变换等可以预先录制或渲染为动画或图像序列,并无缝集成到2D游戏中。 在2D中唯一不可能的是在“游戏空间”中自由导航(如自由行走或飞行、任意转弯等)

然而,在决定使用2D或3D时,主要考虑的是游戏性。有些游戏绝对需要3D(射击游戏、模拟游戏),而有些游戏则完全不需要3D(冒险、拼图等等)。因此,你实际上不必做出决定,只需选择更适合你的游戏理念的

就我个人而言,如果可能的话,我会避免在你的第一次游戏尝试中使用3D来消除所有的限制和麻烦

使用3D时,您通常必须决定3D框架,这将严重影响您的软件设计、游戏外观和整体性能。例如,Java3D带来了一个复杂的类结构,您必须进行调整。 很多努力都花在了3D技术上。简单的事情,比如旋转一个正方形,演变成包含四元数的矩阵运算。每一种效果都必须在复杂的3D世界中完成,并且以这样一种方式,它的2D投影外观将变成您想要的方式。 更不用说3D应用程序经常会出现很难克服的刻板印象


在2D中,您实际上避免了复杂性的一维。您可以完全按照预期的方式执行所有操作,您可以使用标准的图形应用程序和打开的文件格式来简化设计人员和开发人员之间的工作流程。许多伪3D效果,如视差运动、景深和预渲染艺术品,可以在2D世界中呈现出惊人的外观。

根据您的要求,我会选择2D。你有更多的工具可供选择。更多可签约的艺术人才。。而且资产管道更简单。最终,这一切都将取决于这场比赛本身有多好。对于普通用户来说,3D有时更难理解

根据你的概念,旋转和变形在2D中是完全可能的。你甚至可以考虑伪3D方法AL纸马里奥…


如果您在设计代码结构时考虑到了这一点,那么从2D移动到3D不应该是一个主要问题

我认为编写2D或全3D游戏需要一种完全不同的设计方法,这是以后很难修改的:SUN为两个开发决策提供了一个和一个。
对于第一款截止期很紧的游戏,我会选择2D版本。如果游戏很有趣,设计也不错,那么3D就不是必须的。

你应该选择2D。您已经说明了采取这种方法的几个原因:

  • 你是一个小团队,3D需要 更多的工作
  • 这是你的第一场比赛,所以 你需要让它尽可能简单 可能,否则项目可能会失败 (您面临着很大的风险!)
  • 3D艺术家需要重新学习 手艺
  • 你有一个 (自我强加的)最后期限
  • 等等
3D需要很多时间,而且最好投资于改进游戏的其余部分。想想3D时代之前存在的所有精彩游戏


不要害怕接受限制:虽然3D可能会给你很多可能性,但2D可能会带来更多创造性的工作

我也推荐2D。3D游戏对用户计算机的图形化要求更高,而2D游戏中的碰撞检测等许多功能都要简单得多。你甚至可以在3D中制作角色模型,然后将它们投影到2D,为实际游戏制作精灵。拼图海盗()采用了这种方法,在一致的照明等方面效果非常好。

我会考虑几个因素:

  • 是手机游戏还是小程序游戏?如果是这样,我会选择2D版本。在这种情况下很难获得正确的3D效果
  • 你的设计师更喜欢什么?他能更快地为角色建模、制作纹理和动画,而不是创建2D角色所需的所有精灵吗
  • 工具支持。您的设计师可以在2D和3D中生成哪些输出格式?您将要使用的中间件能够处理哪种格式?3D引擎是否可以加载或至少转换.obj文件(仅举一个例子,可以使用任何其他模型格式)
  • 即使你想玩3D游戏,你仍然可以玩2D游戏(有时称为2.5D或伪3D)。还有一些很好的第三方框架,用于Java中的2D和3D内容。你不必使用