GNU GCC es un compilador muy común, pero parece que casi nadie lo usa para proyectos más grandes como los juegos AAA. Para mí, funciona bien, nunca tuve un problema. Pero me pregunto por qué todos los juegos AAA parecen usar compiladores comerciales como Intel Studio. ¿Por qué eso importa? GNU GCC también optimiza el código para todos los sistemas en lugar de solo Intel, entonces, ¿por qué se molestan con cosas como Intel Studio?
c++
game-industry
c
mingw
LiquidFeline
fuente
fuente
Respuestas:
El compilador de Intel es solo un compilador diferente. GCC ++ y VC ++ producen código de calidad de producción, tan bien como lo hace el ICC de Intel. La principal diferencia radica en 4 áreas clave:
Cuando intentas exprimir hasta el último rendimiento de (en su mayoría) CPU Intel, los estudios AAA están dispuestos a pagar por eso y algo de primavera por ICC. Vea aquí para una gran historia anecdótica. También preste atención a su sección de inconvenientes, donde se acusa a ICC de ejecutar menos que bien en CPU de juegos de instrucciones Intel no genuinas (por ejemplo, AMD).
fuente
Muchas plataformas que no son de PC, incluidas algunas consolas y dispositivos portátiles, utilizan un GCC modificado como su compilador principal / único.
En la PC, la mayoría de los desarrolladores de juegos solo usan el compilador de Visual Studio. La elección del compilador generalmente tiene poco impacto en la velocidad de ejecución en comparación con el diseño del motor y los gráficos, todos pagaron por Visual Studio de todos modos debido a su conjunto de características como IDE, GCC es comparativamente más difícil de instalar y comenzar. y no hace mucho para mejorar el tiempo de iteración y la productividad. Simplemente no hay una razón lo suficientemente convincente para usar GCC en comparación con las alternativas en las que todos ya están invertidos.
fuente
Sí, se puede usar para juegos AA.
La razón por la que casi todos los juegos AAA (si no todos) usan compiladores comerciales es el hecho de que los productos comerciales generalmente tienen soporte y puedes quejarte u obtener ayuda las 24 horas del día, los 7 días de la semana, o lo antes posible cuando se trata de cualquier problema que puedas tener y en el AAA industria, tiempos significa dinero. Los grandes equipos y empresas, especialmente los últimos, no quieren confiar en la comunidad cuando hay mucho dinero en juego. Es mejor invertir en soporte por contrato.
Por otro lado, los motores se basan en SDK. Si el SDK no admite un compilador, significa que está solo y que no es rentable hacer la solución.
Finalmente, la optimización. Si sabes que muchos jugadores usan Intel, qué diablos quieres entregar tu juego con gracia para ellos.
fuente