Jogo IMPUNES: O próximo GTA brasileiro

Introdução

Este é só o início de algo grandioso.

Mas vamos direto ao ponto, deixando os detalhes pro final…

 

Se você perdeu, veja a postagem anterior:

Jogo IMPUNES: Chuva e muito mais!

Sobre o retorno do jogo:

Contratações para trabalhar no jogo IMPUNES

E hoje terminamos a página do jogo no site da 2nibble:

2nibble.com/impunes

Lá explica, com detalhes, toda a nossa ideia com este jogo. Eu recomendo altamente que leia para entender a nossa proposta e objetivo, afinal, este jogo é muito mais do que um GTA-like.

 

Não havia pessoas para trabalhar no projeto, portanto ele foi pausado durante vários meses para trabalharmos em um outro jogo menor, mas o destino nos trouxe de volta.

Voltamos a trabalhar no jogo em Dezembro de 2022, dentro de somente 2 meses, nós fizemos isto:

 


O que foi feito:

  • Implementado sistema de: carro, caminhão, reboque, ônibus articulado, moto, quadriciclo, triciclo, bicicleta e tricicleta.
  • Reimplementado o sistema de entrar e sair de qualquer tipo de veículo (pronto para produção, mas falta animações corretas). Inclui posicionamento dinâmico da mão na maçaneta e uso de física real para abrir e fechar a porta.
  • Animações de locomoção trocadas e manualmente ajustadas, e controle de personagem altamente melhorado para uma movimentação mais suave e polida.
  • Sistema de vegetação avançado com subsurface scattering, interação ao pisar em cima do mato, reação de vento realista, ajuste dinâmico de coloração que varia com o local e estação do ano e muito mais.
  • Novo sistema de fogo mais avançado (havíamos criado um próprio mas decidimos comprar um melhor), integrado com o sistema de vegetação: o fogo de espalha dinamicamente pelas plantas e árvores, deixando-as queimadas.
  • Criado 6 armas: FABÉLICA FA FL (fuzil; 4 peças opcionais), FABÉLICA IRNU (sniper; 3 pinturas),Teseu PL 92 (pistola; 4 pinturas), Teseu RL 88 (revolver; 5 pinturas), FBA Pump Hunter 3 (shotgun; 2 pinturas), CSRND (bazuca anti-tanque). Elas sujam e desgastam gradualmente.
  • Criado 2 granadas explosivas: redonda e cilíndrica.
  • Criado 4 armas brancas: canivete “corta-fumo”, facão, faca tática, taco de baseball (madeira velha; arame farpado; alumínio). Elas gradualmente se sujam de sangue e outras sujeiras.
  • Criado 4 modelos de garrafas: refrigerante 600ml, refrigerante PET 2L, cerveja 350ml, dose/cachaça 1L. Inclui líquido dinâmico com física. A de cerveja e cachaça pode ser quebrada e usada como arma branca.
  • Criado uma árvore brasileira, com 9 variações: Terminalia Catappa.
  • Mais de 100 ícones pro minimapa.
  • Dezenas de outdoors e rótulos de garrafas.
  • Design próprio para as notas de dinheiro.
  • Implementado HBAO (Horizon Based Ambient Occlusion) que também inclui color bleeding para simular iluminação indireta.
  • Implementado neblina volumétrica.
  • Implementado um sistema mais avançado de GPU instancing para melhor otimização.
  • Adicionado algumas vegetações pelo mapa (ainda serão reposicionadas).
  • Adicionado efeitos visuais realistas e detalhados para boca-de-fogo (muzzle flash) e impacto das balas das armas (como detritos caindo no chão com física).
  • Adicionado novos sons para as armas.
  • Criado um sistema de expressões faciais e humor, controlado por scripts e ações específicas.
  • Melhorado algumas texturas e rosto dos personagens (mas ainda é principalmente um placeholder, muita coisa ainda mudará).
  • Criado um sistema de roda de ações/interações modular. Útil para futuras adições de mecânicas no jogo.
  • Criado ação para portões horizontais: você pode destrancar, trancar e empurrar o portão com a mão para ambos os lados. Ainda falta animação de arrombar.
  • Implementado um sistema modular de execução e gerenciamento de sons.
  • Criado som ambiente de vento dinâmico, que mistura 3 sons com base na intensidade.
  • Novo estilo de menu de pausa, agora transparente em tons de cinza, com fundo borrado (blur).
  • Criado um sistema de menu genérico modular que é construído dinamicamente por scripts internos ou externos.
  • Criado um shader similar ao dual-pass do SkyGfx que corrige várias limitações da renderização de texturas transparentes em jogos que usam deferred rendering (ainda não implementado no mapa, isto corrige os serrilhados nas texturas de grades).
  • Criado um shader de interior falso “parallax” de múltiplas camadas (interior, cortina, moldura). O algoritmo de profundidade foi criado por um expert, similar à solução de jogos como Forza e Spiderman (muito melhor que GTA Trilogy). Foi adicionado texturas separadas para o interior aceso e apagado, máscara de luz, vertex color para variar a cor, a luz interior atravessa levemente as cortinas, o vertex alpha varia a textura das cortinas, há correção para não distorcer vidros largos, suporta superfícies curvadas etc. Tudo otimizado num único polígono. Ainda não implementado no mapa.
  • Editado todas as quadras para serem um pouco mais espaçosas e arredondadas (leftover de quando este mapa era pra mobile). Ainda não implementado no jogo.
  • Implementado um sistema de sangue volumétrico 3D, que inclusive cai na superfície formando uma mancha com a mesma forma que o sangue foi tocado.
  • Criado um sistema de texto-para-textura. Você pode digitar qualquer texto, escolher estilo de fonte, cor etc, e esse texto será adicionado como pintura ou gravuras nas armas e outras coisas. Por exemplo, você pode ter um taco de baseball escrito “DIÁLOGO”, “BOA NOITE” etc. Também será usado para variar as placas dos veículos.
  • Mapa do jogo totalmente replanejado por uma pessoa formada em urbanismo. Agora maior, mais interessante, mais natural, e melhor inspirado na cidade real.
  • Iniciado a criação de uma ferramenta própria para criar mods pro jogo, como veículos, armas e objetos.
  • Iniciado a criação de um sistema próprio de multiplayer online.
  • Entre várias outras adições e melhorias menores…

É tanta coisa que, mesmo com controle de versões, eu (Junior_Djjr) gastei mais de 2 horas só para fazer a lista acima… Foram 2 dias para fazer este devlog, estou exausto.

 

Sistema de carros

Quando o IMPUNES (2NTD) ainda era um jogo top-down pra mobile, nós compramos o Randomation Vehicle Physics (hoje grátis e abandonado) devido ao estilo arcade e modular. Mas estava muito abaixo dos nossos planos atuais, que é um jogo mais realista e detalhado, portanto decidimos jogar fora tudo o que fizemos com ele, e comprar o Realistic Car Controller, que é muito melhor, e tem uma excelente física semi-arcade/corrida. Eu sinceramente gostei mais desse controle de carro do que o do GTA V.

Os sons também precisarão ser recriados, pois queremos implementar o FMOD (usado por vários jogos, inclusive Assetto Corsa, inclusive, se você fez sons pro FMOD, nós podemos te pagar uma licença de uso).

 

Sistema de motos e bicicletas

Pra o sistema de motos, estamos usando Simple Motocross Physics, e para bicicleta, Simple Bicycle Physics. Ambos são basicamente o mesmo sistema com leves alterações, e sinceramente, longe de ser production-ready, mas funciona bem e eu gastei uns bons dias corrigindo e melhorando o sistema, ainda há muito o que melhorar e expandir (por exemplo, não há danos ainda e o sistema de empinar está muito básico), mas já está incrivelmente divertido e natural de pilotar. Eu realmente não esperava que este jogo tivesse uma física de moto e bicicleta tão legal! E há até tricicleta (necessário pra nossa cidade)!

O ponto forte está nas animações procedurais. Praticamente todas as animações que você vê são procedurais calculadas com física simulada. Há até mesmo detalhes como o pulso movendo ao acelerar a moto, e os pedais da bicicleta voltando caso interromper no meio de uma pedalada.

No vídeo eu nem sequer mostrei os sons das motos, pois são muito ruins. Também iremos implementar os sons por FMOD.

 

Entrar e sair de veículos

O jogo já havia um sistema de entrar e sair de veículos, mas era um protótipo, agora eu programei um do zero, já preparado pra produção final, prevendo como será o comportamento de IAs etc. Toda a base já está funcional e estável, suportando inclusive sentar no banco detrás em carros de 2 portas (algo que eu realmente sinto falta no GTA). Só falta mais testes para implementar NPCs e outros ajustes para veículos específicos (como ônibus). Uma das dificuldades é que o jogo terá suporte à mods de carros, portanto tudo precisa ser modular.

O destaque está no sistema de portas: a mão é posicionada dinamicamente na maçaneta da porta usando IK, na qual desliza até o canto da porta para empurrá-la com física real. Sim, eu fiz questão de fazer todo o sistema de porta com física em vez de animação pré-definida, eu acho importante num jogo onde a mecânica principal é entrar e sair de carros, tudo fica muito mais natural, e ações do mundo podem te impedir de abrir a porta, assim te interrompendo. Em carros baixos, o canto da porta irá bater na calçada, te impossibilitando de abrí-la (o personagem sairá automaticamente pelo outro lado na segunda tentativa).

Infelizmente não pudemos fazer novas animações próprias e melhores, nós realmente precisamos de algum animador na equipe com experiência em IK, e de preferência criar animações com métodos avançados, como o uso do Kinect. Não temos dinheiro para comprar ou contratar mocap.

 

Animações de locomoção

Uma das coisas mais criticadas no nosso jogo, e que nós sempre deixamos claro que são placeholders, são as animações de andar, correr etc.

Compra ou contratação de mocap estão fora de questão (não temos verba), e animações de locomoção grátis da Mixamo, pior ainda. Gastamos algumas centenas de reais em animações de verdade, mas não era o bastante, pois o nosso controlador de personagem, mesmo que bem avançado e completo, é péssimo em movimentação (os assets de locomoção grátis pra Unreal são melhores que os pagos pra Unity, eu fico incrédulo), estava muito longe da qualidade de movimentação de um jogo triple-A. Eu gastei semanas fazendo ajustes nas animações e controle de personagem para ter o resultado atual, e valeu a pena.

Eu também adaptei os 3 níveis de movimentação (walk, jog, sprint) onde você aperta uma vez pra correr e começa a fazer “jog”, como vários jogos atuais, e diferentes animações para começar a andar com base na direção.

Algumas pessoas podem achar a movimentação ainda não tão natural, mas isto é proposital! Nós não queremos uma movimentação natural, pois a movimentação humana é naturalmente lenta, e um gameplay lento não é agradável de jogar, estamos procurando somente polir. Eu procurei uma movimentação um pouco mais voltada à jogos de aventura, mais ágil e leve de controlar, completamente o inverso de jogos como RDR2.

Eu usei root motion para movimentação, com blends relativamente rápidos, mas a rotação é totalmente por script para o jogador sentir melhor o controle de direção. Enquanto mirando, toda a movimentação é por script, pois mover influencia a mira, portanto escolhi algo mais linear e previsível para ficar melhor durante o combate.

Nós consideramos usar motion matching (altamente usado em jogos triple-A atuais), mas vimos uma equipe que fez isto com o mesmo sistema de personagem que a gente usa e demorou meses, então não vale a pena pra nós, pois simplesmente conseguir criar o jogo é mais importante que tudo. Quem sabe no futuro…

 

Ações

Sempre pensando em expandir o jogo no futuro, eu procuro fazer sistemas modulares que ajudam a adicionar novas mecânicas, e a roda de ações é uma delas.

Scripts, tanto internos quanto externos, podem adicionar ações para esta roda em determinadas condições de gameplay, principalmente para interagir com objetos.

É também excelente para economizar botões, pois o jogador poderá ter 4 diferentes ações/interações num único botão, e esta mesma interface pode ser usada para interagir não só com objetos do mapa, mas também dialogar com pessoas, ou usar um item do inventário (perceba que é bem similar ao meu mod Inventory System).

Aproveitando, eu implementei isto para os portões de abertura lateral (os de abertura por articulação você abre empurrando com o corpo), ou seja, você pode trancar e destrancar o portão, ou abrir e fechar puxando para os lados, a mão do personagem irá se mover proceduralmente. Eu também ajustei a física de uma forma que é possível andar devagar do lado do portão para empurrá-lo com a mão, não é a forma perfeita de fechar o portão neste jogo (principalmente no teclado, pois é necessário andar devagar), mas funciona e é imersivo.

O que falta é algo para arrombar o portão (afinal, não faz sentido você destrancar o portão de uma casa que não é sua) e fazer trancar também as portas e portões de articulação. Também algo para você escolher qual pessoa ou objeto interagir, quando há vários próximos (no momento sempre pega o mais próximo).

 

Menus

Eu criei um sistema de menu modular, já pensando no futuro, isto é, menu totalmente construído por um script interno ou externo, útil para outras mecânicas do jogo ou até mesmo mods com menus.

Com isto, foi definido um novo estilo de interface gráfica pro jogo, mais voltado ao cinza, com fundo borrado (blur).

Agora o menu de pausa ficou bem mais bonito:

 

Shader de interior parallax

Quanto mais tempo passa, tal efeito de janelas com profundidade se torna cada vez mais obrigatório nos jogos, não simplesmente por existir profundidade, mas fazer isto através de um shader é uma excelente e otimizada maneira.

Portanto, eu decidi que, sim, IMPUNES usará este shader nas janelas! E foi uma decisão um pouco difícil pois, além de conseguir um bom shader, também requer muito trabalho manual para adaptar as janelas à ele, senão ficará uma porcaria como no GTA Trilogy.

E eu já adianto que não existe isto perfeitamente pronto para usar na Unity, eu me baseei num algoritmo de profundidade do bgolus (Ben Golus), que é muito experiente com shaders. Assim como Forza, Spiderman e outros jogos, isto não usa cubemap, é uma textura única distorcida (UV warp) para dar sensação de profundidade, pois é mais otimizado e simples.

Com base nisto, eu finalizei o shader adicionando texturas separadas para o interior aceso e apagado, máscara de luz, vertex color para variar a cor, a luz interior atravessa levemente as cortinas, o vertex alpha varia a textura das cortinas, há correção para não distorcer vidros largos, suporta superfícies curvadas etc. Tudo otimizado num único polígono.

Ainda não foi implementado no mapa pois o mapa ainda será sendo re-planejado, portanto muita coisa irá mudar. Nós só poderemos implementar quando o mapa do jogo estiver estável, pouco propenso à mudanças, pois é necessário definir o material e segundo canal de mapeamento uv em cada janela, além de pintar as vértices etc. Será um aumento no tempo de produção do jogo, mas o resultado final vale a pena.

No momento estamos usando texturas placeholders do Forza Horizon 4 (o próprio autor compartilhou a textura). Quando tivermos props para modelar interiores no jogo, iremos criar alguns interiores próprios para gerar essas texturas (renderizadas) pro interior falso.

 

Vegetação e fogo

The Vegetation Engine é um dos assets pra Unity mais incríveis que eu já vi, e sinceramente, está muito acima do que a gente precisa pro jogo, mas fiz questão de comprá-lo. Lembrando que isto é só um sistema e shader de vegetação, não usaremos os assets (como modelos das árvores), nós estamos modelando nossas próprias árvores baseadas em espécies brasileiras, como por exemplo, esta amendoeira criada pelo Meck:

Há 9 variações de modelos da mesma espécie, já totalmente adaptada pro sistema de vegetação e com LODs manualmente criados.

O capricho é tanto que cada folha e galho na verdade foi inicialmente modelado em 3D com altíssimo highpoly, e cozinhado (baked) para uma textura única com shadermaps para simular o mesmo visual de maneira otimizada. Esta é a mesma técnica usada em jogos como GTA V. Nós também implementados a otimização de transparency overdraw.

Como dito no devlog anterior, eu criei um sistema de fogo próprio pro IMPUNES, estava ótimo, supria as nossas necessidades, mas após eu ver o Ignis, e implementação automática dele com o TVE, eu fiz questão de jogar tudo fora e comprá-lo. Além dele queimar se espalhando pela vegetação, ele tem uma ótima base de fogo para queimar objetos de madeira etc. E os efeitos visuais são excelentes (há opções de efeitos mais leves para PCs fracos).

 

Ilustrações

Ok, Junior_Djjr e Meck de novo, cadê as novas pessoas do projeto?

Yuri é uma delas, também conhecido como Yhdf, trabalhou bastante no GTA Underground e está cuidando de umas ilustrações do IMPUNES, como marcas, outdoors, embalagens etc.

Todas as marcas do jogo são fictícias, com inspiração em marcas brasileiras ou comuns no Brasil. Em breve eu mostrarei o rótulo de cada garrafa, são muitas!

E até mesmo, dinheiros fictícios! Eu simplesmente adorei, eu achei estas notas mais bonitas do que as notas de verdade!

Ele também criou mais de 100 ícones para o minimapa. As letras serão montadas por script (para auxiliar em missões da comunidade).

Perceba que há também vários ícones sobre pontos turísticos, estes desenhos são do padrão de placas brasileiras e estarão dentro do jogo desativados por padrão, onde você pode ativá-los no mapa do menu de pausa para ir em cada ponto turístico do jogo para explorar!

Tenha a nota de que vários ícones da imagem acima foram feitos agora para não precisar fazer no futuro em caso de necessidade. Ou seja, ícones como lojas de móveis só quer dizer que existe uma possibilidade de ter uma loja de móveis no jogo, não é nenhuma confirmação.

 

Armas

Se você está impressionado com tudo o que já foi mostrado, acalme-se, e veja as imagens abaixo, abrindo-as em tamanho original pra ver cada detalhe.

Nós já temos um total de 6 armas de fogo (inclusive uma bazuca!), 2 granadas e 4 armas brancas, não só isto, cada arma há opções de peças opcionais (o jogo terá personalização de armas) e pinturas (um total de 15 pinturas), tudo isto foi criado, com qualidade triple-A, em somente 1 mês, por 1 pessoa (eu fui sendo só um diretor de arte), e isto é só o começo, já está chegando mais!

Isto é uma obra do mais novo membro da equipe, Zeneric, um canadense velho e surdo. A real é que não temos esse “patriotismo” de “o jogo 100% brasileiro”, o nosso único objetivo é criar um jogo legal, não importa como. Há um americano entrando também.

Eu fiz os shaders das armas, e ficou um tanto interessante: há um sistema de sujeira gradual, na qual sujará com o tempo e contexto, por exemplo dropar uma arma na terra aumentará a sujeira dela, e as armas podem aparecer já um pouco sujas dependente do contexto. E separado disto, há um desgaste de uso, que deixará mais preta a ponta do cano das armas de fogo. Estas mecânicas são mais avançadas até que RDR2.

Até o momento, eu (Junior_Djjr) e Zeneric somos os únicos membros da equipe trabalhando diariamente no jogo, mas diferente de antes, hoje há vários outros ajudando periodicamente e temos esperanças de que isto melhore conforme o jogo progride.

 

Sangue

Qualquer jogo de violência precisa ter um bom efeito de sangue.

Compramos um sistema de sangue volumétrico 3D, não se trata de física de líquidos nem nada do tipo, é somente uma mesh 3D animada (ou seja, é na verdade uma física de líquidos, mas baked), portanto é muito otimizado. 

Algo muito legal é que inclui um sistema que mancha a superfície simulando a forma que o líquido foi tocado. Eu não sei como isto funciona (são umas texturas bem misteriosas), mas funciona.

Para as armas, eu criei um shader que faz blend de 3 intensidades de overlay de sangue, assim, principalmente armas cortantes, se encherão de sangue conforme o uso, mas um detalhe interessante é que o sangue também pode secar com o tempo, assim mudando de cor e brilho para simular sangue seco.

 

Texto para textura

Mesmo em 2004, GTA San Andreas já tinha placas de carros com texto variável, construído dinamicamente durante o jogo. É um absurdo um jogo não fazer o mesmo em pleno 2023.

Ainda não temos carros prontos para colocar as placas dinâmicas, mas veio a ideia: que tal escrever algo como gravura ou pintura nas armas?

Ou seja, no IMPUNES você pode colocar textos personalizados nas suas armas. Isto é uma mecânica muito divertida para personalizar tacos de baseball, pois é comum a venda de tacos com diversos diferentes textos.

Tal sistema é bem simples e interessante de existir, pretendemos aproveitar mais dessa mecânica, por exemplo escrever na roupa, provavelmente pichação, não sabemos ainda.

 

Ferramenta para criar mods

Farias, programador numa subsidiária da Microsoft, há pouco tempo atrás recebeu o título de MVP da Microsoft pra mixed reality (no momento só existe duas pessoas na América latina, ele e o cara com quem ele trabalha) e continua aqui conosco há vários anos, mas trabalhando pouco tempo pois ele é muito ocupado.

Ele começou a criar uma espécie de versão simplificada da Unity em forma de aplicativo para a comunidade criar mods de modelos 3D pro jogo (veículos, armas, objetos).

Você cria o modelo no Blender e transfere para este software para finalizar a adaptação pro jogo, não só IMPUNES, mas também para futuros jogos da 2nibble, tudo com uma interface gráfica amigável e simplificada.

Para isto, foi criado um formato proprietário de arquivo de extensão “.2nm”, exclusivo para nossos jogos, que é carregado e lido durante a execução do jogo. E sim, toda a base já está funcional.

 

Multiplayer online

Sendao, um americano com 30 anos de experiência em programação, trabalhou muito com web backend e networking para jogos, começou a fazer bases para um sistema próprio de servidor multiplayer online pro IMPUNES.

Unity tem soluções multiplayer, mas nenhuma é eficaz para o que nós realmente queremos, que é algo inspirado no MTA:SA, onde a comunidade hospeda servidores com modos de jogo próprios, personalizados em programação Lua.

A real é que um multiplayer online nunca foi o foco inicial do jogo, a nossa ideia sempre foi focar no singleplayer para criar uma base sólida de jogadores, e depois, caso o jogo ir bem, fazer o multiplayer online. Mas o destino está nos arrastando para trabalhar no multiplayer online já de início.

Sendao tem alta experiência com redes, e um outro programador (brasileiro) que se interessou em nos ajudar, já programou um sistema multiplayer do zero pro jogo CrossFire, então temos 2 cabeças experientes para criar um bom multiplayer pros nossos jogos, e precisamos aproveitar a oportunidade.

Isto não quer dizer que está confirmado que IMPUNES terá multiplayer online. Mas está progredindo!

 

Planos futuros

Outro novo membro da equipe, Luiz Phillipp, formado em arquitetura e urbanismo, está criando um projeto urbanístico pra cidade de Canário!

Agora a cidade se parece muito mais com uma versão simplificada de “Balneário Camboriú”. No entanto, isto são os planos para a versão “alpha” do jogo, a versão “beta” haverá também o lado oeste, inspirado na cidade real de “Camboriú”, com locais mais pobres “da quebrada”, e a versão completa do jogo incluirá a zona rural.

O plano antigo foi montado por eu e Meck há muitos anos atrás, no “Projeto 2NTD”, era uma cidade de 1,5 kms de extensão, agora foi aumentada para em torno de 2,5 kms de extensão, e se contar as montanhas da imagem acima, atinge 6 kms (a extensão do GTA San Andreas, de fato, o objetivo do mapa completo é em torno da área do GTA San Andreas, ou seja, mais da metade do GTA V).

Brayan, que também é formado em arquitetura e urbanismo e está nos auxiliando nos planos, começou a modelar um edifício inspirado no Yachthouse (onde Neymar mora), está ficando muito legal mas ainda em fase inicial, em breve mostraremos. E sim, ele terá a altura real (quase 300 metros), será um dos maiores edifícios da vida real já representado em jogos.

Tanto Luiz quanto Brayan notaram que as quadras que eu modelei faltam espaçamento e maiores tamanhos de lote, além de uma calçada mais larga para um melhor gameplay, portanto, além de toda a programação que eu citei ter feito, eu também trabalhei mais na modelagem do mapa, editando todas as quadras para maior espaços, lotes, e arredondando mais as curvas (pois o mapa havia sido modelado pra mobile). Portanto agora as quadras não encaixam mais nas ruas antigas, precisamos finalizar o novo planejamento de ruas, e modelar a base delas, para poder encaixar as quadras novamente e poder mostrar o mais novo mapa do jogo.

Já adianto que o novo plano de cidade do jogo, não será tão plana, isto é, agora o cenário haverá mais elevações, mas ainda não tanto (como na real).

E lembrando mais uma vez de que as texturas, blends e decals de sujeiras, pichações, vegetações etc só serão adicionados quando o mapa estiver mais avançado. Ainda há muito trabalho pela frente.

 

Ideias

Ok, mas desenvolver um jogo não é só programar, modelar ou desenhar, é, antes de tudo, idealizar.

Junto com esta postagem, foi postado pela primeira vez um texto explicando toda a nossa ideia com o jogo IMPUNES no site da 2nibble, tentando resumir as informações já confirmadas ou praticamente confirmadas. Eu recomendo altamente que você leia para entender a nossa proposta (o texto não é tão longo), pois este jogo não é um “GTA clone”, o nosso objetivo é algo muito diferente — no entanto, nós não nos importamos em sermos chamados de “GTA brasileiro”, entendemos que GTA é mais que um jogo, é um gênero.

Mas queremos deixar claro que o gameplay do IMPUNES será muito diferente do GTA, a ideia é um roleplay sandbox infinitamente expansível com conteúdos nossos e da comunidade.

O GTA, mesmo que sendo um jogo de mundo aberto, ainda é um jogo linear. IMPUNES é totalmente não-linear, até mesmo as regras de gameplay serão escolhidas por você, e a direção que você escolhe em seu gameplay mudará o destino das coisas.

Este jogo está longe de ser um jogo de 1 pilar só, está muito longe de ser sustentado como “o GTA brasileiro”, é muito mais que isto. Nós andamos discutindo muito sobre ideias, por exemplo, recentemente Yuri compilou o plano sobre o sistema de reputação de personagem num documento de 5 páginas (e que ainda aumentará. Edit: já subiu pra 17 páginas). Nós sabemos muito bem o que estamos fazendo, e temos todos os planos para criar um jogo original e divertido, não simplesmente um jogo que é legal porque se passa no Brasil.

 

Equipe

Nós abrimos contratações um tempo atrás, devido à um temporário hype que o jogo recebeu, houve em torno de 40 pessoas entrando em contato querendo ajudar. Nós chamamos 10, e sobrou praticamente ninguém.

A real é que as pessoas ficam animadas querendo ajudar mas logo o ânimo desaparece, ou há outras necessidades de vida mais importantes, uns desistiram e outros fazem trabalhos ocasionais. Afinal, estamos milhares de reais no negativo, não recebemos nenhum financiamento ainda, mas pretendemos abrir no futuro, no momento só há por doações. Estamos longe da possibilidade de pagar salário para mais pessoas ajudarem, portanto a gente trabalha como “sócios”, prestadores de serviço, onde cada pessoa recebe pontos de prestação de serviço que no futuro serão convertidos para uma porcentagem dos lucros.

No momento só há 2 ou 3 pessoas trabalhando diariamente, mas felizmente, há vários outros ajudando e dispostos a começar a ajudar em breve, e nós acreditamos que irá aparecer ainda mais pessoas conforme a gente prova a nossa capacidade.

Se você é um dos 40 que quiseram trabalhar com a gente, e ainda sente vontade, nos contate novamente por mensagem na página do Facebook (recomendado) ou por e-mail. Não iremos entrar em contato de novo com as pessoas anteriores, afinal, se você ainda está aqui, é porque você realmente está interessado.

Nós não aceitamos pessoas iniciantes, no entanto, nada adianta pessoas experientes mas sem interesse, portanto, você realmente estar interessado é um fator que pode ser até mais importante que seu nível de experiência. Estamos precisando de ajuda em praticamente qualquer área, principalmente animadores e modeladores, exceto programação.

 

Doações

Prefira Pix: Qualquer valor; instantâneo; sem tarifas. Neste caso é somente Brasil.

Chave aleatória: c03b3c1e-414d-4aee-8cb9-902ce2c65334

Para outras opções internacionais, veja a página de doação/financiamento no site da 2nibble.

Eu recomendo fortemente que você leia a página de doação/financiamento para entender a importância de financiar a gente.

Não pode ajudar financeiramente? Simplesmente divulgue o nosso trabalho!

 


 

facebook.com/2nibble

twitter.com/2nibbleStudios

instagram.com/2nibble

youtube.com/@2nibble

 

Contratações para trabalhar no jogo IMPUNES

Dias atrás foi postado na página do Facebook sobre o desafio que o SanInPlay me fez, dizendo que se eu fizer um jogo como essa alpha do 171 em 2 anos ele paga os assets, claramente ignorando a postagem da crítica contra 171 onde eu falo que o problema não é esse (é sobre falta de transparência nas metas) e nós já temos até mais assets do que o 171 (e comprei mais uns na Black Friday ontem). O problema é na verdade a falta de pessoas para nos ajudar, pois eu (Junior_Djjr) trabalhei sozinho no jogo IMPUNES por 5 meses.

Por causa disso, para a minha surpresa, apareceu mais de 10 pessoas (agora mais de 20 (agora mais de 30 (já chegou em torno de 40))), várias habilidosas, querendo me ajudar neste jogo. É a primeira vez na história que tantas pessoas apareceram dispostas a nos ajudar.

Portanto eu pedi, e ainda peço, que enviem portfólios para o direct (mensagem privada) da página 2nibble no Facebook para analisarmos e chamarmos pessoas para trabalhar conosco.

Com isto, nós pausamos o jogo puzzle em primeira pessoa que havíamos dito que estávamos trabalhando (que começamos pois era mais fácil de criar), para voltar a trabalhar no IMPUNES.

O grande problema é que não temos como pagar nenhum salário, portanto você terá que trabalhar com a gente, como se fosse um sócio. Você não será um funcionário, será um parceiro de projeto, esperando uma porcentagem de possíveis futuros lucros quando o jogo ser financiado e lançado.

Houve também pessoas que eu admiro querendo ajudar, mas estão ocupadas em outro projeto, então provavelmente teremos mais no futuro.

Já faz 3 dias, e já temos praticamente confirmado 3 ou 4 pessoas! Uma delas, um modelador formado em arquitetura e urbanismo, que está nos ajudando a re-planejar toda a cidade do IMPUNES, portanto começaremos a trabalhar nisto, agora com um planejamento mais profissional, uma cidade com mais lógica e coisas interessantes como em sua cidade inspirada, Balneário Camboriú.

Precisamos principalmente de bons modeladores (de qualquer tipo de experiência) e animadores (para ajustar e melhorar animações). E no caso de programadores, só aceitamos para casos específicos (como I.A., e pro futuro pode ser interessante um multiplayer) e que já tenha alguma experiência notável com Unity. No momento não precisamos de outras tarefas. Lembrando que a pegada do jogo será mais pra um lado sandbox com missões da comunidade (e nossas também, claro), não é uma história única.

Eu estou postando aqui no blog pois muita gente pode não acompanhar o Facebook. Dentro de poucos dias provavelmente tudo será confirmado e então “parcialmente” fechado (sempre estamos dispostos a novas pessoas, mas temos que analisar bem, principalmente se já tivermos pessoas demais).

Umas pessoas até brincaram que se o SanInPlay fez isto de propósito, ele é um gênio, pois é a primeira vez que eu vejo tanta gente interessada em ajudar este jogo, um projeto que sempre viveu morto. E não, não pretendemos abrir financiamento agora, não é justo pois o jogo ainda está em fase inicial e a equipe não está formada. Mas eu estou botando fé, hoje inclusive comprei mais um SSD, só pra trabalhar com Unity. Até 2 anos teremos um jogo relativamente completo pra vocês (ainda pequeno (maior que 171) mas toda a base funcional). Mas toda a ideia do projeto é bem maior do que imaginam, não queremos um bairro, nós queremos uma cidade inteira, regiões ricas e pobres, zona rural, mar, tudo. 

Nós não sabemos ainda, mas provavelmente a ideia será uma alpha com somente a região praiana, a versão beta será a cidade inteira, e a versão final incluirá a zona rural. Abriremos crowdfunding quando o jogo estiver mais avançado.

  


Um pequeno desabafo, eu queria que as coisas funcionassem assim sem a necessidade de acontecer um “hate contra o hate”. O processo de eu mostrando eu criando um jogo deste nível sozinho sem financiamento em 5 meses (exceto o mapa que foi somente remasterizado de quando o projeto era chamado de 2NTD, jogo mobile com câmera topdown estilo GTA CW, e agora iremos replanejar o mapa de novo), tudo isto já devia ser o bastante para o projeto ser divulgado e atingir novos públicos, mas isto só aconteceu depois de toda uma treta desnecessária que tentei evitar desde o início, somente assim novos públicos conheceram o projeto e viram o potencial dele.

Youtubers deviam dar mais espaço para projetos novos, há muitos jogos indies brasileiros com potencial que eu não vejo serem falados. Não quero tentar fazer uma lista, mas por exemplo o jogo “Lendas” está incrível, com muitas mecânicas, e sendo criado por só 1 pessoa (que realmente anda trabalhando muito no projeto, eu entendo ele), outro jogo interessante é o Family Business que está muito evoluído mesmo com somente mil reais de financiamento e também criado por só 1 pessoa. Falta mais reconhecimento com as pessoas que se esforçam em trabalhar.

E o mais irônico (ou melhor, hipócrita), é que as mesmas pessoas que defendem o 171 pois “tem que apoiar os jogos brasileiros”, elas atacam o IMPUNES dizendo que o jogo está horrível e que eu devia desistir (basta olhar os comentários do último vídeo), sendo que 171 está sendo criado há 12 anos (antes da mudança de engine) ou 7~8 anos (depois da mudança de engine), comparando com um jogo de 5 meses (depois do projeto reiniciado do zero, onde somente o mapa está sendo parcialmente reaproveitado de um jogo mobile), daí eu pergunto, essas pessoas faziam isto quando o 171 tinha 5 meses, 1 pessoa e 0 financiamento? Não, e nem deviam fazer.

Atualizações sobre nossos jogos

IMPUNES

Infelizmente teremos que pausar novamente o desenvolvimento do jogo IMPUNES, pois, na verdade, durante todos esses 5 meses de desenvolvimento, somente eu (Junior_Djjr) trabalhei nele, e é óbvio que eu não consigo fazer tudo sozinho. Na parte da programação, eu acredito que sim, com mais 1 ou 2 anos, mas criar um jogo estilo GTA requer muito trabalho de modelagem, animações, sons e tudo mais. Eu sozinho levaria muitos anos para finalizar isso (eu também fiz praticamente todo o cenário), e já estou velho tendo de trabalhar com outras formas de ganhar dinheiro.

Há 2 meses atrás eu postei a última atualização do progresso do jogo, recentemente eu voltei por alguns dias, comprando um novo melhor sistema de carros, mais similar ao GTA V (assim agora há nada no jogo antes de 2022, somente o cenário, que foi remasterizado com o passar do tempo). Mas logo decidimos pausar, ainda não há nada novo para mostrar pra vocês.

Naquele dia eu abri doações e falei que eu demoraria um pouco para voltar no jogo porque eu tinha trabalhos pagos para fazer, e as doações renderam 40 reais, eu agradeço à todos que apoiaram, mas trabalhar neste jogo em vez de freelances e outros jogos menores, ainda não é vantajoso, o jogo é grande e precisamos de uma equipe habilidosa para ajudar. Uns podem dizer para criarmos um crowdfunding, mas eu acho que não renderia muito, somente iria nos obrigar a terminar o jogo — no momento não fizemos nada disso, portanto (ainda) temos a liberdade de parar quando precisar, mas me desculpe por quem doou esperando algo a mais do IMPUNES, não que o jogo tenha sido cancelado, mas pode demorar para voltar.

De qualquer forma, eu peguei os 40 reais que vocês doaram e juntei mais 20 para comprar um pack de texturas PBR, para ajudar não só no IMPUNES, mas todos nossos outros futuros jogos. Todas as próximas doações serão para a 2nibble em geral (mas que também ajuda indiretamente no IMPUNES, é claro).

Recentemente eu também gastei uma boa grana comprando uma RTX 3060, e quem me conhece sabe, eu não jogo muitos jogos, eu comprei principalmente para trabalhar com Unity. Eu realmente estou levando isto à sério.

jogo indie gta brasileiro impunes 2nibble

 

E o Warpunk?

Eu poderia voltar a trabalhar no Warpunk, que é um jogo relativamente fácil de concluir.

O grande problema é que, como eu já esperava mesmo antes de iniciar o projeto, poucas pessoas se interessam nesse jogo — não só o público, mas também as pessoas que poderiam me ajudar. Parece que só eu estou animado.

Na verdade, a ideia inicial do Warpunk era um jogo grátis de código aberto, mas eu gostei tanto do resultado que passei a usar assets pagos para melhorar a qualidade (por exemplo, pathfinding altamente otimizado). Então a ideia de um jogo de código aberto foi por água abaixo.

Pelo menos foi um jogo que serviu muito para aprendizado e portfólio, inclusive eu o usei nesta entrevista de emprego. Eu não sei se realmente voltarei a trabalhar nele, precisa de muitos incentivos, é possível até que eu venda o projeto ou algo assim. Jogos RTS não são muito a nossa cara.

 

Nosso atual projeto

Atualmente estamos trabalhando num jogo puzzle em primeira pessoa, com uma mecânica inédita.

Foi uma ideia que eu tive em 2019, na época fizemos um protótipo da mecânica e tudo pareceu promissor, mas desde lá deixamos a ideia armazenada para o futuro.

Infelizmente nós não podemos divulgar a ideia de mecânica desse jogo, não é algo “fenomenal”, mas é original e não existe nenhum outro jogo igual.

Todas as (pouquíssimas) pessoas que eu falei a ideia, ficaram animadas e afirmaram que devíamos finalizar o quanto antes.

Chrystian Farias, que é um programador 14X melhor que eu, está trabalhando no funcionamento da mecânica base, e eu vou cuidar do resto. A parte difícil já foi feita, agora é só continuar.

O estilo será inspirado no jogo Portal 1, inclusive pretendemos incluir uma personagem “vilã” para te guiar, com dublagem, mas o jogo tem nada a ver com portais.

Este novo projeto requer muita pouca modelagem, então ainda é possível que algumas pessoas da equipe trabalhem na parte da modelagem do IMPUNES durante isso, veremos. Criar este jogo será principalmente programação, portanto eu consigo terminar mesmo sozinho, mas terei umas ajudas do resto da equipe também.

Isto é tudo o que eu posso dizer, e infelizmente eu não posso continuar fazendo “devlogs” aqui no site para mostrar o progresso do jogo, é necessário esperar até que este jogo fique (quase) pronto e finalmente possamos divulgá-lo, algo que pode demorar mais de 1 ano… Se tudo ir bem, e valer a pena, é possível que seja divulgado numa futura BGS, ainda não sabemos como as coisas irão rolar.

Jogo IMPUNES: Chuva e muito mais!

Introdução

Para quem não viu, eu anunciei que eu voltei a trabalhar no nosso jogo IMPUNES diariamente desde o início do ano (pulei só um mês), ou seja, finalmente tratando esse projeto de maneira séria.

Se você perdeu, veja a postagem anterior:

Jogo IMPUNES: Achou que eu tava brincando?

1 mês e meio depois, aqui estão as novas coisas que eu (Junior_Djjr) fiz no jogo:

O vídeo resume quase toda essa postagem, assista com atenção!

E esse vídeo foi criado por um script externo programado em Lua, como se fosse uma missão custom, legal né?

Iremos pausar o jogo por algumas semanas ou meses, pois eu (Junior_Djjr) tenho alguns outros trabalhos acumulados pra fazer.


O que foi feito:

  • Mapa completamente otimizado com LODs gerados pelo Simplygon.
  • Sistema de fogo com propagação simples, programado do zero.
  • Adição de postes com fios com física que reage dinamicamente ao vento.
  • A quantidade de nuvens influencia no gráfico do jogo.
  • Transição de nuvens sincronizado com climas, como chuva, garoa etc.
  • A chuva molha o chão gradualmente, criando poças que refletem o mundo.
  • Gotas de chuva pela tela, que reagem com a física.
  • Água da chuva escorrendo pelos telhados.
  • Nova animação de andar feminino (ainda será ajustado, estamos sem animadores).
  • Poças volumétricas que fazem transição suave com as poças falsas do shader de superfície.
  • Diferentes materiais recebem diferentes efeitos de molhado, por exemplo, a grama absorve água, portanto o reflexo tem mais rugosidade e gera menos poças.
  • A água da chuva primeira se acumula entre os vãos da superfície (por exemplo, entre os blocos da calçada).
  • Janelas e vitrines com novas texturas de variação aleatória.
  • Recriado a praça.
  • Novas fontes de letras.
  • Som ambiente dinâmico.
  • Ícones das armas são gerados dinamicamente através do modelo da arma e shader estilizado e editor.

 


LOD (Level Of Detail)

Dentro desse pouco mais de 1 mês, 2 semanas foram somente para criar LOD do mapa do jogo.

jogo impunes gta brasileiro indie 2nibble dev lod

Para isso, eu usei Simplygon, também usado por jogos como The Witcher 3, Uncharted, Borderlands 3, Gears 5, Control, Far Cry 5, RE7, Mafia 3, MGSV etc…

O problema é que nenhuma solução de LOD é perfeita, esta também requer trabalhos manuais. Portanto cada modelo, antes de passar pelo gerador de LOD, eu precisei fazer um “pré-LOD” para a geração ser melhor.

Demorou, mas valeu muito a pena, afinal, quanto melhor é o LOD, mais próximo da câmera pode usar, e portanto, mais otimização de desempenho. Isso também entra na questão de quantos níveis de LOD usaremos. Eu pensei em 2 níveis, mas quanto mais níveis, mais trabalho terá para deixar cada um deles caprichado (e será necessário fazer shadermap para colocar reflexos nas janelas por exemplo), portanto, no momento eu estou usando somente 1 nível, mas com atenção maior naquele único nível. Quando o mapa ficar grande (com zona rural, ou seja, vai demorar) eu pretendo mudar para 2 níveis.

Só não há LOD na torre de todos os prédios (exceto um), pois é melhor fazer manualmente, mas é bem demorado e chato, portanto fica pra depois.

O jogo ainda está vazio demais para comparações de FPS (o aumento do FPS foi baixo pois o jogo ainda não tem carga o suficiente no CPU, e mapa em si é muito leve pra GPU), mas em draw calls, o LOD fez o jogo cair de 6 mil para somente 2 mil draw calls (em referência, uma cena do GTA V tem 3~5 mil draw calls), portanto estamos no caminho certo. Economizou 150 mil triângulos e 200 MB.

 


Sistema de fogo com propagação

Há muitos sistemas de fogo prontos para comprar ou baixar grátis por aí, mas todos são “avançados” demais para o nosso jogo, onde o fogo é só uma consequência, não uma mecânica central.

Pensando nisso, e também porque eu estava muito curioso pelo desafio, eu programei o meu próprio sistema de propagação de fogo do zero, somente com o básico necessário.

jogo impunes gta brasileiro indie 2nibble dev fogo fire

Eu fiz também o efeito visual do fogo, que é também influenciado pelo vento (eu sei o quão importante é o vento para a imersão do jogo, portanto eu quero que tudo tenha influência). O efeito ficou bonito na minha opinião, o que não é difícil, só basta encontrar uma boa textura de animação que o resto é detalhe (por exemplo, perceba como eu simulei o brilho do fogo influenciando na cor da fumaça, e o tamanho do fogo muda a velocidade da animação, um detalhe importante pro realismo).

E é óbvio, o material da superfície influencia no nível de combustível e propagação: grama gera médio combustível mas muita propagação; madeira gera muito combustível mas pouca propagação etc. Assim como a chuva apaga o fogo.

Após um ponto ser queimado, será armazenado um cachê onde evitará que aquele ponto seja queimado de novo (uma simples simulação de que acabou o “combustível para queimar”), e assim, naturalmente gerou um efeito de espalhamento a partir de um centro.

Eu programei o sistema de propagação da maneira mais simples possível, por otimização, e a quantidade de pontos de fogo influencia na qualidade do fogo em si. Isto é, diminuirá a quantidade de pequenas partículas e fumaça, afim de evitar o FPS cair caso haja realmente muitos pontos de fogo no seu jogo.

Mas ainda falta otimização para diminuir os pontos de luz e som, algo bem chato de fazer, farei depois…

 


Gráficos

Falando novamente sobre as nuvens volumétricas.

Há um valor médio da cobertura das nuvens no céu, portanto eu usei esse valor para alterar o gráfico do jogo de maneira dinâmica.

jogo impunes gta brasileiro indie 2nibble dev iluminacao grafico molhado

Isto é, há uma fonte de iluminação ambiente vinda principalmente de cima, que simula a luz que o céu emite (afinal, não é só o Sol que emite luz, o próprio céu emite uma luz azul também, por isso as sombras são azuis), este tom azul, no entanto, é coberto pela quantidade de nuvens no céu do jogo, assim diminuindo a iluminação de cima pra baixo, e a cor do céu (deixando os tons menos azuis por exemplo).

Esta é uma solução muito melhor do que usar valores pré-definidos (como normalmente jogos fazem), pois as nuvens correlacionarão dinamicamente com o gráfico do jogo. Lembrando que também há sombra de nuvem.

Outra coisa importante para uma boa simulação de gráficos nublados, é deixar as sombras mais suaves (com mais blur), mas o sistema de sombras que a gente comprou (e usamos no jogo NPD) ainda não está disponível pro URP então temos que aguardar.

Perceba também que a parte de cima das superfícies ficam mais escuras, simulando superfícies molhadas. O asfalto ficou quase preto, semelhante ao mundo real (peguei todas as referências daqui).

Durante esse tempo eu também fiz mais ajustes visuais nos gráficos do jogo, como as cores da iluminação e mais shadermaps para materiais. O asfalto ficou bem mais realista.

 


Climas

Eu já havia programado o sistema de climas para o Warpunk, mas assim como o ciclo de dia e noite, eu decidi refazer do zero, sincronizado com o sistema de nuvens que a gente usa.

Isto é, climas e nuvens estão completamente correlacionados, cada nuvem tem valores que fazem uma transição suave, e alguns dos valores, são usados para o clima do jogo.

Por exemplo, haverá diferentes formatos de nuvens para garoa, chuva média, chuva forte… E algo um tanto interessante…

jogo impunes gta brasileiro indie 2nibble dev god rays nuvens

Através de compute shaders do DirectX 11, é possível detectar a quantidade de nuvens que estão literalmente em cima de você, isto quer dizer que eu posso usar isto para definir a chuva! Isso mesmo, só haverá chuva caso de fato exista uma nuvem de chuva em cima de você!

O problema: Menos controle sobre o momento de chover ou não chover. Claro, você pode desativar para forçar a chuva caso alguma missão queira que seja feita totalmente na chuva, mas pense no free roam, a qualidade gráfica das nuvens (principalmente, se você desativar as nuvens volumétricas durante o gameplay) possibilitará o jogador a controlar a existência ou não de chuva no jogo, simplesmente trocando as nuvens no menu de qualidade gráfica. Uma solução é fazer um tempo de “penalidade”, por exemplo 1 minuto para o nível da chuva poder mudar, mas também possibilitaria usar a penalidade para benefício.

Portanto eu não sei se eu realmente vou incluir este detalhe, é algo aparentemente novo, que eu consegui fazer, um detalhe que não existe nem em jogos AAA (pelo que eu saiba), provavelmente será uma opção no menu do jogo e só se ativará em free roam, fora de missão, e fora de um possível futuro multiplayer, e também precisará ser desativado caso jogue em DX10. Deem opiniões e ideias nos comentários.

 


Poças de chuva

Eu criei o shader de poças de chuva, com pingos (ripples), já faz um tempinho, mas agora fiz ajustes finais e sincronizei as poças com o CPU com uma solução legal, mas também um pouco óbvia.

O caso é, as poças são geradas no shader, rodando na GPU, e eu preciso identificá-las para colocar efeitos sonoros e visuais quando você pisa em cima de uma poça (ou melhor, um chão molhado). Então agora as poças são geradas com uma textura global, que se repete no mundo todo, por cima da superfície, e no CPU, eu converto a coordenada do jogo para o pixel da textura, dessa forma eu consigo ter o nível de molhado daquele local, e assim usar isso para adicionar efeitos ou influenciar na física dos carros. Uso vertex color para “pintar” os locais que não molham.

Isto é para as poças falsas que simula o chão molhado, mas eu também fiz poças volumétricas, que fazendo blend perfeito com as poças falsas.

jogo impunes gta brasileiro indie 2nibble dev pocas chuva puddle

As poças volumétricas são uma pequena simulação de água que pode estar sempre presente em buracos no mapa, e crescem conforme a chuva, como acumulação. O efeito visual da poça acumulando ficou muito bom.

E outro detalhe muito bom é a acumulação de água primeiro entre os vãos da superfície, por exemplo, bloquinhos da calçada.

jogo impunes gta brasileiro indie 2nibble dev puddle shader floor

Eu só fiz isso porque era fácil, eu sei que é um detalhe pequeno demais, mas não há nenhum impacto no desempenho.

 


Gotas de água na tela

Nós compramos um sistema avançado que simula gotículas de água grudadas na câmera do jogo, refratando (com distorção) a imagem da tela.

jogo impunes gta brasileiro indie 2nibble dev raindrops screen chuva

Há gotas estáticas (redondas) e dinâmicas (que escorrem pela tela), como postfx na GPU, que aparecem principalmente quando a câmera está olhando pra cima durante a chuva, e eu programei um simples sistema para simular a reação física das gotas.

Por exemplo, se a câmera está indo rápido para o lado direito, as gotas irão se esticar em direção ao lado esquerdo. Sim, eu sei, não é a coisa mais incrível do mundo pois até GTA clássicos têm isso. Mas eu fiz parecido, e inclusive simulei a gravidade das gotas escorrendo conforme a direção que a câmera está apontada.

 


Água escorrendo nos telhados

E aqui um shader que eu me irritei diverti muito em fazer!

Uma das poucas coisas que sabemos sobre o GTA VI hoje é que deverá haver água escorrendo pelos telhados, portanto eu decidi fazer da minha forma simplista, principalmente porque é um detalhe muito legal que traz muita vida ao visual do jogo.

jogo impunes gta brasileiro indie 2nibble dev rain chuva shader roof telhado

Os telhados do jogo não podem acumular poças como o chão, portanto, eu fiz um simples shader que adiciona água escorrendo na direção da face do telhado.

A questão é que é fácil fazer uma textura animada por cima do mapeamento de outra textura, mas isso é falho, houve alguns poucos telhados que as telhas estavam invertidas (assim a água caía pra cima, não vale a pena ficarmos testando e corrigindo isso), e as cumeeiras são mapeadas na horizontal, portanto eu tive que fazer um cálculo de direção com base na face, o que é simples mas eu sou noob em shader (e matemática em geral), mas consegui e fiquei muito feliz com o resultado!

Eu tentei o mesmo em outras superfícies, mas a solução não é perfeita. À primeira vista você pode pensar que basta isso para por exemplo fazer um rio com água com direção de fluxo, ou água escorrendo pelas valas, mas não é verdade, requer algo muito mais avançado para possibilitar coisas assim, esta é uma solução simples pensada somente em telhados e superfícies inclinadas simples.

Aproveitando, no mesmo shader eu adicionei uma simulação de madeiras na parte de baixo dos telhados.

jogo impunes gta brasileiro indie 2nibble dev telhado casa

Isto porque o mapa do jogo foi criado quando a ideia ainda era um jogo simples com câmera vista de cima, portanto não havia detalhes embaixo dos telhados (como tábuas), e adicionar um novo material embaixo do telhado é uma tarefa muito chata (lembre-se, a telha de cima tem que fazer sentido com a telha de baixo), e não legal pra otimização, uma solução mais simples foi fazer um shader que, automaticamente, adiciona um overlay de tábuas para tudo o que está na direção de baixo, assim não teremos absolutamente nenhum trabalho adicional na parte de baixo dos telhados, também diminuindo o número de materiais e texturas. Não há profundidade 3D, mas o nosso jogo é assim mesmo, gráfico simples e leve.

 


Janelas e vitrines

Criei as texturas variáveis para as janelas e vitrines. São aleatórias, mas como eu expliquei anteriormente, posso usar vertex alpha para escolher qual usar.

jogo impunes gta brasileiro indie 2nibble banco hfbr

A ideia inicial era usar shader de interior falso, para simulação de profundidade parallax, o problema é que cada vitrine precisa fazer um pouco de sentido (não ser como GTA Trilogy), portanto é um trabalho adicional desnecessário. Quem sabe no futuro, mas no momento temos coisas mais importantes para focar.

Portanto eu criei várias texturas completamente genéricas, para poder usar nas vitrines sem nenhum problema de falta de lógica, e eu realmente gostei do resultado, não tanto quando está acesa, mas ainda pintarei as vitrines acesas para dar vida, ficará melhor.

 


Postes com fios com física

Adicionei postes com fios em todo o mapa atual (exceto em algumas ruas que ligarão com próximas quadras).

O modelo dos postes foi criado pelo Meck há alguns anos atrás, e só usado agora.

Como eu disse anteriormente, eu quero que o mapa reagindo ao vento, para aumentar a imersão e vida do ambiente. Portanto, os fios dos postes reagem com o vento atual! (direção, intensidade).

jogo impunes gta brasileiro indie 2nibble dev postes fios

Foi bem chatinho, pois eu tive que fazer um sistema novo para adicionar os fios automaticamente em cada poste.

Os fios são meshes 3D, portanto eu usei o mínimo de segmentos possível para diminuir o peso do modelo (que facilmente ocupa milhares de vértices), e usa fios com espessura num formato de triângulo. Umas pessoas podem dizer que eu devia usar fios com duas faces cruzadas (GTA Trilogy fez assim) para economizar 2 triângulos cada segmento, mas conte o número de vértices e veja, a única coisa que você vai ganhar é um fio com iluminação bugada.

Mas isso é só o começo. Ainda há somente 1 modelo de poste, nós pretendemos adicionar mais variações, pinturas na base do poste, transformador podendo atirar para quebrar e coisas assim.

E o principal: Brasil é assustadoramente lotado de fios, mesmo regiões ricas, há postes com muitos fios, principalmente na parte de baixo, e obviamente não podemos usar física neles, portanto, faremos futuramente de uma maneira otimizada, com texturas alpha. O mesmo vale para os fios que saem do poste e vão para as casas, poderíamos fazer também 3D com física, mas não é legal para o desempenho.

 


Fonte de texto e som ambiente

Gastei um tempinho pesquisando por boas fontes para usar nos textos do jogo, decidi usar Tauri para textos gerais, Paytone One para textos impactantes, e Ubuntu Mono para scripts.

jogo impunes gta brasileiro indie 2nibble dev futebol penalti

À primeira vista eu achei a Paytone One “divertida” demais, mas pensando bem, por que o jogo tem que parecer sério?

Sobre sons ambientes, eu criei um sisteminha para usar um valor real entre 0 e 1 para definir uma transição entre 3 sons ambientes diferentes para a cidade, onde cada um é um nível de intensidade de sons da cidade (você pode ouvir no vídeo). Assim, basta eu definir a intensidade com base na quantidade de carros e pessoas por volta de você para dinamicamente ter diferentes sons ambientes para diferentes locais da cidade.

Já esquecendo, eu também recriei esta praça. Ainda não estava remasterizada e era estranha com pouco espaço.

jogo impunes gta brasileiro indie 2nibble dev praca

Inclusive, memorizem ela hoje, ainda sem os bancos, sem a estátua, sem as flores, sem as árvores… Em breve vocês verão como ficará!

Provavelmente na próxima postagem de progresso do jogo, haverá árvores (finalmente), e assim a ambientação do mapa ficará muito mais interessante.

 


Ícones das armas

E para finalizar, finalmente a roda de armas e hud têm ícones de armas!

Na postagem anterior eu usei imagens placeholders para os ícones das armas, e ainda coloquei um “PH” grande em cima para deixar claro que não se trata de ícones finais do jogo, avisei no post, vídeo, e mesmo assim houve pessoas reclamando que os ícones estavam feios… Sério?

Enfim, aqui estão os bonitinhos:

jogo impunes gta brasileiro indie 2nibble dev armas weapon icons

Você pode dizer “bonito mas poderia ser melhor”, mas veja a sacada: isto não são imagens desenhadas, são renderizações do modelo 3D da arma com shader estilizado!

Isto é extremamente importante, pois possibilita criar novas armas, inclusive instalar mods de armas, sem a necessidade de desenhar um ícone novo! E todo mundo que já baixou mods de armas pro GTA SA, sabe que isso é um grande problema, pois os modders não se esforçam, ou simplesmente não sabem desenhar os ícones. Este problema não existirá no IMPUNES.

Dentro do próprio jogo, eu criei uma espécie de “gerador de ícone”, onde você posiciona a arma dentro de um quadrado. Note que isto não irá gerar a imagem do ícone, isto só irá configurar a posição para gerar a imagem posteriormente, conforme a resolução da sua tela etc.

jogo impunes gta brasileiro indie 2nibble dev armas weapon icons editor

Isto não é o editor da Unity, isto é a imagem do jogo. Essas setas dos eixos (pivot) estão implementadas dentro do jogo para você ajustar a posição e rotação da arma, ainda com pequenos bugs na renderização mas fácil resolver.

Não só isso, devido à usar um shader estilizado, é possível trocar o estilo dos ícones alterando o shader, ou valores do material, para novas cores etc, e todas as armas (inclusive mods) automaticamente terão o novo estilo que você definiu!

E lembrando de novo que essas armas são placeholders do sistema de armas que estamos usando, não são as armas do jogo (obviamente criaremos armas brasileiras).

 


Doações

Pela primeira vez, depois de tantos anos trabalhando sem receber 1 centavo, nós finalmente abrimos doações!

Pix

Qualquer valor; instantâneo; sem tarifas. Neste caso é somente Brasil.

Chave aleatória: c03b3c1e-414d-4aee-8cb9-902ce2c65334

Para outras opções internacionais, veja a página de doação/financiamento no site da 2nibble.

Eu recomendo fortemente que você leia a página de doação/financiamento para entender a importância de financiar a gente.

Nota: No momento, as doações são para toda a 2nibble, não especificamente IMPUNES — mas de qualquer forma, também ajuda indiretamente, é claro.

Como eu já disse várias vezes, durante esses anos, eu (Junior_Djjr) tirei milhares de reais do meu próprio bolso para investir nesse jogo, para mostrar algo para vocês antes de pedir ajuda, e eu já até neguei bons empregos para focar nisso, que de fato é algo que eu gosto.

O dinheiro será usado para recuperar os gastos antigos, e o que sobrar, será usado para gastos futuros, renda extra para membros da equipe, ou contratação de trabalhos terceiros.

Não pode ajudar financeiramente? Simplesmente divulgue o nosso trabalho, espalhe a nossa ideia.

 


Importante:

O projeto foi totalmente renovado, portanto queremos desvincular o nome antigo do projeto (“2NTD”).

Agora o progresso do jogo estará somente nas redes sociais da equipe 2nibble.

facebook.com/2nibble

twitter.com/2nibbleStudios

youtube.com/c/2nibble

2nibble.com/donate

Jogo IMPUNES: Achou que eu tava brincando?

Introdução

Para quem não viu, mês passado eu anunciei que eu voltei a trabalhar no nosso jogo IMPUNES diariamente desde o início do ano (pulei só um mês), ou seja, finalmente tratando esse projeto de maneira séria.

Lá eu fiz uma grande postagem mostrando tudo o que já foi feito no jogo durante esse tempo:

Jogo IMPUNES: Voltando com tudo!

1 mês e meio depois, aqui estão as novas coisas que eu (Junior_Djjr) fiz no jogo:


O que foi feito:

  • Roda de armas inspirada no GTA V, mas melhor.
  • Menu de pausa inspirado no GTA V, mas melhor.
  • O minimapa já está praticamente 100% pronto como produção final. Inclusive o desenho dele.
  • Adaptação de hud para qualquer aspect ratio (como monitores ultra wide, desde 800×600 até 4K).
  • Adicionado nuvens volumétricas [o mesmo sistema que compramos há anos atrás], incluindo um total novo sistema de ciclo de dia e noite e estações do ano.
  • Criado sistema de contadores de valores, barras e tempo na tela (para ser usado em missões etc).
  • Adaptado diversos tipos de armas placeholders (pistola, fuzil, shotgun, sniper, lança-mísseis, faca, espada, lanterna).
  • Criado centenas de shader maps para texturas que faltam, principalmente normal/bump maps e ambient occlusion maps.
  • Melhorias no controle do personagem e câmera.
  • Usar a mão para empurrar portas e portões.
  • Sistema de fogo com espalhamento.
  • Minigame de chutar pênalti.

 


Minigame de pênalti

Direto ao mais divertido: Eu criei um minigame para bater pênalti em qualquer gol de qualquer quadra do jogo!

Não tem como ser um GTA brasileiro sem ter futebol envolvido. Claro, é difícil demais criar toda uma mecânica de jogar futebol (será que no futuro eu farei??), mas chutar pênalti já é divertido o bastante.

Não é muito importante fazer esse tipo de coisa logo no início do desenvolvimento do jogo, mas eu não me importo, o meu objetivo principal é finalizar, de qualquer forma, eu faria isso em qualquer outro momento. A bola foi feita pelo Meck.

Também, não é só um minigame, é toda uma base de sistema de atividades. Em outras palavras, a base agora está pronta para adicionar mais minigames e atividades sem muito trabalho.

O minigame ficou simples mas legal, com boa curva de aprendizado. No futuro daria para fazer uma AI de goleiro, e estaria mais próximo de um real jogo de futebol de quadra. Também pretendo basquete.

 


Roda de armas

O conceito de seleção de armas em forma de roda já existe desde muito antes do GTA IV, e está cada vez mais obrigatório em qualquer jogo do gênero.

Meu objetivo: uma roda de armas limpa, simples, com personalidade, que não ocupa muito a visão e sem poluição visual.

A roda de armas do GTA V é boa, é uma boa fonte de inspiração, mas eu encontrei vários problemas para melhorar:

Problemas:

  1. A Rockstar teve a ideia de haver “caixas” onde as armas são mostradas no meio, o problema é que nem todas as armas encaixam dentro desse espaço, enquanto outras encaixam, isso causa a sensação de desorganização.
  2. Cada espaço pode guardar mais de uma arma, mas você não vê quais são as outras, e pior, para você ver que tem mais do que uma arma, é necessário você olhar para o número embaixo do nome da arma que fica no centro da roda, não na arma. Isso causa confusão e lhe faz não notar que você tem mais de uma naquele espaço.
  3. A ideia da Rockstar foi deixar o centro da roda vazia, para preservar a visão de onde você estava mirando antes de trocar a arma, mas eles quebraram isso, pois quando você tem uma arma com silenciador etc, aparece textos grandes exatamente no centro, tapando a visão. Inclusive, eu acho a visão de fundo borrada até demais. Engraçado que o GTA Trilogy quebrou isso também, colocando o nome da arma exatamente no centro em vez de levemente pra cima.
  4. Não há personalidade. Ninguém olha para um ícone de armas do GTA V e fica “uau, que nostalgia, quantas lembranças”, agora pense num ícone de arma do GTA San Andreas, há tanta personalidade que as pessoas até tatuam eles!
  5. Até hoje eu não acredito como que a Rockstar programou a roda de armas no mouse. Eles só simularam a posição do analógico, ou seja, existe uma dificuldade maior em selecionar os cantos diagonais, e por exemplo, se você está com o mouse em cima, mas quer a arma do lado (diagonal superior direito), a sua reação natural é arrastar o mouse pra direita, mas ele seleciona a arma direita, não na diagonal. É um erro de UX simplesmente bobo e muito fácil de ser resolvido.

Soluções:

  1. As armas de fato têm diferentes tamanhos, e mesmo se usar ícones quadrados, o espaço é menor nas diagonais. Portanto em vez de tentar encaixar no espaço, faça o espaço aberto: deixe as extremidades esfumaçadas, como se não tivesse um fim, ou seja, os ícones ficarão propositalmente soltos pra fora.
  2. Coloque as setas de seleção da arma do lado do próprio ícone da arma (não é óbvio?) e mostre o ícone minimizado dos lados, para você ter uma prévia do que você tem em cada lado, agilizando a troca. Eu também pensei em abrir uma segunda roda externa para a escolha, mas isso criaria limitação da quantidade de armas. E pretendo colocar um indicativo de número em algum lugar.
  3. Em vez de um texto, simplesmente use ícones para identificar quais são os attachments daquela arma. No caso da minha roda eu não coloquei pois ainda não pretendemos adicionar tal sistema no jogo, provavelmente no futuro.
  4. Esses ícones do formato real da arma, virada de lado, são muito sem graça, estilo muito rodado, precisa inventar algo mais único, por exemplo na diagonal estilizado, como era nos GTAs clássicos. Eu ainda não inventei, mas pretendo algo assim, mas que seja fácil de fazer, pois a minha ideia é que seja possível adicionar armas como forma de mod/addon.
  5. Eu programei uma seleção de roda de armas no mouse melhor do que GTA V com somente 10 linhas de código (sem o problema que eu mencionei acima). Duvida? Está aqui o código, uso livre. 

Enfim, foi isso o que eu consegui, uma roda de armas ainda mais simples e agradável do que a do GTA V. Obviamente os ícones e textos são placeholders que ainda serão trocados.

 


Menu de pausa

Eu fiz a mesma “ciência” também no menu de pausa.

Meu objetivo: Um menu simples e bonito, mas que tenha alguma personalidade, sem poluição visual, que você tenha fácil visão de cada elemento da janela (sem muitas mudanças de layout) e de fácil expansão.

De novo o menu do GTA V é uma boa inspiração, principalmente porque é relativamente simples de ser programado, mas quando parei pra analisar, há uma quantidade de problemas graves…

Problemas:

  1. O item do menu atualmente selecionado é com fundo branco, no entanto, o anteriormente selecionado (pai ativo) também é branco, e o outro também… É um erro de UX que nem um amador faria, sinceramente. Você às vezes se perde onde está a sua atual seleção, pois as seleções anteriores estão da mesma cor.
  2. Alguns painéis de configurações, principalmente o de configurações gráficas, são muitas linhas, relativamente pequenas, que o nome está na esquerda, e a opção está na extrema direita, você precisa ficar movendo os olhos de maneira muito distante para ver qual é cada opção configurada. Eu notei o problema desde a primeira vez que abri esse menu no jogo.
  3. Outra coisa que eu sempre odiei é a necessidade de por exemplo apertar Enter para começar a trocar uma opção, e voltar para confirmar, ir para o próximo item, entrar de novo etc. A navegação, especialmente no menu de opções, é muito travada e nada agradável, e às vezes você fica confuso se você está ou não dentro de uma troca de opções ou troca de linha, pois a cor não difere.
  4. Não existe fundo, somente existe elementos, e a separação dos elementos é o fundo do jogo. Isto é muito feio, olhe o rosto do Franklin acima, não tem como achar isso bonito, é bagunçado, não há limitações claras do layout do menu, e o fundo é brilhante demais causando poluição.
  5. Não está muito claro quando um menu é escrolável. Eles tentaram deixar “minimalista” colocando um indicador no final, mas às vezes você não nota, ou não entende que aquilo indica que há mais coisa embaixo, na real parece um botão.
  6. Algumas barras são números pré-definidos de opções (passos), por exemplo você pode selecionar 5 níveis, mas elas não indicam com traços onde são os níveis, eu sempre achei isso um leve incômodo em vários jogos.
  7. O mapa é a guia selecionada por padrão, o que faz sentido, mas ela é a primeira da lista. A segunda é o resumo, que também é uma guia frequentemente acessada. Para ir até o final do menu, se aperta pra esquerda para inverter o final, mas nós não temos naturalmente essa ideia e várias vezes ficarmos apertando pra direita até o final. Perceba que com essa lógica, a guia “Game”, que também é importante, é a mais confusa de ser rapidamente acessada, e a “Settings” é a mais distante, sendo que ela fica no meio.

Soluções:

  1. Os itens ativos (pais, anteriormente selecionados) são marcados com uma linha para a direção onde o menu foi navegado. Por exemplo, a guia “Settings” indica pra baixo, “Audio” indica pra direita.
  2. Em vez do texto da direita ser alinhado na direita, alinhe na esquerda a partir do centro do painel. Por que não? Assim os textos não ficam tão distantes, sem aquele espaço vazio gigantesco no centro.
  3. Em vez de entrar e sair da seleção de opções, entre uma vez e continue lá, trocando as linhas normalmente, por que não? E use uma cor de destaque para deixar claro que você está dentro da seleção de opções.
  4. Essa remoção de fundo parece uma frescura contra os “design boxy”, de fato é interessante para apresentações de web design, mas eu acho péssimo para a UX de um jogo, especialmente num menu com muitas opções. Neste caso, eu acho muito importante que o menu todo seja definido num layout de caixa estática onde as pessoas entendem claramente as extensões da janela, sem o fundo estourar por cima de onde você está vendo.
  5. Outra coisa que eu acho frescura é a remoção da barra de scroll. Mesmo que esteja jogando com um gamepad, a barra de scroll é um padrão universal, você nem precisa tocar nela (pense em smartphones), ela é um indicador importante de onde você está, que aquela janela é escrolável e o quão grande ela é.
  6. Para separar as barras com níveis de passos pré-definidos, adicionei traços separando cada nível, e o número de traços é de fato os níveis que você pode selecionar. Por ter só 2 traços, ou 10…
  7. Eu deixei a guia ‘Mapa” no centro, “Jogo” na esquerda e “Resumo” na direita, sendo que as extremidades são as coisas menos acessadas: “Perfil” e “Configurações”. Isto dá uma melhor visão de que você começa do meio e aperta somente 1 ou 2 vezes pro lado para alcançar qualquer guia, algo que no GTA V você inconscientemente apertaria 5 vezes para ir até o outro lado. Eu prefiro evitar essa ideia de “aperte pra esquerda para ir para a direita”, pois não é intuitiva para a nossa mente.

E é este o resultado. Eu demorei quase 1 semana programando todo o sistema de menu, e está basicamente pronto, só falta botar o conteúdo. No momento eu só fiz um pequeno sistema de trocar configurações do jogo.

Perceba que no “Valdir” (meu nome) eu quis colocar o nome do seu jogador em vez de “Perfil”, para ficar algo mais humanizado. Lá eu penso em colocar todas as informações sobre o seu jogador, estatísticas do gameplay etc.

Modéstia à parte, este menu ficou mais bonito e com User eXperience melhor do que o do GTA V (algo que não é tão difícil assim de ser alcançado, eu nunca vi alguém elogiar o menu do GTA V).

Ok, mas e a guia do mapa? Tem algo nela?

 


Minimapa/radar

Eu evito elogiar meus próprios trabalhos, mas eu não consigo deixar de dizer que isto ficou lindo…

Desde o início eu falei: eu quero um desenho de mapa bonito, icônico, e eu fiz esse, inspirado no GTA San Andreas, mas com menos cores e mais tons de cinza para mais detalhes.

O tom de cinza médio indica os “semi obstáculos”, geralmente coisas que estão lá mas não necessariamente são um obstáculo para você, ou então, a área de lazer dos prédios (deste modo o formato da torre do prédio fica em branco).

Isto não é uma imagem, é uma mesh 3D com materiais pintados, portanto haverá como você carregar ou criar seus próprios estilos de cor nas configurações do jogo! Eu também pretendo deixar a opacidade configurável.

Ultimamente os jogos estão deixando o minimapa cada vez mais enxutos e sem graça, sem personalidade. Por exemplo o minimapa do GTA IV e do GTA V de nova geração, que é só um negócio preto com tons de cinza. Jogos de corrida são literalmente só a rua. O meu objetivo foi algo icônico, memorável.

“Ah, mas fazem dessa forma porque não querem mostrar detalhes demais do mundo do jogo, o seu minimapa mostra detalhes demais.”, eu não me importo, colocando na balança, eu prefiro algo bonito, cheio de cores e detalhes, do que algo chato e sem graça. Lembre-se, o minimapa é parte essencial do visual do jogo, está na sua visão a todo o momento, não é um simples detalhe.

E em comparação com o minimapa do GTA Trilogy, perceba que este também tem perspectiva e o cursor que indica a posição do player também é levemente afastado do centro. Mas não há nenhuma imprecisão do cálculo de posição e desenho (como acontece no GTA Trilogy onde o player aparece dentro de prédios e muda a posição conforme gira a câmera), aqui tudo é milimetricamente preciso (como a GSG errou em algo tão simples??), e eu achei um erro o GTA Trilogy deixar o cursor do player tão pra trás, e com tanta perspectiva, você vê muito o que está na frente, mas quase nada do que está atrás, assim atrapalhando ver os inimigos que estão atrás de você. E como você pode ver, não tem a porcaria do serrilhado como no GTA Trilogy.

 


Controle do personagem

Eu ajustei bastante a velocidade e blend das animações de andar. Ainda não pude me dedicar à melhorar as animações, e eu acho que é melhor esperar alguém específico para trabalhar nas animações do jogo.

Mas algo muito legal que eu fiz, foi a mão empurrando portas e portões dinamicamente, automaticamente, igual GTA V.

Perceba também que ao segurar uma arma na mão direita, ele usará a mão esquerda, exceto se a arma for pesada demais para segurar com uma mão só (como uma RPG), neste caso não usará mão nenhuma.

Para isso eu fiz um controlador para definir qual mão está ocupada, e qual a importância de cada mão. Eu espero que algo assim possibilite, no futuro, o personagem por exemplo segurar uma lata de refri numa mão e ainda conseguir usar uma pistola com a outra. Veremos se eu consigo.

Ainda tem bastante coisa para refinar no controlador do personagem, ele é muito completo e avançado mas não tão cosmeticamente polido como jogos AAA, mas não é tão importante agora e requer maiores trabalhos com animações.

 


Nuvens e clima

Adicionado novamente ao projeto as nuvens volumétricas do Digital Ruby, a solução é baseada em soluções open source e no paper oficial do jogo Horizon: Zero Dawn.

Eu já havia criado todo o sistema de calendário, relógio e transição de dia e noite do IMPUNES, além de um simples sistema de clima (que eu pretendia recriar pois era básico demais), portanto eu pretendia usar somente as nuvens, mas eu gostei tanto do sistema de dia e noite desse asset que eu vou jogar tudo fora (na verdade, provavelmente vou polir para vender barato na Unity Asset Store), e assim migrar todo o jogo para esse novo sistema.

Além de nuvens lindas, bem otimizadas e com muitas opções de formações e níveis de qualidade (claro, você pode desativar as nuvens volumétricas, pois elas são pesadas), todo o sistema de ciclo de tempo é muito caprichado.

IMPUNES é inspirado em Balneário Camboriú – SC, portanto eu configurei a latitude e longitude conforme a cidade real para ver se o posicionamento do Sol é realista, e para a minha surpresa, o horário de nascer e pôr do Sol se bateu com o site sunrise-and-sunset.com.

É sério, dentro do jogo, em Junho o Sol se põe às 17:30 e em Janeiro às 20:00. Se você perguntar para alguém que mora em BC, vai dizer que é isso mesmo.

A lua também tem posicionamento realista, variando cada dia, mês, ano, naturalmente gerando as fases da Lua. Eu estou até curioso se é possível ter, naturalmente, um eclipse solar no jogo.

Outra coisa que eu fiquei impressionado, é que essas nuvens são volumétricas, feitas para serem vistas de baixo pra cima, para melhor desempenho, mas durante o jogo, eu posso trocá-las por nuvens de “voar entre”, para melhor visualização com aviões voando entre e acima delas, e o formato da nuvem é preservado durante troca! Nem GTA V consegue isso de maneira convincente, e GTA Trilogy nem sequer é possível chegar na nuvem (mais ou menos). Ou seja, no futuro você vai poder pegar um avião e ir até uma nuvem, e ela realmente estará lá, de maneira otimizada.

O meu sistema de ciclo de dia e noite era aceitável, mas este é incrível, o problema era a necessidade de esperar 365 dias para ver todas as estações, mas eu editei o algoritmo do Sol para um calendário curto de 24 dias. Afinal, eu quero que você desfrute das diferenças entre as estações do ano, ainda mais por ser uma cidade praiana do Sul do Brasil, ou seja, no inverno haverá muitas pessoas agasalhadas, neblina, e no verão haverá muita gente na praia. Eu quero proporcionar essas diferenças de gameplay para trazer uma maior imersão. Ou seja, na minha ideia, em 19 horas de gameplay você terá todas as estações do ano, dentro de dias de 48 minutos (como GTA V e vários outros jogos).

 


Importante:

O projeto foi totalmente renovado, portanto queremos desvincular o nome antigo do projeto (“2NTD”).

Agora o progresso do jogo estará somente nas redes sociais da equipe 2nibble.

facebook.com/2nibble

twitter.com/2nibbleStudios

youtube.com/c/2nibble