Profissão
Desenvolvedor de Jogos
Descrição da atividade
Essa profissão reúne uma série de diferentes conhecimentos nas áreas de webdesign, programação, gráfica, encenação física, roteiro, entre muitas outras. Com o crescimento do mercado de jogos, graças à popularização de computadores, da ampliação do acesso à internet e todos os outros gadgets que têm surgido nos últimos tempos, essa tem sido uma carreira em franca ascensão, com grandes empresas desenvolvedoras à caça constante de novos talentos.
Funções envolvidas na criação de games:
Produtores – são os colaboradores que ficam responsáveis, em um projeto, por questões como o custo, a viabilidade financeira, além de toda a coordenação do projeto de desenvolvimento;
Artista-gráfico- profissional que cuida de todas as imagens do game, que podem ser tanto desenhadas de forma clássica – no papel – e depois digitalizadas, ou, já criadas de forma digital. Buscam inspiração em filmagens e fotos variadas;
Designers – dedicam-se à jogabilidade, facilidade e interatividade dos controles do game, que precisam ser intuitivos e funcionais para o jogador – além disso, cuidam de normas de uso, regras gerais, cada uma das etapas, bem como das estruturas subjetivas do jogo;
Compositor e Engenheiro de som – trabalham a sonoplastia do jogo;
Engenheiros de som – sonorização do game, como um todo;
Programadores – estudam e colocam à disposição da equipe todos os códigos de linguagem – em termos de programação – que permitirão o desenvolvimento dos jogos;
Testadores – Esses profissionais analisam e reportam erros de software, em uma espécie de controle de qualidade do processo;
Jogador para testes – é um analista que joga a demo do jogo, prestando total atenção, para encontrar possíveis erros ou bugs nos títulos, antes de seu lançamento.
Requisitos mínimos
- Inglês. saber inglês é a diferença entre ter muita informação disponível, ou praticamente nenhuma.
- É muito importante ter uma boa lógica de programação
- Conhecer a linguagem que pretende usar
- Aprender mais sobre o hardware que vai rodar o jogo
- Saber usar bem a engine ou framework escolhido,
- Gostar de games, entre outras coisas.
Ferramentas usadas
Existem diversas ferramentas que possibilitam e simplificam o desenvolvimento de jogos. Elas oferecem funcionalidades que possibilitam um maior nível de abstração e, principalmente, permitem a criação de códigos portáveis. Entretanto apesar, dessas ferramentas contribuírem e facilitarem demasiadamente a programação de jogos. A escolha das linguagens de programação, como Java, Python, C, C++, Assembly, entre outras, são fundamentais. As linguagens de programação oferecem recursos para o desenvolvimento apropriado destes e, portanto, conciliadas às ferramentas simplificam o trabalho do programador na criação de jogos. A ferramenta, então, está relacionada à preferência/escolha da linguagem de programação a qual o programador tenha mais habilidade e há suporte da ferramenta. A ferramenta principal de criação de jogos é o Game Engine (motor de jogo) este tem por finalidade simular a física do mundo real dentro do ambiente do jogo. É considerado a alma de uma animação interativa, pois, é a parte do software que controla e permite a interação dos objetos no jogo. Tudo que envolve a interação no ambiente, desde a iluminação até efeitos avançados de visualização, como a criação de espelhos, é controlado pelo engine.
Exemplo de engines:
Unity3D
Unity 3D é uma opção verdadeiramente acessível para um desenvolvedor de jogos, e tem alguns méritos incomparáveis que outros motores não. O mais importante, você tem que pagar a licença uma vez, e não importa o quão popular o jogo torna-se, você não precisa pagar novamente. Isso certamente soa como uma jogada inteligente financeira, especialmente para iniciantes e novos desenvolvedores.
prós:
- Melhores condições de licenciamento na indústria de jogos.
- Fácil de usar e compatível com todas as plataformas de jogo.
- Grande apoio da comunidade.
- curva de baixa aprendizagem.
- opção popular entre os desenvolvedores.
contras:
- Ferramentas limitada..
- Demorado para fazer jogos com efeitos diversos e complexos.
Unreal Engine
Unreal é um dos motores de jogo mais populares para desenvolver. Gears of War, Batman: Arkham Asylum, Mass Effect, e muitos outros jogos de grande sucesso foram desenvolvidos com este motor.
prós:
- Com tantos desenvolvedores usá-lo, Unreal oferece o maior apoio da comunidade. Várias horas de vida de tutoriais em vídeo e ativos estão disponíveis.
- Melhor suporte e mecanismo de atualização de todos os motores, com uma nova ferramenta introduzida com cada nova atualização.
- Há mais ampla gama de ferramentas fáceis de manobrar sob a sua manga.Existem algumas ferramentas que podem ser manobrado até mesmo por uma criança de escola.
- Compatível com diversas plataformas operacionais, incluindo iOS, Android, Linux, Mac, Windows, e a maioria dos consoles de jogos.
- Os novos termos de licenciamento de US $ 19 por mês e um royalty de 5 por cento apenas se o jogo faz mais de US $ 5.000 tornar Unreal Engine 4 muito mais competitivo do que tinha sido no passado.
contras:
- Alguns desenvolvedores reclamam muito sobre as ferramentas hostis que envolvem um pouco de uma curva de aprendizagem mais elevada.
CryEngine 3
Este motor de jogo tem recebido elogios para a saída de gráficos bonitos. Se você tem um talento especial para visuais bonitos do jogo, este pode ser o motor de jogo ideal para você. Mas este poderoso motor de jogo tem seus problemas também.
prós:
- CryEngine 3 faz com que o ambiente jogo bastante com a sua capacidade de programação de nível artista em sua ferramenta de fluxograma.
- Ele tem a ferramenta de áudio mais poderoso, FMod, no seu interior, os designers de modo som amo este motor, bem como programadores.
- O motor de jogo também oferece o mais fácil de codificação Al de qualquer tecnologia no mercado.
- Para um desenvolvedor iniciante, forma de escala UI vem acessível.
contras:
- A versão gratuita do motor de jogo carece de suporte ao cliente adequado.
- Sendo relativamente novo para a indústria, o motor ainda é encontrar uma comunidade robusta.
- curva de aprendizagem é bastante desafiador para kits.
Tecnologias envolvidas
Exemplos de algumas tecnologias:
Tessellation - Todos os componentes dos jogos modernos, desde personagens até os cenários, são formados basicamente por polígonos de diferentes formas e tamanhos, e quanto menores e mais abundantes eles forem mais realísta é a jogabilidade. Essa é exatamente a função do Tessellation, que diminui o tamanho dos polígonos utilizados nos objetos para criar mais texturas, dando mais vida aos personagens e cenários que parecem reais. Sendo exclusivo de jogos desenvolvidos com a tecnologia DirectX 11 e aplicações que utilizam OpenCL, os benefícios são mais observados nas expressões faciais de personagens e em cenários que incluem pedras, grama ou terra. Naturalmente, existe um peso maior de processamento sobre a placa de vídeo, e por isso os fabricantes de games colocam a configuração do Tessellation em elementos individuais. Por exemplo, é possível melhorar a qualidade da água, do terreno e assim por diante, não existindo uma opção "Tessellation" para todos os elementos de uma só vez no menu de configuração. Outros jogos trabalham com Presets, que são níveis de qualidade específicos para tipos diferentes de placas de vídeo. É possível jogar Crisis 2 em uma placa de vídeo que não seja de altíssimo desempenho, desde que se configure o Preset (que inclui Tessellation, Anti-Aliasing etc) como mínimo, por exemplo.
V-Sync - A grande maioria dos monitores LCD é capaz de exibir 60 imagens diferentes por segundo. Dessa forma, não adianta sacrificar os efeitos e filtros dos games para jogar com mais de 60 FPS (Frames Por Segundo) sendo que o monitor só exibe 60 e descarta o resto. Para manter a taxa de atualização de quadros do monitor igual ao que é gerado pela placa de vídeo, é utilizado um recurso chamado V-Sync, que no caso dos monitores comuns mantém o jogo à taxa de 60 quadros por segundo.
PhysX - Tecnologia originalmente desenvolvida por uma empresa chamada Ageia, que foi adquirida posteriormente pela NVIDIA. Ela permite que os cálculos físicos dos jogos, que anteriormente eram feitos pela CPU, passem a ser processadas na GPU, dando um enorme ganho de qualidade nos jogos que são compatíveis com essa tecnologia.
Exemplo de resultado tangível
A função de um desenvolvedor de games é exatamente desenvolver games. Ele é o responsável por desenvolver e entregar o game de acordo com o que foi estabelecido.