一个易于使用的3D图形引擎,用于一款简单的游戏

An easy to use 3D graphics engine for a simple game?

本文关键字:用于 简单 游戏 一款 3D 一个 易于使 图形 引擎      更新时间:2023-10-16

市面上有很多3D图像引擎,但我的需求有点受限,我无法自己决定哪一个。

我即将开始制作一个相当简单的( c++ )游戏,它可以真实地模拟宇宙飞船在太阳系中的运动。您可能猜到了,所需的图形是非常基本的:

  • 行星只是有纹理的球体;
  • 航天器很少或没有运动部件(只有旋转和平移);
  • 我可能需要一些灯光/动画效果,使其美观。

Celestia在美学上与我所想的非常接近。

现在,问题是,到目前为止,我只在科学模拟中使用过c++,而且我在图形界面和游戏方面没有任何经验。而且,我不想花几个月的时间学习如何使用一个复杂的引擎。

我的问题是:哪个引擎容易学习和使用,同时还能产生漂亮的图像?我在寻找最好的平衡。

据我所知,3个最被推荐的OSS引擎是Ogre3D, irrlight和Crystal Space 3D。通过比较几个youtube视频,Crystal Space的图像看起来最好,但显然使用起来有点乱。他们说,irrlight更容易,但对我来说,它在图形效果方面也很差。Ogre3D看起来不错,但我不知道它对初学者有多友好。

我真的很感谢你对这方面的建议!

我喜欢Panda3D这种简单场景的快速渲染。它同时具有c++和Python API,并提供了许多有用的工具类型(动画,简单的碰撞检测等),这将使编写游戏的任务更容易。

渲染的图像的美学吸引力将在很大程度上是你自己的美术质量的一个因素;引擎只显示你给它的东西,功能列表(着色器,场景管理等)在各种开源引擎之间是相似的。我不认为YouTube视频是一个比较的好方法。

你应该决定你个人喜欢使用什么,因为你花在制作更复杂/更困难的引擎上的时间可能更适合用于完善游戏。

Kerrek是正确的,因为它们都不是真正的容易使用。

Unity 3D在过去几年中变得非常流行,并且是迄今为止我所知道的最容易使用的引擎。

我通常不太相信"游戏引擎",因为它们几乎总是写得很糟糕,很难使用,而且无法扩展。这并不是"编写游戏时需要的所有东西"的恰当比喻。

但是从我所看到的来看,Unity确实做到了。我想这就是它这么受欢迎的原因。

然而,它的API被设计为通过Mono使用,所以当你得到所有支持的语言(我相信Unity推荐使用Javascript,但c#也是一个相当流行的选择),我不认为它直接支持c++。

问题是,你真的需要用c++编写你的游戏吗?

但无论你选择哪条路线,都要确保你选择的图像引擎已经在真实游戏中使用过。基本上,任何引擎的试金石(游戏邦注:我并不确定你所列举的引擎是否符合标准)都是用于制作合理的游戏。这就是为什么存在这样的建议。在编写"引擎"时,我们很容易偏离方向,为了编写引擎代码而编写引擎代码,最终得到一个包含各种功能的庞大框架,而这些功能实际上从未在游戏中使用过,所以,当有人试图这样做时,它就会崩溃,表现糟糕,或者很难使用并且缺乏重要的功能。

所以不要使用任何没有真正完整游戏的

引擎。不是图像演示,而是游戏。无论是大型AAA级商业游戏,还是独立游戏,抑或是某些人为了熟悉引擎而制作的业余项目,重要的是有人用它制作了一款游戏,并且让你觉得这款游戏是该引擎的展示。