我只是想知道一些东西在gamedev中是如何工作的:
我知道,性能实际上是至关重要的,所以仍然(而且我认为永远不会)仅仅因为它们的性能而没有地方使用托管语言/平台作为 Java/.NET。但是...最近我在 SO 上的某个地方读到,即使创建游戏的人使用 C++ 作为主要语言,他们实际上并不使用 STL 或 Boost(或其中很多)。认为它与性能有一些共同点,对吧?如果我错了,您能否告诉我避免使用这些库的原因是什么(我认为这会让开发人员的生活更轻松)?是因为许可(Boost)吗?那么EA的STL版本呢?其他工作室也制作自己的版本吗?
游戏编程到底有多“接近金属”?您是否更深入、更靠近机器?您是否有时将汇编用于关键的内部循环,或者 C++ 实际上是您目前使用的最低抽象层?我认为在性能是最重要的此类产品中,分析是非常非常常见的任务 - 但是您有时是否被迫使用汇编来加速某些部件,或者好的 C++ “足够好”?
编辑:对不起,可能还不清楚,但我对有游戏行业经验的人的回答很感兴趣。我对没有游戏开发商业经验的人给出的一些假设不感兴趣。我也对用 C#/Java 创建的一些小众游戏的例子不感兴趣。但是,如果您知道一款看起来比 FarCry2 更好的产品(只是示例,但这里是您最喜欢的现代精美游戏名称),并且完全用 Java/.NET 编写,并且具有与 FarCry2 相似的性能......不要犹豫提到这个产品!谢谢。