Boa tarde, Habr.
Você recebeu meus dois artigos anteriores (
um ,
dois ) muito calorosamente e até avançou para o topo, para que a continuação não demorasse muito. Apenas meio ano, não muito tempo. Para quem não conhece - meu nome é Tim, tenho 30 anos, sou corretor de imóveis e agora estou tentando me tornar desenvolvedor de jogos, ainda sem saber programar. E como tudo vai - eu vou lhe dizer e mostrar. O artigo é colorido, prepare-se. Venha para o corte, bem-vindo.
O financiamento coletivo não é uma panacéiaQuem leu meu artigo anterior sabe que eu estava desenvolvendo meu próprio jogo para PC - Shadows of Forwood. Para ser mais preciso, criei uma versão demo muito pequena com uma descrição e a coloquei em acesso aberto onde quer que minhas mãos chegassem. Eu trabalhei no projeto sozinho, então resolvi todas as dificuldades por conta própria. Então, em algum momento, decidiu-se usar uma plataforma de crowdfunding para arrecadar fundos para o desenvolvimento.
Assim que foi feito, o projeto foi lixado e lançado em uma das plataformas domésticas. A quantidade solicitada não era muito grande, mas não pequena - 360.000 rublos. De acordo com meus cálculos, isso seria suficiente para concluir o jogo antes do final do ano. Infelizmente, a quantia exigida não foi acumulada; no final do período, eu mal havia atingido a marca de 70.000 mil, mas isso não foi uma surpresa para mim.

Sou adulto e entendi perfeitamente que as chances de sucesso aqui são muito pequenas, então estava pronto para esse resultado antes mesmo da pesquisa por uma plataforma de financiamento coletivo. No entanto, continuei desenvolvendo Shadows e estou trabalhando nelas até hoje. Você pode até dizer que agora relaxo um pouco quando me sento para esse projeto e o lembro. Há algo de belo nessa escuridão da fantasia escura medieval.



No fracasso do crowdfunding, houve vantagens. Como não tinha obrigações com os investidores, decidi mudar o foco principal para alguns projetos simples. Bem, o que poderia ser mais fácil do que um desenvolvedor de jogos para dispositivos móveis (isso é uma piada).
Android e BDSMSe você precisa de um gênio para satisfazer seus desejos, o Unreal Engine 4 é a escolha certa. Ao iniciar o trabalho com a plataforma Android, decidi entrar no mesmo rake que no início da minha jornada: criar um clicker. Dessa vez, a decisão foi deliberada e o clicker se tornou um remake do meu primeiro ofício. Não poderei chamá-lo de jogo, esse projeto foi necessário para entender meus recursos e o desempenho do UE4 em uma plataforma móvel.
Eu posso dizer que eu fiz. Toda a funcionalidade planejada foi implementada sem problemas, mas o desempenho é o gargalo em que entrarei tantas vezes mais. E já esfregou mais de um calo.



Graças a este projeto, entendi o pipeline de trabalho no Android. O problema mais difícil aqui é, como você pode imaginar, a otimização. Havia muitos guias na rede informando sobre como reduzir a carga no telefone do usuário: como definir iluminação, ajustar materiais e efeitos, como otimizar o HUD. Depois de ter digerido tudo isso, comecei imediatamente a trabalhar no próximo projeto.
Dungeon Trails se tornou um brinquedo no qual tentei aplicar toda a minha pequena experiência acumulada. Não há materiais complexos, apenas um texto apagado, nenhuma iluminação ou sombras processuais (não existe e não haverá uma única fonte de luz em todo o campo de jogo), nem funções complexas \ por quadro.
O resultado é, como se costuma dizer agora - nem ótimo, nem terrível. Pelo menos este produto eu posso chamar de jogo completo para o telefone. E meu público gostou. Mecânica simples de um jogo de cartas, música, efeitos especiais, aleatoriedade e voilá. Não insiro links, não é difícil encontrá-lo no Google Play.



Em termos de conteúdo, este jogo acabou sendo muito barato: foram necessários cerca de US $ 150 para fazer tudo. Um conjunto de monstros, um conjunto de ícones e efeitos, várias faixas de música. A idéia de desenhar tudo sozinho rapidamente entrou no lixo, eu não queria gastar muito tempo. No campo de jogo, existem várias malhas de 6 a 12 polígonos. O volume do aplicativo é de cerca de 50 megabytes. Sem música - mais de 35 megabytes. É bastante compacto.
Mas em termos de desempenho, nem tudo é tão sem nuvens. Eu continuo a simplificar os projetos e jogar fora tudo o que é desnecessário, tanto no jogo quanto na memória, mas ainda há espaço para melhorias. Além disso, alguns modelos de telefone às vezes geram surpresas e também precisam ser tratados.
Davi e GoliasAinda assim, jogos simples de cartas não são o resultado com o qual eu estava contando. Mesmo em plataformas móveis, existem projetos que me causam a sombra de um sorriso invejoso e o desejo de pronunciar a frase de Zohan: “Eu vou te destruir!”. Por exemplo, The Elder Scrolls: Blades ou simplesmente Blades da Bethesda.
É por isso que eu tenho na cabeça do mágico ainda existem projetos nos quais estou trabalhando agora. Um deles é o rival Blades, até agora, no entanto, sem nome. Jogos como "Legend of Grimrock", "Darkest Dungeon" e, de fato, "Blades" me pressionaram a criá-lo. Eu quero perceber a mistura assassina deles em breve.



Salas de masmorra intermináveis e geradas processualmente, montanhas de saques, artesanato, desenvolvimento de personagens e seu pequeno povoado, uma pilha de minijogos e muito mais. No momento, este é o projeto Android mais difícil para mim (e muito mais complicado que "Shadows of Forwood"), mas o apetite chegou e precisa ser extinto. Agora, o projeto em alfa profundo, no entanto, funciona de maneira estável em um smartphone.
O grande problema para mim foi o uso do Point Light nessas mesmas masmorras, porque o UE4 tem restrições muito rígidas em seu número. Mas eu usei isso para minha vantagem. Procurar uma fonte de luz se tornará um dos recursos do jogo. Em geral, o desenvolvimento para o Android acabou sendo um verdadeiro festival de compromissos. Colorido como um festival, com fogos de artifício.
Mas nem tudo é tão sem nuvens neste reino.
Solução de problemasQue tipo de palavra, hein? Você se sente inteligente imediatamente. Quando eu estava começando a aprender a UE4, deparei-me com o seguinte tópico: "Não comece a trabalhar com o Unreal Engine 4 se você não estiver pronto / incapaz de aprender". Parece-me que esta frase deve estar acima do botão "Download UE4" no site oficial. Adoro ler e ler bastante, mas nunca na minha vida tive que ler / assistir e entender tanta literatura altamente especializada em diferentes idiomas quanto ao trabalhar com esse mecanismo.
Inicialmente, o nível de problemas que tive estava associado a erros típicos, desenhos não otimizados ou descuido banal. Todos esses problemas foram resolvidos com uma simples pesquisa no Google ou Youtube. Três a quatro meses depois, esses problemas foram deixados para trás e eu fui para o segundo nível de Solução de problemas.
Agora surgiram problemas ao trabalhar com materiais, criar desenhos complexos e exibir erros do próprio mecanismo (um pouco raramente). Para resolver esses problemas, o Google e a documentação oficial ainda eram usados. Essa etapa foi a mais indolor, pois naquele momento todas as minhas dificuldades eram padrão para a maioria dos usuários da UE4. Quase sempre era possível encontrar várias soluções para qualquer problema, pintadas em detalhes e com explicações. Como resultado, aprimorei significativamente meu entendimento do inglês e do próprio mecanismo.
O estágio mais difícil para mim foi o terceiro (estágio atual). Agora posso resolver quase qualquer problema sem abrir uma página ou documentação do navegador, e minha principal dor de cabeça são os erros / limitações do mecanismo, que ele lança a seu critério. Mas também aprendi a combatê-los. Por exemplo, a pior coisa que o UE4 pode lançar no momento é o erro "Linha: 107". Em algum momento, o mecanismo pode danificar um dos arquivos (ou perder um link para ele) .uasset ou .umap, após o qual o projeto simplesmente para de abrir ou trava durante qualquer operação após a abertura.
Esse problema é resolvido de maneira simples, mas não indolor. Existem exatamente duas soluções.
Primeiro: exclua os ativos da pasta do projeto, um por um, e aguarde até que o projeto comece a abrir, isolando o ativo quebrado, excluindo-o e recriando-o.
Segundo: faça o backup anterior do projeto e modifique-o.
A primeira opção pode ser útil se o projeto for pequeno, mas se o projeto for grande, mas não houver backups reais, então ...

Portanto, tendo aprendido com minha experiência amarga, prefiro um backup quase diário e a segunda opção.
Os erros restantes que ocorrem durante o trabalho são tão raros que, na melhor das hipóteses, você pode encontrar 1-2 tópicos abertos criados há um ano e meio sem soluções. Você tem que girar a si mesmo. Cansativo, mas com isso sinto uma estranha satisfação.
EpílogoSeis meses se passaram desde a publicação do post anterior, terminei dois pequenos projetos e estou trabalhando em mais três. O mesmo “Shadows of Forwood”, “TES rival: Blades sem título” e um projeto com tema espacial. O número de horas gastas atrás do motor não pode mais ser contado; eu estou fazendo esse negócio quando acordo até tarde da noite, até que meus olhos começam a doer.
E ainda tendo uma profunda satisfação todos os dias. Embora chegue ao ponto de que, mesmo em um sonho, vejo as soluções mais ideais para alguns desenhos (clínica, como eles dizem).
Se falamos de planos para o futuro, quero terminar meus projetos e procurar um emprego ou um emprego de meio período como designer de jogos (estudante). Na verdade, tudo isso deve se tornar meu portfólio, espero que seja suficiente.
Eu nunca teria pensado que um simples desejo de fazer meu brinquedo me levaria a um caminho de vida tão interessante e ao mesmo tempo cansativo.
Por tradição,
eu tenho um grupo no VKontakte , onde compartilho notícias toda semana e, às vezes, com mais frequência. Se você está subitamente interessado em algo ou conhece um trabalho interessante, seja bem-vindo. E estou voltando ao desenvolvimento e me preparando para responder a perguntas, se você tiver alguma :)