游戏是复杂度最高/最令人印象深刻的应用程序吗?

今天我在思考什么可能是编写过的最复杂/最令人印象深刻的应用程序。所以我开始思考我熟悉并每天使用的东西,数据库

然后我进入了一个未知的领域(我想对我们大多数人来说),政府。 我只能想象美国宇航局的应用程序有多复杂,它们可以与火星上的探测器进行通信。

但是后来我开始思考我从小就每天使用的东西,游戏。 我不是游戏开发者,这让我对AI和计算复杂度产生了大量的疑问,这些疑问超出了我能想到的任何东西。

游戏是复杂度最高/最令人印象深刻的应用程序吗?


回答:

简短回答:不是。

详细回答:游戏实际上并没有那么复杂。 这取决于你在说“游戏”时指的是什么,但竞争最激烈的两个最复杂的游戏将是 3D 游戏和在线游戏(尤其是大型多人在线游戏)。

3D 游戏的复杂性来自于获取世界的模型并在 3D 中渲染它,并使其以“真实”(在世界的规则范围内)的方式运行。 从中创建视觉和听觉环境实际上并没有那么难。 它几乎都是线性代数,并且是计算机科学的一个成熟领域。

真正的诀窍在于使该过程实时执行。 多年来,游戏程序员不得不在真实性和性能之间做出很多权衡(例如,如果你能开发出一种可以生成逼真树木的性能算法,那实际上会非常值钱)。 因此,随着计算和图形能力的提高,游戏在视觉上自然变得越来越好。

现在,一些游戏程序员在这个领域取得了真正的创新,(理所当然地)为他们赚了很多钱。 约翰·卡马克(id Software:Doom 和 Quake)和蒂姆·斯威尼(Unreal)浮现在脑海中。

然而,制作游戏的真正成本在于内容。 只要去看看现代 FPS(第一人称射击)游戏的演职员表,你通常会看到少到 6 个程序员,但会有 30-50+ 个艺术家。 从软件的角度来看,内容并不复杂。 只是很耗时。

至于在线游戏,我记得《无尽的任务》刚出来的时候,人们对它的难度赞不绝口。 错误。 对于那些(像我自己一样)熟悉 90 年代(可能还有 80 年代)MUD(多人地下城)的开发的人来说,Everquest 服务器在架构上并没有那么复杂。

《魔兽世界》或任何其他游戏也是如此。

如果你想谈论复杂性,那么运行这些东西的 Windows XP 操作系统呢?它估计有 4000 万行代码? 天知道 Vista 有多少。 或者 Linux 内核呢?

现在在政府、军队和私营部门,你会发现其他投入了数千人年的应用程序。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注