Trabalhando na Indústria de Jogos como Programador

Frequentemente, recebo mensagens de pessoas interessadas em trabalhar na indústria de jogos como programadores. Perguntas típicas são quais são os trabalhos na indústria de jogos, que tipo de habilidades eles precisam, o que devem fazer para se preparar para a inscrição, se for muito desafiador etc.

Como sempre acabo dando exatamente a mesma resposta, pensei em escrever um post. A indústria de jogos é enorme, e só estou experimentando uma pequena parte dela. Tudo em que posso basear minha resposta é minha perspectiva muito limitada, então minha primeira sugestão é não parar em uma fonte e também perguntar a pessoas mais velhas. No entanto, posso lhe dizer o que funcionou bem para mim e você pode decidir se isso se aplica a você. Enquanto escrevia isso, fiz algumas pesquisas no google e tentei vincular os recursos que eu já conhecia e os novos que encontrei aqui para ajudá-lo em sua pesquisa.

Que trabalhos existem por aí

Como mencionei, a indústria de jogos para placa mae é enorme e jogos diferentes podem precisar de estruturas de equipe diferentes. O tipo de trabalho disponível em uma empresa depende parcialmente de seu tamanho.

Em equipes menores, as responsabilidades tendem a convergir para uma única função unificada, como um desenvolvedor independente. A mesma pessoa que faz a arte e a animação acaba fazendo o design do jogo, programação, marketing etc. À medida que a empresa cresce, os papéis são subdivididos em coisas mais específicas. Em empresas muito grandes, você encontraria posições que cuidam de coisas muito específicas, e isso é tudo o que elas fazem. (Além disso, à medida que a equipe cresce, mais do seu tempo é gasto em reuniões)

Então, como mencionei, nas equipes menores, o trabalho é “desenvolvedor de jogos”. A posição basicamente significa que você deve ajudar a terminar o jogo. Você não estará apenas programando, mas também fazendo muitas outras coisas.

Em equipes maiores, suas responsabilidades são mais concentradas. Existem diferentes maneiras de categorizar as diferentes posições disponíveis, que você pode tomar como programador. Um útil para mim é baseado em como o usuário enfrenta essa posição. Como você está perto de escrever código com o qual o usuário está interagindo diretamente. De um lado do espectro, você tem posições como programador de jogos / programadores de interação. Nesse lado do espectro, você não apenas programa a interação, mas também acaba afetando o design do jogo final.

No outro extremo do espectro, você tem posições como programadores de mecanismo. Os programadores de mecanismo escrevem a ferramenta que permite que o outro lado do espectro faça o jogo. Comparados aos programadores de jogos, eles podem nem interagir muito com os projetos que estão sendo desenvolvidos no momento, e seus escopos e cronogramas geralmente vão além dos projetos individuais. No meio, existem várias posições como programação gráfica, programação de IA, artistas técnicos, desenvolvedores etc. Aqui estão algumas das posições como exemplo com explicação.

placa mae barata

Não sei como a maioria das pessoas encontra sua especialização em placa mae atx. O meu começou com o Game Design. Foi isso que estudei na universidade, depois de fazer alguns jogos menores, percebi que realmente gosto de arte tecnológica. Eventualmente, isso leva à programação gráfica. Já ouvi muitas histórias semelhantes na indústria de pessoas vindas de disciplinas muito diferentes e terminando em lugares aleatórios. Portanto, se você possui habilidades de programação e deseja saber que tipo de tarefas é a sua xícara de chá, faça alguns jogos menores e saberá o que mais gosta.

Que habilidades eu preciso

O que você precisa aprender é obviamente baseado no tipo de programação que você deseja fazer. Todos esses trabalhos diferentes são desafiadores por si só, mas de maneiras muito diferentes. Como programador gráfico, você lidará com muita álgebra linear, algumas estatísticas e algumas integrais e cálculos para a equação da iluminação. Esses são tópicos desafiadores e levam anos para serem dominados. Como programador de jogos, você pode não precisar muito de álgebra linear avançada, mas precisa desenvolver um talento especial para o design e a sensação do jogo. Existe esse limiar fascinante em que alterar um número mágico de 2,15 para 2,157 transforma o jogo de nada divertido em envolvente. Compreender como programar interações para se sentir de uma certa maneira é uma tarefa desafiadora. Como programador de mecanismo, você enfrentará novamente um conjunto totalmente diferente de desafios. Você entendeu a ideia.

Uma coisa que é a mesma em todas essas posições diferentes é a programação. Que você deve aprender a poder fazer jogos. Você pode começar com scripts, com uma linguagem como C # ou estruturas de script visual como Blueprints. Você pode criar jogos incríveis com isso, ganhar dinheiro e criar valor para outras pessoas. Se você gosta de fazer coisas de back-end, deve aprender uma linguagem como C ou C ++ que o force a lidar com conceitos de nível inferior. Normalmente, as coisas mais back-end também exigem mais bases matemáticas e de ciência da computação.

Na minha opinião, os conjuntos de habilidades mais importantes são habilidades pessoais e organizacionais. Jogos são um esforço de equipe. As pessoas investem emocionalmente nos jogos que estão fazendo. Os argumentos podem esquentar, as emoções obscurecem o julgamento e você é forçado a tomar decisões constantemente com base em suposições maciças que são difíceis de avaliar nesse momento. É essencial ter a habilidade humana em prestar atenção nos outros e criar um ambiente de trabalho agradável, onde você e seus colegas gostam de participar, o que pode não ser o mais óbvio para as pessoas que desejam começar.

Como posso me preparar

Quanto a onde você pode aprender tudo o que foi dito acima, o lado técnico, você pode aprender com os livros e realizando projetos. As habilidades humanas, você só pode desenvolver interagindo com outras pessoas e trabalhando em equipe; no entanto, existem muitos livros de habilidades pessoais por aí também. As universidades são boas opções, pois oferecem a ambos, se você não precisar vender um rim para pagar sua taxa de matrícula.

Na indústria de jogos, seu portfólio com uma placa mae barata geralmente é muito importante. Ainda existem empregos em que você precisa de um determinado currículo para se qualificar (embora na maioria das vezes esses requisitos sejam ridículos para o cargo e o salário) e alguns pedem que você faça um teste ou dois. Eu pessoalmente nunca tive que fazer um teste (graças a Deus). Gostaria de acreditar que é porque tenho milhares de linhas de código no Github com documentação. As ofertas de emprego geralmente são baseadas em coisas específicas que eu já fiz e divulguei.

Por isso, com base em minha própria experiência pessoal, eu sempre sugiro àqueles que pedem, para iniciar projetos pessoais, documentá-los bem e escrever sobre eles. A disponibilização desse código e a interação com outras pessoas ajudam a aprender sobre a área em que você deseja trabalhar, cria um portfólio e expande sua rede ao mesmo tempo. O benefício adicional é que você pode ajudar outras pessoas sem perceber. O que pode parecer super óbvio para você, pode ajudar alguém que começou um ano depois de você e está tentando aprender as coisas que você já aprendeu.

placa mae

Outra coisa que me ajudou muito foi encontrar os idosos e os especialistas no tópico em que me interessava. A maneira como fiz isso foi participando da Moby Games e pesquisando os jogos que conhecia e gostei, verificando quem fazia a arte da tecnologia e programação gráfica para eles. Então tentei descobrir se essas pessoas estão no twitter e comecei a segui-las. Seguir os tweets deles e perceber que não tenho ideia do que eles estão falando me ajudou a perceber quais são as coisas mais importantes que preciso aprender para me tornar como elas. Uma das primeiras coisas foi a álgebra linear. Com o passar do tempo, reuni coragem e perguntei a algumas dessas pessoas sobre perguntas específicas que eu tinha. Sua vontade de responder com paciência e me ajudar a envolver minha cabeça em conceitos difíceis, fornecer conselhos gerais sobre os caminhos a seguir e dar visibilidade aos meus projetos me surpreenderam. Kostas Anagnostou, Peter Shirley, Alan Wolfe e Morgan McGuire foram alguns dessa categoria e muitos mais.

A última coisa que funcionou bem para mim foi encontrar colegas que também estavam interessados ​​em aprender as coisas que eu estava aprendendo sobre motherbord e que estavam no meu próprio nível. Estar em uma mídia social como o Twitter é útil para coisas como essas. É claro que os colegas ajudam na motivação, mas o principal benefício é que aprendi com eles quase tanto quanto aprendi com os idosos. E eu ainda faço.

O desenvolvimento de jogos é desafiador

Sinceramente, para mim sim. Não por razões que você possa pensar. Eu amo fazer jogos. Eu amo fazer jogos um pouco demais, talvez. Fazer jogos pode se tornar uma montanha-russa emocional. É tão divertido que preciso definir ativamente limites para quanto tempo gasto fazendo isso. Eu sei que não estou sozinho nisso, pois vejo que as pessoas estão muito dispostas a sacrificar sua saúde e felicidade para realizar seu jogo. Um amigo costumava correr à noite no início de um projeto para poder dormir, o que estava ficando cada vez mais difícil quando ele estava animado para o jogo. Eu regularmente tenho que forçar meu cérebro a parar de pensar nos problemas envolventes que surgem no desenvolvimento de jogos. Essa pode ser uma das razões pelas quais a crise é um tópico na indústria de jogos. As pessoas desfrutam de seu trabalho o suficiente para estarem dispostas a suportar salários mais baixos e condições injustas.

Outro aspecto é que seu público também está muito envolvido. Embora isso às vezes seja uma coisa boa, ele tem suas desvantagens. Por esses motivos (e alguns outros), gosto de divergir de tempos em tempos de jogos e trabalhar em outras coisas. O desenvolvimento de jogos é apenas uma parte inteligente do que você poderia fazer depois de adquirir um determinado conjunto de habilidades.

Site Footer