Por que os jogos de linguagem sao multiplos?
-- Filosofia
Soluções para a tarefa
Respondido por
0
* Plataforma Alvo - Aquela para o qual o projeto irá ser desenvolvido (Console, Mobile, Windows, etc... ).
* Familiaridade da equipe - É considerado um risco de projeto se a equipe não tiver familiaridade com a linguagem escolhida.
* Requisitos de desempenho e/ou portabilidade - Somente serão elegíveis as linguagens que atenderem esses requisitos.
Bom, diante desses fatores as linguagens de programação mais comuns em jogos são:
Linguagens de baixo nível - Responsáveis por características do núcleo do jogo
* C++ - Linguagem OO(Orientada a Objeto) muito poderosa devido a manipulação direta de memória (através de ponteiros). Esta é de longe a linguagem mais usada na industria de jogos (90% a 95% do mercado) devido ser OO e ao seu excelente desempenho (compilando em binario para a plataforma escolhida). Possui uma curva de aprendizado lenta e está propensa (se não for programado com cuidado) a ter vazamentos de memória (memory leaks) devido a manipulação direta de memória. Visual Studio, Visual C++, Code Blocks, Carbide C++ e Eclipse (com o plugin) são alguns exemplos de IDEs para se trabalhar com C++.
* Java - Linguagem OO de fácil aprendizado e de imensa popularidade. Ganhou grande destaque devido a sua portabilidade. Possui grande aceitação no mundo dos jogos para dispositivos móveis. Apesar de todas essas vantagens Java ainda não é considerada uma linguagem elegível para jogos em algumas plataformas devido ao alto uso de memoria e seu desempenho ser bem inferior ao C++ (porém com a evolução do hardware em alguns anos talvez seja possível). Eclipse e Netbeans são alguns exemplos de IDEs para se trabalhar com Java.
* C# - Linguagem OO de fácil aprendizado e grande popularidade. Com as investidas da microsoft de popularização da plataforma .NET juntamente com o projeto XNA, esta linguagem tem ganhado cada vez mais espaço, mesmo que seja ainda entre hobbistas, estudantes ou indies. Assim como Java, C# possui alto uso de memoria e desempenho inferior ao C++. Visual Studio e Visual C# Express são alguns exemplos de IDEs para se trabalhar com C#.
Linguagens de Script de Alto nível - Responsáveis em geral por implementações de game play. Algumas dessas são criadas especialmente para o projeto da engine, grande parte delas com sintaxe parecida com C.
* Torque Script - Exclusiva para a Torque Engine.
* Unreal Script - Exclusiva para a Unreal Engine.
* LUA - Linguagem de script 100% nacional. Robustez, simplicidade, boa performance, pequena, gratuita, são algumas das qualidades dessa linguagem. Possui sintaxe procedural e semantica extensivel.
* Python - Linguagem de multiplos paradigmas (OO, funcional e imperativo). Produtividade e legibilidade são algumas das qualidades dessa linguagem.
* RUBY - Tambem de multiplos paradigmas, esta linguagem foi criada para aumentar a produtividade dos programadores atravez da minimização de problemas encontrados.
Linguagens de Shaders - Utilizadas na criação de alguns efeitos que são processados na GPU. Todas a seguir possuem sintaxe parecida com C.
* Cg - Linguagem de shader da NVidia.
* GLSL - Linguagem de shader utilizada com OpenGl.
* HLSL - Linguagem de shader utilizada com DirectX.
Vale lembrar que é possivel fazer jogos em linguagens como Action Script (para programar em Adobe Flash) em caso de jogos casuais, ou mesmo fazer jogos simples em qualquer linguagem como VB, Delphi (com object pascal), C, Pascal, etc.
* Familiaridade da equipe - É considerado um risco de projeto se a equipe não tiver familiaridade com a linguagem escolhida.
* Requisitos de desempenho e/ou portabilidade - Somente serão elegíveis as linguagens que atenderem esses requisitos.
Bom, diante desses fatores as linguagens de programação mais comuns em jogos são:
Linguagens de baixo nível - Responsáveis por características do núcleo do jogo
* C++ - Linguagem OO(Orientada a Objeto) muito poderosa devido a manipulação direta de memória (através de ponteiros). Esta é de longe a linguagem mais usada na industria de jogos (90% a 95% do mercado) devido ser OO e ao seu excelente desempenho (compilando em binario para a plataforma escolhida). Possui uma curva de aprendizado lenta e está propensa (se não for programado com cuidado) a ter vazamentos de memória (memory leaks) devido a manipulação direta de memória. Visual Studio, Visual C++, Code Blocks, Carbide C++ e Eclipse (com o plugin) são alguns exemplos de IDEs para se trabalhar com C++.
* Java - Linguagem OO de fácil aprendizado e de imensa popularidade. Ganhou grande destaque devido a sua portabilidade. Possui grande aceitação no mundo dos jogos para dispositivos móveis. Apesar de todas essas vantagens Java ainda não é considerada uma linguagem elegível para jogos em algumas plataformas devido ao alto uso de memoria e seu desempenho ser bem inferior ao C++ (porém com a evolução do hardware em alguns anos talvez seja possível). Eclipse e Netbeans são alguns exemplos de IDEs para se trabalhar com Java.
* C# - Linguagem OO de fácil aprendizado e grande popularidade. Com as investidas da microsoft de popularização da plataforma .NET juntamente com o projeto XNA, esta linguagem tem ganhado cada vez mais espaço, mesmo que seja ainda entre hobbistas, estudantes ou indies. Assim como Java, C# possui alto uso de memoria e desempenho inferior ao C++. Visual Studio e Visual C# Express são alguns exemplos de IDEs para se trabalhar com C#.
Linguagens de Script de Alto nível - Responsáveis em geral por implementações de game play. Algumas dessas são criadas especialmente para o projeto da engine, grande parte delas com sintaxe parecida com C.
* Torque Script - Exclusiva para a Torque Engine.
* Unreal Script - Exclusiva para a Unreal Engine.
* LUA - Linguagem de script 100% nacional. Robustez, simplicidade, boa performance, pequena, gratuita, são algumas das qualidades dessa linguagem. Possui sintaxe procedural e semantica extensivel.
* Python - Linguagem de multiplos paradigmas (OO, funcional e imperativo). Produtividade e legibilidade são algumas das qualidades dessa linguagem.
* RUBY - Tambem de multiplos paradigmas, esta linguagem foi criada para aumentar a produtividade dos programadores atravez da minimização de problemas encontrados.
Linguagens de Shaders - Utilizadas na criação de alguns efeitos que são processados na GPU. Todas a seguir possuem sintaxe parecida com C.
* Cg - Linguagem de shader da NVidia.
* GLSL - Linguagem de shader utilizada com OpenGl.
* HLSL - Linguagem de shader utilizada com DirectX.
Vale lembrar que é possivel fazer jogos em linguagens como Action Script (para programar em Adobe Flash) em caso de jogos casuais, ou mesmo fazer jogos simples em qualquer linguagem como VB, Delphi (com object pascal), C, Pascal, etc.
Perguntas interessantes
Química,
10 meses atrás
Física,
10 meses atrás
Matemática,
10 meses atrás
Matemática,
1 ano atrás
Matemática,
1 ano atrás
Matemática,
1 ano atrás
Sociologia,
1 ano atrás