GNU GCC est un compilateur très courant, mais il semble que presque personne ne l'utilise pour des projets plus importants comme les jeux AAA. Pour moi, ça marche très bien, je n'ai jamais eu de problème avec ça. Mais je me demande pourquoi tous les jeux AAA semblent utiliser des compilateurs commerciaux tels que Intel Studio? Pourquoi est-ce important? GNU GCC optimise également le code pour tous les systèmes plutôt que pour Intel, alors pourquoi s'embêter avec des choses comme Intel Studio?
c++
game-industry
c
mingw
LiquidFeline
la source
la source
Réponses:
Le compilateur d'Intel est juste un compilateur différent. GCC ++ et VC ++ produisent un code de qualité de production, tout comme l'ICC d'Intel. La principale différence réside dans 4 domaines clés:
Lorsque vous essayez de tirer le maximum de performances des processeurs Intel (principalement), les studios AAA sont prêts à payer pour cela et un peu de printemps pour ICC. Voir ici pour une grande histoire anecdotique. Faites également attention à sa section sur les inconvénients, où ICC est accusé de ne pas fonctionner correctement sur des processeurs Intel non authentiques (par exemple AMD).
la source
De nombreuses plates-formes non PC, y compris certaines consoles et ordinateurs de poche, utilisent un GCC modifié comme compilateur principal / uniquement.
Sur le PC, la plupart des maisons de développement de jeux utilisent simplement le compilateur de Visual Studio. Le choix du compilateur a généralement peu d'impact sur la vitesse d'exécution par rapport à la conception du moteur et aux graphiques, ils ont tous payé pour Visual Studio de toute façon en raison de son ensemble de fonctionnalités en tant qu'IDE, GCC est relativement plus difficile à installer et à démarrer. et cela ne fait pas grand-chose pour améliorer le temps d'itération et la productivité. Il n'y a tout simplement pas de raison suffisante pour utiliser GCC par rapport aux alternatives dans lesquelles tout le monde est déjà investi.
la source
Oui, il peut être utilisé pour les jeux AA.
La raison pour laquelle presque tous les jeux AAA (sinon tous) utilisent des compilateurs commerciaux est le fait que les produits commerciaux ont généralement un support et vous pouvez vous plaindre ou obtenir de l'aide 24/7 ou tout simplement dès que possible pour résoudre tout problème que vous pourriez avoir et dans l'AAA l'industrie, le temps signifie de l'argent. Les grandes équipes et les entreprises, en particulier ces dernières, ne veulent pas compter sur la communauté lorsque de gros fonds sont en jeu. Il vaut mieux investir dans le support par contrat.
D'un autre côté, les moteurs reposent sur des SDK. Si le SDK ne prend pas en charge un compilateur, cela signifie que vous êtes seul et que la solution de contournement n'est pas rentable.
Enfin, l'optimisation. Si vous savez que beaucoup de joueurs utilisent Intel, diable vous voulez leur offrir gracieusement votre jeu.
la source