Nas descrições de cargos, muitas vezes vejo posições chamadas "Programador de Gameplay". O que as pessoas nessa posição fazem?
terminology
Tucker Morgan
fonte
fonte
Respostas:
Quando as empresas falam sobre a contratação de um programador de jogo , o que eles estão falando é de um programador que será responsável pelo código que toca diretamente na experiência do jogo. Ou seja, o programador será responsável por realmente construir os jogos, em vez de mecanismos ou sistemas de jogos maiores. Mas além disso, as coisas variam muito:
Algumas empresas esperam que programadores de jogos implementem a interface do usuário. Alguns não. Algumas empresas esperam que implementem o código de IA, outras não. Alguns esperam que eles implementem código de áudio, outros não. Para ser honesto, a "jogabilidade" no programador de jogabilidade é uma abreviação do setor para "tudo o que não contratamos um especialista para fazer". Portanto, esses programadores precisam ser muito versáteis e precisam aprender rapidamente novas disciplinas.
Passei quase quinze anos sendo programador de jogabilidade no setor comercial, em cinco empresas diferentes.
Minha experiência foi que, em algumas empresas, um programador de jogabilidade é considerado uma posição júnior ou iniciante; afinal, os programadores que trabalham apenas em um jogo individual não precisam ser tão sofisticados quanto aqueles que trabalham em sistemas que precisam oferecer suporte a muitos jogos diferentes simultaneamente, da maneira que os programadores de mecanismo precisam. Nesse tipo de empresa, se um programador de jogabilidade se sair muito bem, ele poderá ser promovido à equipe de motores algum dia, se puder provar seu valor. Ou ele pode se tornar um especialista, se mostrar aptidão para uma área específica.
Em outras empresas, um programador de jogabilidade é considerado uma posição de nível médio; programadores que trabalham em um jogo individual precisam ter alguma experiência útil e serem confiáveis. Os programadores inexperientes podem receber trabalhos indesejáveis para cortar seus dentes (pipelines de dados, ferramentas etc.) e, eventualmente, podem passar para um trabalho de "programador de jogabilidade". Nesse tipo de sistema, um programador de jogabilidade que continua se saindo muito bem pode passar para um papel de liderança do projeto, ou então para a equipe de motores.
Ainda em outras empresas, um programador de jogabilidade é considerado uma posição sênior e uma posição de meio design também; espera-se que esses programadores sejam excelentes e comprovados, mas também tenham fortes sensibilidades e qualificações de design, pois estão tocando diretamente no código que afeta mais fortemente a experiência do jogador com o jogo. Nesse tipo de sistema, um programador de jogabilidade realmente bom provavelmente continuará sendo um programador de jogabilidade para sempre - essa é considerada a posição mais valiosa que ele pode preencher.
Como regra geral, quanto melhores os jogos da empresa, mais alta é a posição que consideram programador de jogos (e, portanto, mais difícil será realmente conseguir um emprego assim).
fonte
Eu sempre acho que ajuda ilustrar pelo exemplo.
Um programador de jogo receberia tarefas ao longo das linhas de: implementar o sistema de combate corpo a corpo, implementar a mecânica de regeneração da saúde ou implementar os controles de salto do jogador.
Um programador de mecanismo (o que você chamaria de alguém que não era especificamente um programador de jogo) receberia tarefas ao longo das linhas de: implementar iluminação diferida, sistema de animação ou camada de rede.
A principal distinção é a de quem é o 'cliente'. Para programadores de jogabilidade, é a equipe de design - a tarefa deles é transformar o design em realidade. Para programadores de mecanismo, geralmente são outros programadores . Os programadores de mecanismo produzem tecnologia e sistemas, que programadores de jogos e criadores de conteúdo podem usar para realizar o design.
Os programadores de mecanismo escrevem códigos que são amplamente independentes de jogos - a mesma tecnologia pode ser usada em vários jogos. Programadores de jogabilidade tendem a escrever um código que é muito específico para o jogo que está sendo feito. E sempre há sobreposição - às vezes, para implementar a jogabilidade, você precisa de um novo código de mecanismo.
A codificação da jogabilidade não é mais difícil ou mais fácil do que a codificação do mecanismo. No entanto, é definitivamente um conjunto de habilidades um pouco diferente; você geralmente precisa ser mais criativo e poder apresentar soluções. Seu objetivo não é criar o sistema reutilizável perfeito (o ideal para programadores de mecanismo), mas criar a melhor implementação de jogo. Portanto, o que pode ser um trunfo na programação de mecanismos (atenção aos detalhes e estruturas bem projetadas) pode ser um obstáculo na programação de jogos (onde a adaptabilidade e o tempo de iteração são mais importantes). Um bom programador de jogabilidade sabe quando fazê-lo corretamente (quando o design é sólido e o código será usado em muitos lugares) e quando fazê-lo rapidamente (quando o design ainda está sendo elaborado, e seu código tem uma boa chance de ser descartado depois de testado).
Acima de tudo, os programadores de jogo precisam poder colaborar com a equipe de design em um nível que os programadores de mecanismo não. Além das habilidades óbvias de comunicação, isso significa que você precisa estar familiarizado com outros designs de jogos muito mais do que os programadores de mecanismo, de modo que quando um designer diz "faça funcionar como Zelda", você sabe do que eles estão falando.
Para aprender a ser um programador de mecanismo, você detalha uma tecnologia e aprende como ela funciona, e talvez implemente sua própria versão; o jogo seria apenas uma arena para mostrar a tecnologia.
Para aprender a ser um programador de jogabilidade, você deve usar o mecanismo de outra pessoa e usá-lo da maneira mais possível. Em outras palavras, se você quer ser um programador de jogos, faça jogos, não tecnologia .
fonte
Exatamente o que parece, um programador que implementa e mantém a mecânica de jogo.
http://en.wikipedia.org/wiki/Game_programmer#Gameplay_programmer
fonte