O novo idioma Go do Google ainda está em sua infância e ainda precisa encontrar amplo uso ou suporte no mundo real. Mesmo assim, parece um experimento promissor, e me pergunto se poderia ter um futuro no desenvolvimento de jogos. Não consegui encontrar muita discussão específica do jogo sobre o Go em outro lugar e achei que uma discussão da CW pode ser apropriada.
Alguns pensamentos:
- Segundo o golang.org , os programas Go "são executados quase tão rapidamente quanto o código C ou C ++ comparável" - rápido o suficiente?
- A coleta de lixo do Go é adequada para jogos?
- Quanta reformulação mental é necessária para criar jogos na terra das goroutines simultâneas?
- O Go é freqüentemente chamado de linguagem de nível "sistemas", com o software de servidor como exemplo. É difícil não pensar em servidores de jogos multiplayer ao ouvir isso.
Seus pensamentos?
Respostas:
Minha opinião sobre suas perguntas:
Na minha opinião, se você tem um desejo forte o suficiente para tentar escrever jogos com um idioma, vá em frente. Obviamente, se você está considerando isso, tem uma paixão por fazê-lo, e por que não seguir essa paixão em vez de se forçar a se adequar à norma? Eu poderia dizer muito mais, mas já disse muito na minha resposta à pergunta: "Ruby é uma linguagem adequada para o desenvolvimento de jogos?"
fonte
Eu escrevi um pequeno mecanismo no Go for OSX (usando o OpenGl para a janela de gráficos). Tenho alguma experiência com os mecanismos de jogos C ++ ( http://morganjeff.weebly.com/ ) e decidi experimentar o Go depois de ler sobre alguns dos recursos que ele oferece.
Desde o lançamento do Go 1.1, o go tem suporte para a maioria dos recursos necessários para escrever um mecanismo de jogo (realmente um núcleo de jogo, pois o mecanismo sugere editores e o que não), incluindo:
Alguns dos benefícios de usar o Go (para um projeto grande):
Alguns benefícios do uso do Go em geral:
Algumas desvantagens do uso do Go:
Existem maneiras de obter memória bruta em movimento (importação "insegura") e irei vincular um artigo que mostra como um programa em movimento pode ser perfilado para memória e velocidade. Em suma, a afirmação de Go de que é um C moderno parece muito verdadeira. Eu acho que ele foi "inteligentemente" projetado (por muito mais razões do que eu mencionei) e, mais importante, está bem documentado. Um mecanismo projetado no Go será um pouco diferente de um mecanismo projetado em C ++ (algo com o qual ainda estou me acostumando), mas o mecanismo Go resolve muitos problemas que não são realmente resolvidos no C ++ (paralelismo, a complexidade da linguagem C ++ e o mau uso da herança).
Aqui está o artigo que prometi: http://blog.golang.org/2011/06/profiling-go-programs.html
-Jeff
fonte
Outra coisa a se pensar é que, como o Go ainda é relativamente novo, talvez ainda não haja ligações para muitas das bibliotecas comuns usadas no desenvolvimento de jogos.
fonte
Não use o Go para desenvolver um jogo, será apenas um albatroz no pescoço. A cadeia de ferramentas para o desenvolvimento de jogos se estende muito mais do que apenas a linguagem em que você escreve, e encontrará obstáculos a cada passo que simplesmente não estarão lá se você optar por algo estabelecido.
Não me entenda mal, adoro brincar com novos idiomas, mas se você estiver tentando fazer com que os jogos escolham um idioma que tenha comunidade e suporte, você estará muito melhor.
fonte