O GNU GCC é um compilador muito comum, mas parece que quase ninguém o usa para projetos maiores, como jogos AAA. Para mim, funciona muito bem, nunca tive um problema com isso. Mas eu me pergunto por que todos os jogos AAA parecem usar compiladores comerciais como o Intel Studio? Por que isso Importa? O GNU GCC também otimiza o código para todos os sistemas, e não apenas para a Intel; então, por que eles se preocupam com coisas como o Intel Studio?
c++
game-industry
c
mingw
LiquidFeline
fonte
fonte
Respostas:
O compilador da Intel é apenas um compilador diferente. GCC ++ e VC ++ produzem código de qualidade de produção, da mesma forma que o ICC da Intel. A principal diferença está em 4 áreas principais:
Quando você está tentando extrair todo último desempenho dos (principalmente) CPUs Intel, os estúdios AAA estão dispostos a pagar por isso e um pouco de primavera pela ICC. Veja aqui uma ótima história anedótica. Preste atenção também na seção de desvantagens, em que a ICC é acusada de executar menos do que bem em CPUs não originais do conjunto de instruções da Intel (por exemplo, da AMD).
fonte
Muitas plataformas que não são de PCs, incluindo alguns consoles e dispositivos portáteis, usam um GCC modificado como seu compilador principal / único.
No PC, a maioria das casas de desenvolvimento de jogos apenas usa o compilador do Visual Studio. A escolha do compilador geralmente tem pouco impacto na velocidade do tempo de execução em comparação com o design e os gráficos do mecanismo, todos eles pagaram pelo Visual Studio de qualquer maneira, devido ao seu conjunto de recursos como um IDE, o GCC é comparativamente mais difícil de instalar e começar. e isso não faz muito para melhorar o tempo e a produtividade da iteração. Não há uma razão suficientemente convincente para usar o GCC em comparação com as alternativas em que todos já investiram.
fonte
Sim, pode ser usado para jogos AA.
A razão pela qual quase todos os jogos AAA por aí (se não todos) usam compiladores comerciais é o fato de que os produtos comerciais geralmente têm suporte e você pode reclamar ou obter ajuda 24/7 ou apenas o mais rápido possível ao lidar com qualquer problema que possa ter e no AAA indústria, tempos significa dinheiro. Grandes equipes e empresas, especialmente as últimas, não querem contar com a comunidade quando há muito dinheiro em jogo. É melhor investir em suporte por contrato.
Por outro lado, os mecanismos contam com SDKs. Se o SDK não oferecer suporte a um compilador, isso significa que você está sozinho e não é lucrativo fazer a solução alternativa.
Finalmente, otimização. Se você sabe que muitos jogadores usam a Intel, você quer oferecer seu jogo graciosamente por eles.
fonte