quarta-feira, 31 de janeiro de 2018

Mais atualizações de teste em breve: mais progresso!

Mais testes em breve! Textão, mas é legal para quem gosta de entender o que rola nos bastidores da programação do jogo.

Depois dos últimos testes na 146 e 146X, chegamos a conclusões importantes! Muito obrigado a todos os que ajudaram a testar e relataram o desempenho! <3

O jogo funciona BEM MELHOR usando recursos recentes, no caso marcando a escolha de API gráfica automática e com a renderização em múltiplos núcleos ativada na engine. Quase todos os celulares são quad core hoje em dia, ou dual core no mínimo... Nesse modo enquanto um núcleo lida com a programação do jogo e sincronização das tarefas, o outro cuida mais da parte gráfica. Isso permitiu obter melhores taxas de FPS, variando de 10 a 100% dependendo do aparelho! Alguns obtiveram 30% de ganho, outros 50%, em alguns modernos a taxa de FPS chegou a dobrar!

Esta opção infelizmente se mostrou problemática em alguns aparelhos com uma GPU específica, muito usada pela Samsung em alguns modelos do Galaxy J7 e A5 (entre outros, mas não todos!). Perto do número de aparelhos disponíveis mundialmente é pouca coisa, não é justo sacrificar o desempenho de quase todo mundo por conta de meia dúzia de aparelhos.

A opção moderna se tornará a padrão na Play Store, ao que tudo indica (aquele da tela verde, com o X). Quem possui estes aparelhos onde há a corrupção gráfica precisará baixar um APK do jogo que será disponibilizado à parte, e desativar a atualização automática no Proton na Play Store (só para o Proton, não precisa ser para tudo), para evitar que ela substitua o jogo. Tentaremos colocar um aviso na tela do jogo nesses aparelhos. É o melhor caminho encontrado por agora.

Futuramente temos fé que a Unity corrigirá este bug nativamente. Iremos juntar relatórios dos bugs, prints e informações dos modelos e enviar para os desenvolvedores da Unity, sugerindo forçar o uso do OpenGL ES 2 nestas GPUs específicas. Quem sabe faremos uma listagem do jogo separado na Play Store, mas no momento isto é inviável porque não dá para unir as colaborações nos dois - o downlaod será por APK isolado mesmo.

Nos celulares da maioria das pessoas a versão com o X rendeu ganho considerável de FPS, é boa demais pra ser deixada de lado, como vinha sendo deixada desde o ano passado. Melhorando o desempenho podemos ter um controle mais estável, aumentar um pouco as configurações (sem exagerar, é claro) e curtir melhor o game! Nada nada, no celular 5 FPS ganhos já é muito, quando se joga a 15, 20...

Diante destes testes, nesta semana faremos mais um, desta vez mudando a versão da engine Unity. Novas versões geralmente trazem benefícios, melhorias, correções diversas, muitas otimizações. Na versão 5.x a Unity melhorou muito! Se ficássemos na versão 4.x com medo de atualizar, o jogo estaria bem pior, infinitamente mais lento. Desta vez ocorre algo parecido. Estamos usando a versão 2017.1 da engine, lançada no começo do ano passado. De lá para cá ela teve duas grandes atualizações, a 2017.2 e 2017.3. Elas trazem melhorias de performance em algumas áreas. A 2018 está em beta, não iremos utilizá-la até estar estável. Mas o jogo será atualizado para a 2017.3 pelo menos, que é a versão oficial do ano passado. Este processo de atualização será necessário cedo ou tarde, visto que com a engine antiga chegará uma hora em que a Play Store não aceitará mais o jogo. Então tentaremos fazer agora.

Diante disto, teremos que fazer um teste amplo com os jogadores para ver se não aparecem bugs colaterais inesperados, jogando por alguns dias com a futura 147 e 147X. Ambas serão com o mesmo conteúdo, porém compiladas com a engine mais nova.

No Windows iremos incluir a API OpenGL como opcional, algo que por padrão não estava presente. Ficará várias opções e o jogador escolhe a que rodar melhor. No Android infelizmente isto não é possível, por isso temos que gerar dois APKs.

A Unity 2017.3 removeu suporte ao DirectX 9, o que impacta o Windows XP, que é um sistema bem velho. Como o jogo já tem dificuldades para rodar em GPUs muito antigas (tela rosa, ou baixos FPS), isto não será problema, ainda mais considerando que é um projeto em desenvolvimento pensando nos próximos 2, 3, 4 anos. Não ficaremos presos ao passado em detrimento das tecnologias que o jogo pode implementar hoje, pensando no amanhã.

Em termos de conteúdo, em fevereiro chegará pelo menos mais um ônibus, e provavelmente um novo mapa temático, daqueles comprados prontos. As correções no Longeee foram adiadas diante destes bugs. Ainda há centenas de e-mails de vozes para responder, correrias atrás de sons e animações de passageiros nos novos ônibus, etc. Esperamos a compreensão de todos.

Há usuários que não param de mandar mensagem perguntando quando terá atualização, o que vem, etc... Desde o início do jogo fomos bem transparentes: NÃO HÁ PREVISÃO, o que se sabe é que virão. Muito raramente fica mais de 30 dias sem atualizar, e quando fica é porque algo realmente necessário está sendo feito. Desenvolver um projeto desse não é coisa de uma semana, é de meses, anos! Alguns recursos simplesmente exigem mais tempo mesmo. Foi o caso do mapa contínuo no ano passado. Demorou uns dois meses para ficar pronto, sem ele não teríamos linhas longas no jogo, no mapa Aricanduva! Todas elas seriam pequenas demais num mapa isolado, não contínuo...

Enfim, esperamos a compreensão, lembrem-se que o projeto está em desenvolvimento e é um BETA, logo, tem bugs, e terá muitos bugs ainda até ficar pronto. Não adianta ficar pressionando por atualização, novas rotas, isso e aquilo, sendo que estamos trabalhando arduamente todos os dias no jogo.

Os mapas temáticos comprados prontos ajudam a suprir em parte a falta de rotas (Test Track, Longeee e em breve um novo). Novas rotas no mapa Aricanduva ainda dependem da definição da ferramenta de ruas, que não está pronta totalmente - queremos ruas mais naturais, curvas e subidas, não só as ruas chatas do jogo atualmente. Então tenham paciência, ou vão jogando outros jogos disponíveis no mercado enquanto este não agrada, se for o caso ;)

É isso, pessoal! Muitos progressos virão em breve. Agradecemos imensamente a quem ajuda a testar as versões isoladas disponibilizadas aqui na página, o feedback de vocês é fundamental para continuar fazendo o jogo fluir bem.

terça-feira, 23 de janeiro de 2018

Mais otimizações em estudos: renderizar a uma resolução menor e escalar; e LOD nas pessoas!

Estudando mais otimizações... Tenho duas em mente: renderizar a uma resolução menor, aplicar anti-aliasing e escalar para o tamanho da tela. Isso pode poupar o trabalho de GPUs mais fracas, especialmente em aparelhos baratos de tela grande (onde há mais pixels, forçando mais a GPU). Assim como a redução da resolução que já tem, não vi diferença no Moto G5S nem no Moto G, mas talvez isto poderá ser sentido melhor nos Samsung mais baratos - visto que são os modelos que mais geram reclamações. Bem como nos tops de linha com alta densidade de pixels, reduzindo o peso na renderização. Infelizmente não tenho nenhum aqui para testar para ver se ajuda mesmo... Frente à alteração da resolução atual isto terá benefícios: dá para usar o anti-serrilhamento, deixando a imagem um pouco mais suave do que apenas mudar a resolução. Em tempo, mudar a resolução para 50% lá nas opções gráticas melhorou o desempenho para você? Se sim, é provável que este recurso ajudará! Deixe nos comentários seu relato, informando também o aparelho em uso. Outro aspecto que considero é usar LOD nos pedestres e passageiros. Eles já são bem low poly, mas com LOD ficariam bem mais leves quando estão ao longe. Basicamente o jogo mostra um modelo parecido, porém bem mais simples, quando as pessoas estão distantes. E troca o modelo para um mais detalhado quando vão chegando perto da câmera. Isto reduz o número de triângulos que a GPU precisa processar nas cenas com vários passageiros e pedestres. O meu "medo" é a otimização não surtir efeito, porque a transição entre os LODs parece exercer uma certa carga também. Precisarei fazer testes com bastante calma. Sei que a diferença ao usar os passageiros e pedestres "feios" para os detalhados é brutal (aquela opção na tela Extras). Então acredito que isto terá benefícios. Novamente, mais um recurso "pago", tendo que adquirir uma ferramenta para automatizar a produção de LODs. Para quem acha que o jogo tem que ser todo grátis só porque a Unity e o Blender são de graça... rs É o que digo: o game só vai para frente tendo uma parte comercial. O modelo atual é "perfeito", digamos: mantemos a versão grátis, quem colabora joga com algumas coisas antecipadamente e no final todos se beneficiam. Se fosse só grátis o jogo estaria bem mais atrasado e incompleto. Se fosse só pago seria bem chato, e também estaria atrasado, visto que não teríamos jogadores em quantidade suficiente para pagar por algo incompleto. O modelo atual de "acesso antecipado" une o melhor dos dois mundos! <3

quinta-feira, 11 de janeiro de 2018

E o jogo vai crescendo! Logo logo está com 1 GB...

Com 10 ônibus o game chegou na casa dos 400 MB... E ainda tem poucas rotas. Até 1 GB acho que ele vai chegar em algum momento... É o tamanho "alvo" limite pra versão Android, considerando que vários aparelhos acessíveis de hoje possuem 32 GB de espaço (e não podemos ficar tão restritos aos aparelhos de 8 GB para sempre, né...). Mas mais do que 1 GB é complicado.

Tornar os ônibus "addons" não é fácil, exige um trabalho técnico grande por conta das atualizações da engine Unity (um pacote gerado em uma versão dela requer o jogo gerado na mesma versão, o que complica as atualizações...).

Fico pensando em como reduzir o tamanho do jogo, sem prejudicar a experiência nem a qualidade... No Android muitas texturas já são otimizadas e usadas em versão menor, se diminuir mais começam a ficar feias...

Talvez remover todas as skins dos ônibus antigos, deixando elas via download. Ainda não sei até que ponto isto ajudaria. Futuramente (bem futuramente) os ônibus terão que ser "soltos", aí só baixam os que forem usar. Mas isso não virá na fase de protótipo, atrasaria muita coisa na estrutura geral do projeto.

Os mapas provisórios um dia sairão do jogo, provavelmente, para dar lugar para as novas coisas. Aquele Test Track e o Longee, entre os outros que virão, uma hora vão sair. Mas no momento não podemos tirá-los, visto que há poucas linhas. Os mapas antigos não fazem diferença pois usam objetos compartilhados (os mesmos prédios estão no MOBILE1_cidade, Term Shaze e Aricanduva). Cada prédio é salvo uma vez só e instanciado no carregamento. Excluir os antigos não faria diferença nenhuma na prática.

Qual saída? Encarar que um jogo deste tipo requer mesmo muito espaço, não tem como ter modelos detalhados e várias skins e mapinhas variados... Sem ficar grande?!

TEXTO DE DESABAFO PARA AS PESSOAS CHATAS QUE RECLAMAM DE TUDO O TEMPO TODO!

[post desabafo pros chatos! Pras pessoas de bem que já sabem como o jogo é produzido, nada muda! ;) ]

O texto foi REMOVIDO para não sujar o blog! Quem leu, leu... Obrigado a todos de bem! <3 Quem era pra ler não vai ler mesmo, só reclamar, é desnecessário manter aquele texto aqui rs.

Aqui o vídeo citado, nele o papo é mais suave:





quarta-feira, 10 de janeiro de 2018

Dúvidas sobre as colaborações e acesso ao TGV!

Pessoal, é muita pergunta repetida, vamos centralizar as respostas mais comuns aqui! 99% das informações já foram divulgadas amplamente aqui na página, inclusive hoje mesmo, quando postamos aquele print com um textão! ### JOGO FECHANDO? Experimente o botão "G1", ele é calibrado para a maioria dos celulares! Se for o caso reduza um pouco alguma configuração, lembre-se de usar a versão "lite" do ônibus! Por enquanto só o TGV e o Mond08 têm ela, ao longo do ano todos os demais ônibus terão. Se for o caso desinstale o jogo e instale novamente, isso costuma resolver problemas devido o cache ou obb antigo! Lembre-se de ter cópia das skins e letreiros caso faça isso, pois o Android apaga na desinstalação. ### QUEM TEM ACESSO AO TGV? O novo ônibus é um bônus pros colaboradores L2/L3, em algumas semanas ele ficará gratuito! Apenas esperem! Já saíram dois ônibus grátis em sequencia bem no final do ano! O jogo só existe graças aos colaboradores, se não fossem eles só teria o PBC, nada mais justo do que retribui-los com alguns bônus de vez em quando! ### APITA NA SELEÇÃO Se apita na seleção é porque você não está identificado como colaborador L2 ou L3! Nesse caso verifique o login se foi feito corretamente, tem que aparecer L3 ou L2 na entrada em verde à direita, perto do número da versão! Siga as instruções do e-mail de quando você recebeu o login e senha! ### IDENTIFICAÇÃO VIA PLAY STORE E PAGSEGURO O login L3 pode ser feito pelo e-mail e senha enviados para você anteriormente! Se pagou pela Play Store, a identificação geralmente é automática desde que use a mesma conta Google na Play Store! Se pagou pelo PagSeguro, aguarde a confirmação do pagamento no sistema! O boleto pode levar um ou dois dias úteis para ser identificado. ### QUEM PODE JOGAR NO MAPA NOVO? O mapa é grátis para todos! O bug de ficar escuro ainda será analisado, isso já ocorreu no passado em outros aparelhos. ### O QUE É TESTADOR? O QUE É COLABORADOR? Testador e colaborador são diferentes, um pode ser o outro, mas não são necessariamente a mesma coisa! Testador: quem se inscreve para receber as versões prévias na Play Store, geralmente versões antecipadas que podem conter mais bugs. Tem essa opção na página do jogo na Play Store, é só rolar a tela lá mais pra baixo. Ser um testador é grátis! Colaborador: quem patrocinou o jogo fazendo um pagamento validado, seja financeiro ou com as vozes. É o apoio de R$ 20 no caso dos L2, só Android, ou R$ 30 no caso dos L3, Android e PC. Quem teve as vozes aprovadas recebeu L3. ### MANDEI MINHA VOZ, CADÊ MEU LOGIN? Ainda há muitas vozes pendentes para análise, devido o volume o tempo de retorno deve levar alguns dias! Agradecemos imensamente a participação, mas as vozes precisam ser analisadas uma a uma, é um processo naturalmente demorado! Lembrando que não pode ter barulho de fundo em cima da fala, caso contenha em todos os áudios a colaboração não será validada! ### QUEM RECEBEU A ATUALIZAÇÃO HOJE? No caso a atualização foi entregue para os testadores! Nela o mapa está livre para todos e o TGV para os colaboradores! Estamos para postar a atualização no canal oficial para quem não é testador, ELA JÁ FOI ENVIADA para a Play Store, em alguns minutos ou horas deverá aparecer para todos! ### QUEM NÃO PAGAR NÃO VAI JOGAR NO TGV? Nessa atualização não! Espere um pouco, o jogo precisa dos colaboradores, este é um presente para eles! Sem eles não teria cenário, não teria equipe, não teria NADA! Jogo tudo pago é ruim, mas tudo grátis não existe! Os recursos dos colaboradores irão para todos com o tempo, como foi com o articulado, é só ser paciente! Muita coisa boa virá de graça ainda! ### E PARA PC? Para PC será liberado até o final de semana (sábado ou domingo), no mesmo esquema! O mapa grátis para todos e o TGV apenas para os colaboradores L3 por um tempo. ### SUPORTE SOBRE AS COLABORAÇÕES? Em caso de problemas específicos referentes ao pagamento e aprovação, escreva para atendimento@viamep.com, se necessário informe o comprovante de pagamento! Não envie pedidos de ônibus, skins ou outras coisas que não sejam referentes às colaborações para este e-mail!