Teixeira
(usa Linux Mint)
Enviado em 26/05/2013 - 11:06h
Weiller, a criação de jogos bem elaborados é tarefa muito extensa, e isso geralmente desanima os voluntários.
A falta de interesse, de retorno, o desincentivo, as críticas desfavoráveis então, nem se fala.
Em função disso, é que não temos muitos jogos para Linux ou demais sistemas operacionais open source.
Quanto à linguagem de programação, é importante observar que jogos mais elaborados terão bibliotecas imensas, que precisarão ser manipuladas com rapidez e eficiência.
As linguagens modernas são ótimas
sob o ponto de vista do programador, mas fazem cair bastante o desempenho, pois elas mesmas incluem bibliotecas pesadíssimas (os modernos processadores, aliados a uma considerável quantidade de memória, podem fazer com que isso não seja sentido pelo usuário).
Por outro lado, o Assembly, que seria ideal, além do esforço sobrehumano exigido para construir um "joguinho melhorado", certamente apresentaria grandes problemas de portabilidade.
Jogos em Flash, a meu ver, são "meras curiosidades", e ao que parece, não dá para se fazer nada "sério".
Existem entretanto mecanismos ("engines") já disponibilizados para a elaboração de jogos de corrida, de tiro em primeira pessoa, etc. e que podem ser utilizados pelo programador.
Agora uma consideração:
Você já deveria conhecer e ser fluente em pelo menos uma ou duas linguagens de programação.
Se você pretende aprender uma linguagem para somente então começar a programar jogos, acho que está seguindo por um caminho errado.
Você deveria primeiro idealizar, projetar o jogo: O que ele faz, como seriam os cenários, as cores, os gráficos, a "pirotecnia", quais seriam os objetivos e as restrições, como seria a navegabilidade, tudo nos mínimos detalhes.
Depois então escolheria a linguagem de programação.
As coisas ficariam bem mais simples assim.
Não sei se você já domina alguma linguagem de programação, mas de qualquer forma fica a dica para outros visitantes do VOL:
Programar não é apenas "encadear comandos" de uma determinada linguagem; É saber
exatamente o que cada comando faz ou é capaz de fazer, conhecer o seu poder e as suas limitações, saber onde uma linguagem se enquadra melhor para um determinado tipo de aplicação, etc.
Ou seja, tem de haver domínio sobre o assunto.
Mal comparando, aprender a programar é como entrar na auto escola (atualmente "Centro de Formação de Condutores"), onde se aprende
a tirar a Carteira Nacional de Habilitação.
Já de posse da CNH, aprende-se então
a dirigir já com o veículo em mãos, no trânsito do dia a dia, isto é, através da experiência que se vai acumulando.
Na prática, um programador não irá passar a vida fazendo programinhas elementares do tipo "Alô Mundo" ou "Jogo da Velha"...
Uma das coisas mais difíceis é arranjar estagio na área de programação, pois estagiários, dentro de um setor de produção, atrapalham muito mais que ajudam. Dessa forma, é difícil conseguir um estágio em uma área exclusiva para estágios, pois em geral as empresas precisam de programadores "de infantaria", para "campos de batalha" reais.
(A gente costumava chamar os nossos estagiários de "estagnários")...
Isso cria um círculo vicioso, pois somente se aprende a programar é programando mesmo.
Porém o programador inexperiente não consegue efetivamente contribuir. Pelo contrário, ele precisa primeiro adquirir experiência.
Então o estágio deveria ser para programadores experientes.
Mas isso então não seria "estágio".
Romper esse loop é bastante dificil, mas não impossível.
Um programador vive de vencer desafios, e talvez esse seja o primeiro deles.
Às vezes um programador tem "matar um leão por dia", e às vezes "um leão-e-meio".
Não entenda as minhas palavras como um desestímulo para as suas pretensões, mas apenas um conselho no sentido de preparar-se melhor para o pulo. Tomar mais ar, dar mais tonicidade aos músculos, sei lá.
Boa sorte!