编写新的 3D 引擎非常有趣,但我知道有很多这样的引擎。程序员开始新的工作是否明智?是否有需要的行业板块?

有帮助吗?

解决方案

构建新的 3D 引擎有很多原因(排名不分先后):

  • 旧款是第一人称射击游戏,但你想要一个飞行模拟器。
  • 旧的可以用,但是不太好用或者有太多错误
  • 旧的已经被别人拥有了
  • 新硬件功能 XYZ 与旧引擎根本不兼容
  • 有人付钱给你建造一个
  • 您以前从未构建过。
  • 你的游戏(模拟)只需要χ,但旧引擎提供χ、ψ、ζ、α、β、γ、δ,甚至π。

我现在正好在闲暇时间构建一个基于 OpenGL 的 3D 引擎。通过自己实现它,我扩展了我对 OpenGL 的基本知识,这比我通过对别人的接口进行编程所获得的知识要多(比我几年前实现自己的软件仿射纹理映射引擎时要多得多)。缺点是我可能永远也完成不了:)

其他提示

这样做的理由:

  1. 您想了解如何制作 3D 引擎,并且并不真正关心除了您自己之外是否有人使用它。
  2. 现有的引擎都不能做你想要的事情,而且修改它们的源代码也太麻烦了(如果你能得到它的话)。
  3. 你有一个很棒的想法,没有其他引擎做到过,所以你 需要 去做吧,因为你所做的一切还不存在。

不这样做的理由:

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

一般情况下,一个代码,如果你有需要一个有不存在一个适合您的需求。

有没有人在那里,因为不存在一个适合他们的需求谁需要为他们建立了一个发动机?可能。

这是非常类似的问题的我应该写我自己的程序/技术/框架X,而不是使用现有的?“的并已要求很多,所以我不会去了通常的样板的原因。

虽然这个问题的答案总是会有些主观,很大取决于其所要求的上下文。

如果它正在沿的我想了解游戏引擎和渲染线问的则始终是有益的编写自己的游戏引擎作为开发的代码可以说是最好的学习方式。然而,也有可能已经存在好开源,开源有据可查的从发动机以及学习。

如果这是一个商业化的努力,那么它的更多的现有发动机是否提供所需要的一个问题。现代商业引擎是由一些真正辉煌的人写的,包含所有最新的花俏所以它更可能他们就足够了。 idTech和虚幻引擎:这一游戏的数量之多,已在两个最流行的游戏引擎开发是显而易见的。但是,仍然可能没有高科技相关的禁止因素的地方写你自己更好利用现有的发动机。如,如果它能够承受工作要做,发动机是否能充分许可,并且如果许可证可以得到。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top