是否需要编写新的3D引擎?

时间:2010-09-28 21:03:09

标签: graphics 3d 3d-engine

编写一个新的3D引擎很有吸引力,但我有很多。程序员开始一个新的是否理智?是否有需要的行业部门?

4 个答案:

答案 0 :(得分:6)

理由:

  1. 您想了解如何制作3D引擎,并不关心是否有人使用它。
  2. 现有的引擎都没有你想要的东西,修改源代码太麻烦了(如果你能得到的话)。
  3. 你有这样一个很棒的想法,没有其他引擎已经做到这一点所以你需要来做这件事因为你所做的事情还不存在。
  4. 不这样做的原因:

    1. 您没有足够的资源:时间/预算/专业知识。
    2. 现有发动机完全符合您的需求。

答案 1 :(得分:5)

有很多理由要构建一个新的3D引擎(没有特定的顺序):

  • 旧的是第一人称射击游戏,但你想要一个飞行模拟器。
  • 旧版有效,但不易使用或有太多错误
  • 其他人拥有旧的
  • 新硬件功能XYZ与旧引擎根本不兼容
  • 有人付你建立一个
  • 你以前从未建造过。
  • 你的游戏(模拟)只需要χ,但旧引擎提供χ,ψ,ζ,α,β,γ,δ,甚至π。

我正好在我的休息时间建立一个基于OpenGL的3D引擎。通过自己实现,我正在扩展我对OpenGL方式的基本知识,而不是通过编程到别人的界面(比我几年前实现自己的软件仿射纹理映射引擎时的方式更多)。缺点是我可能永远不会完成它:)

答案 2 :(得分:1)

一般情况下,如果您需要一个代码,并且根本不存在符合您需求的代码,则代码为一个。

是否有人需要为他们制造引擎,因为没有适合他们需要的引擎?可能。

答案 3 :(得分:1)

这与我应该编写自己的程序/技术/框架X而不是使用现有的程序/技术/框架X的问题高度相似吗?“并且已经被问到很多,所以我不会过去通常的样板原因。

虽然这个问题的答案总是有些主观,但很大程度上取决于问题的背景。

如果按照的要求询问我想了解游戏引擎和渲染那么编写自己的游戏引擎总是有益的,因为开发代码可以说是最好的学习方式。但是,可能已经存在可以从中学习的良好开源文档引擎。

如果这是一项商业活动,那么问题就在于现有发动机是否能提供所需的产品。现代商业引擎是由一些真正聪明的人写的,包含所有最新的花里胡哨,所以它很可能就足够了。在两个最流行的游戏引擎上开发的游戏数量很明显:idTech和虚幻引擎。但是,仍然可能没有与技术相关的禁止因素来使用现有的引擎来编写自己的引擎更好。例如,如果可以负担得起,发动机是否可以获得充分许可,以及是否可以提供许可证。