GNU GCC是一种非常常见的编译器,但似乎几乎没有人将其用于AAA游戏之类的较大项目。对我来说,它的工作原理很好,从来没有问题。但是我想知道为什么所有AAA游戏似乎都使用商业编译器(例如Intel Studio)吗?为什么这有关系?GNU GCC还优化了所有系统的代码,而不是仅针对Intel的代码,所以为什么它们会困扰于诸如Intel Studio之类的东西?
GNU GCC是一种非常常见的编译器,但似乎几乎没有人将其用于AAA游戏之类的较大项目。对我来说,它的工作原理很好,从来没有问题。但是我想知道为什么所有AAA游戏似乎都使用商业编译器(例如Intel Studio)吗?为什么这有关系?GNU GCC还优化了所有系统的代码,而不是仅针对Intel的代码,所以为什么它们会困扰于诸如Intel Studio之类的东西?
Answers:
许多非PC平台,包括某些控制台和手持设备,都使用经过修改的GCC作为其主要/唯一的编译器。
在PC上,大多数游戏开发商仅使用Visual Studio的编译器。与引擎设计和图形相比,选择编译器通常对运行时速度几乎没有影响,无论如何,它们都为Visual Studio付出了代价,这归功于其将功能集设置为IDE,相对而言,GCC的安装和入门难度相对较大。并不能改善迭代时间和生产率。与每个人都已经投资的替代方案相比,使用GCC的理由还不够充分。
是的,它可以用于AA游戏。
几乎所有AAA游戏(如果不是全部)都使用商业编译器的原因是,商业产品通常都具有支持,您在处理AAA中可能遇到的任何问题时可以投诉或获得24/7或仅获得尽快的帮助。工业,时间就是金钱。大型团队和公司,尤其是后者,在大笔资金危在旦夕时,不想依靠社区。最好通过合同投资支持。
另一方面,引擎依赖于SDK。如果SDK不支持编译器,则意味着您是一个人,做这种解决办法是无利可图的。
最后是优化。如果您知道很多玩家都在使用Intel,那么您想为他们慷慨地交付您的游戏。