Ao dirigir por uma cidade virtual, os detalhes fazem toda a diferença para que pareça viva e envolvente. Uma das últimas adições da SCS aos seus títulos de simulação de caminhão é a introdução dos Interiores Parallax, uma maneira inovadora de renderizar interiores detalhados através de janelas usando uma ilusão inteligente. Isso aprimora a profundidade visual dos edifícios no Euro Truck Simulator 2 e American Truck Simulator, que você já deve ter visto em lançamentos recentes, como a DLC Grécia ou seu evento Return to Winterland do World of Trucks.
Hoje, vamos dar uma olhada no processo por trás dos Interiores Parallax e explorar a pesquisa, o desenvolvimento e a implementação que tornaram esse recurso possível. A SCS conversou com alguns membros da equipe por trás desse projeto. Vamos deixá-los se apresentar!
“Olá, meu nome é Sasha, e trabalho no departamento de asset do ETS2. Meu foco principal é desenvolver metodologias para resolver vários desafios visuais. Eu colaboro com outros departamentos em tarefas relacionadas à arte e ocasionalmente assumo diferentes papéis em vários projetos. Durante o desenvolvimento do parallax, assumi um papel entre um líder de arte e um gerente de projeto, ajudando a moldar o processo e guiar a equipe.”
“Olá, meu nome é Jan V. e meu trabalho na SCS nos últimos cinco anos compreendeu principalmente programação gráfica de alto nível com aventuras ocasionais no desenvolvimento de ferramentas internas; mais especificamente, a maioria das minhas tarefas envolve pesquisar e implementar novos recursos gráficos ou melhorar os existentes, sejam materiais de modelo ou efeitos de pós-processamento.”
“Olá, meu nome é Yurii H., e entrei para a equipe da SCS Software há quase 3 anos. Trabalho como designer 3D na equipe de Asset do ETS. No último ano, tenho me concentrado em tarefas específicas, como criar novas cenas de menu, trabalhar no projeto parallax e melhorar os interiores dos assets.”
“Olá, eu sou Martin Č, trabalho como programador de ferramentas na SCS há mais de 5 anos. Durante esse tempo, tenho me concentrado principalmente em dar suporte aos nossos artistas criando ferramentas especializadas no Maya e gerenciando nosso pipeline de asset com meu colega e bom amigo Petr B. Uma dessas ferramentas especializadas era a nossa chamada “Interior Window Tool”, que permite aos artistas aplicar nosso novo shader de interior de parallax aos ativos."
A Visão Por Trás dos Interiores Parallax
Qual foi a motivação por trás da criação desses novos interiores Parallax? “A ideia veio de um dos seus colegas, Wave, que se inspirou em como outros jogos, como Forza, implementaram uma tecnologia semelhante.” Sasha conta a SCS “Ele construiu o primeiro protótipo, provando que essa abordagem poderia funcionar em nossos jogos. A partir daí, refinamos o processo e o expandimos para um recurso completo, então, muitos parabéns a ele por isso!”
“É comumente dito que computação gráfica em tempo real é tudo fumaça e espelhos. Sempre que vemos uma oportunidade de melhorar nossos visuais em grande escala sem necessariamente comprometer o desempenho, consideramos que vale a pena investigar.” Jan V explica, “Visto que estamos longe de ser os únicos desenvolvedores por aí construindo um mundo virtual modelado de perto da realidade, perceber tecnologia semelhante sendo amplamente adotada com resultados impressionantes em outros jogos nos deu a inspiração necessária para decidir adaptá-la nós mesmos, talvez até mesmo criando novas melhorias para a técnica como resultado.”
“Ter uma maneira direta e universal de criar e renderizar interiores de edifícios com aparência realista nos permitiria economizar tempo tanto na frente de criação de asset (não ter que criar manualmente cada cômodo atrás de cada janela) quanto na renderização - com mapeamento de parallax, muitas instâncias de interiores podem ser essencialmente desenhadas de uma vez usando uma única peça de geometria especialmente parametrizada, entre outras coisas. Considerando que também estávamos usando uma versão extremamente simplificada do efeito em nossos jogos por muitos anos neste ponto, atualizar para um visual mais atualizado parecia a coisa lógica a fazer”
Onde Tudo Começou?
“Nos estágios iniciais, muito antes da equipe de pesquisa e modelagem artística se envolver, começamos com uma fase experimental”, Jan V conta a SCS. “A equipe era formada por Wave e eu, que cuidamos da criação das texturas iniciais e do trabalho de modelagem 3D. Estávamos analisando o que era realisticamente possível implementar, elaborando uma lista básica de requisitos e iterando processualmente no que é chamado de fatia vertical, um protótipo inicial no mecanismo usado para representar o que poderia ser implementado formalmente de forma realista mais tarde no pipeline de produção. Neste caso específico, este processo consistiu em pegar um asset 3D existente e adaptá-lo para usar esta nova técnica de renderização.”
“Antes de começar a trabalhar na criação de interiores de parallax, nossos programadores desenvolveram um shader, que testamos inicialmente usando cenas de bloqueio simples.” Yurii H explica “Depois que o shader passou no teste com sucesso, nossos pesquisadores conduziram um estudo extensivo para determinar os tipos de interiores que precisávamos, seus tamanhos e quantos seriam necessários. Somente depois disso passamos a desenvolver completamente o atlas.”
“Nosso objetivo era cobrir o máximo de casos de uso possível com a menor quantidade de texturas e ferramentas.” Sasha explica “Em outras palavras, precisávamos projetar interiores que parecessem naturais e consistentes em todos os países, cidades e tipos de construção, tanto no ETS2 quanto no ATS, mantendo a implementação o mais simplificada possível. Isso exigiu uma pesquisa extensa.
“Realizamos um estudo detalhado dos tipos de interiores, sua distribuição proporcional e sua relevância para ambos os nossos jogos. Além dos interiores em si, nossa pesquisa se estendeu a vários tipos de cortinas, persianas, venezianas, decalques, anúncios e outros elementos relacionados. O próximo passo consistiu em criar esses interiores. Depois que tivemos uma compreensão sólida de nossas necessidades, iniciamos o processo de montagem de atlas de textura para categorizar os interiores por tipo. Isso nos permitiu criar variações adequadas para diferentes tipos de edifícios, como escritórios administrativos, apartamentos, restaurantes e lojas, mantendo um fluxo de trabalho eficiente e gerenciável.”
A Tecnologia, Ferramentas e Código.
A implementação do Interiores Parallax não seria possível sem o trabalho de nossos talentosos programadores e artistas. Para tornar os Interiores Parallax fácil de trabalhar, Martin Č, um de nossos programadores de ferramentas, desenvolveu a Interior Window Tool para o Prismtool, que é como chamamos nossas ferramentas internas aqui na SCS. "Muito disso é centrado no Autodesk Maya, que é usado internamente para criar assets para nossos jogos, incluindo caminhões e outros veículos, edifícios, props, estradas, vegetação, personagens e muito mais."
Martin continua explicando a criação desta ferramenta especializada “Primeiramente, eu queria que fosse simples de usar e entender. Por baixo dos panos, é uma ferramenta que ajuda os artistas com o processo de mapeamento UV, durante o qual os artistas determinam como as texturas são mapeadas para um asset. A ferramenta resultante é, portanto, muito de apontar e clicar. Os artistas veem uma visão geral de todas as salas que podem ser atribuídas a um grupo de faces (polígonos - ou seja, geometria na cena 3D).”
“À primeira vista, pode parecer simples, mas por trás da cortina a ferramenta precisa determinar quais faces podem formar um chamado “portal” em uma única sala com base em sua orientação e proximidade. Há também alguma lógica adicional que tenta determinar se as faces podem estar no mesmo andar ou precisam ser separadas em vários andares. Além disso, para forçar alguns limites, eu estava determinado a adicionar um botão “Randomize Rooms” que atribuiria salas automaticamente a janelas para uma grande seleção de faces. Esta é minha obra-prima quando se trata desta ferramenta!”
“Outro desafio interessante foi ajustar a ferramenta durante sua vida útil para várias mudanças feitas no shader interior por Jan V, que continuamente apresentou melhorias e otimizações. Por exemplo, Jan adicionou uma opção para desabilitar o vidro em diferentes janelas. Mais tarde, ele adicionou uma opção para as janelas serem inclinadas em qualquer ângulo. Então você pode ter uma janela de telhado ou um buraco no chão com uma ressalva de que o cômodo será inclinado junto com a janela. A ferramenta não foi escrita com essas possibilidades em mente no início e envolveu algumas reescritas e matemática interessante para que isso fosse suportado.
Conforme mencionado, Jan era responsável pelo shader em si. Conversamos mais com ele sobre o aspecto técnico deste projeto e como ele ajudou a desenvolvê-lo. “O ingrediente secreto em ação aqui é operar dentro dos limites de um espaço de problema bem definido.” Jan explica, “a maioria dos interiores de edifícios que vemos pode ser geometricamente aproximada como caixas abertas - ou seja, se simplesmente decidirmos que tudo o que precisamos saber sobre uma sala para renderizá-la é sua posição, dimensões e textura, as coisas de repente ficam muito mais fáceis!”
“Trabalhar com um modelo tão simplificado em primeiro lugar é o que me permitiu implementar uma solução funcional como um efeito em tempo real que é totalmente baseado em shader e leve em requisitos de memória de textura; em outras palavras, o ponto crucial do trabalho é feito por programas compactos que vivem na GPU com muito pouca sobrecarga externa. Além da projeção básica de textura, o mesmo procedimento de renderização também cuida da simulação de iluminação interna adequada (adaptada à hora do dia), bem como quaisquer objetos que cubram o espaço interno, como vidro ou cortinas de janela translúcidas.”
"Antes de tornar esse efeito uma parte estável do nosso conjunto de ferramentas, tivemos que definir as restrições técnicas corretas e os parâmetros orientados pelo artista, equilibrando desempenho, fidelidade visual e liberdade criativa. Deixá-lo pronto para produção foi desafiador, exigindo várias revisões de ferramentas e shaders para resolver os obstáculos da pré-produção, conforme os artistas adaptavam os modelos existentes. Apesar dos desafios, o resultado final valeu o esforço. Minha parte favorita do desenvolvimento de recursos gráficos é a liberdade de experimentar, misturando visão artística com a solução de problemas técnicos complexos."
Design de Interior
Com tantos tipos de edifícios encontrados no Euro Truck Simulator 2 e no American Truck Simulator, criar uma variedade de designs de interiores para representar algumas das lojas, empresas, espaços de convivência e muito mais mais comuns era uma tarefa importante. Conversamos com Yurii H para saber mais sobre seu papel na criação deles. "Embora tivéssemos uma pesquisa detalhada para nos guiar, ela serviu principalmente como inspiração para mim." Yurii explica "Minha tarefa principal era projetar cada interior do zero e pensar em como tornar a iluminação mais variada, já que cada cena precisava de três variações de iluminação, para diferentes horas do dia/noite".
"Nossos critérios de seleção foram basicamente os seguintes: primeiro, definir os tipos de atlas com base em categorias de interiores (prédios administrativos, restaurantes, lojas, apartamentos)." Sasha nos explica "Então, segmentar cada categoria por "faixa de preço", por exemplo, decidir quantos restaurantes deveriam parecer sofisticados em vez de mais acessíveis e quais destes deveriam ser mais prevalentes. Finalmente, considerar o tamanho de cada interior individual, e quão grande cada cômodo deveria ser e como isso afetaria o layout geral do atlas."
"Durante todo esse processo, tivemos que manter um aspecto crucial em mente: os atlas precisavam ser o mais genéricos possível, mas ainda parecer apropriados e críveis em uma ampla gama de cenários onde esses interiores seriam usados. Uma vez que os layouts do atlas foram projetados, discutidos e aprovados, passamos a desenvolver cada interior individualmente."
"Depois que tudo estava pronto, criei quatro renderizações, três para as configurações de iluminação e uma para o mapa normal." Yurii nos conta "O tempo necessário para concluir um interior dependia do seu tamanho, que podia variar de 1 a 4 seções, levando de 1 a 3 dias no total."
"Encontramos muitos desafios interessantes." Sasha explica "Para começar, tínhamos apenas uma compreensão muito superficial de como criar esses interiores em primeiro lugar, o que significa que tivemos que inventar o fluxo de trabalho na hora. O mapeamento de parallax, embora visualmente impressionante, vem com limitações rígidas. O que você vê no jogo não é geometria real, é essencialmente uma renderização projetada nas paredes internas de um cubo. Por causa disso, em certos ângulos e em condições específicas, a ilusão pode quebrar, revelando distorções perceptíveis em móveis, iluminação e outros artefatos visuais."
"Felizmente, dedicamos bastante tempo à pré-produção e estudamos como tecnologias semelhantes foram usadas em outros jogos. Para mim, pessoalmente, minimizar essas distorções o máximo possível era uma prioridade fundamental. Queríamos desenvolver um conjunto de ferramentas que resistisse ao teste do tempo, permanecendo relevante por anos, tanto em termos de qualidade visual para os jogadores quanto de facilidade de uso para nossos artistas. Além dos desafios técnicos, o que realmente tornou este projeto especial para mim foi a oportunidade de colaborar com colegas de diferentes departamentos. Foi inspirador ver o nível de esforço e entusiasmo que todos colocaram no projeto parallax — mesmo sabendo que, no final, seria apenas uma pequena melhoria de fundo..."
O Futuro do Parallax
Continuaremos a ver interiores de parallax no futuro e possivelmente mais variedade e adições? "Sim, absolutamente!" Sasha nos conta "Novos interiores continuarão a ser introduzidos com o conteúdo futuro, e também temos planos de retrabalhar alguns dos assets mais antigos, integrando interiores de parallax a eles. Com o tempo, esses interiores se tornarão um recurso padrão em todo o jogo. Quanto aos novos atlas, você definitivamente pode esperar mais!". Yurii também continua compartilhando um pequeno teaser com a SCS, "Aqui está uma pequena informação privilegiada, esses novos interiores de parallax apresentarão tecnologia que permite que sejam usados não apenas atrás de "janelas", mas também em espaços abertos, como garagens, o que aumentará ainda mais os visuais em nosso jogo"
"Além de atlas genéricos, também temos a flexibilidade de criar interiores especializados, por exemplo, para eventos sazonais." Sasha explica "Você pode ter notado algumas mudanças no mapa de Natal deste ano, onde montamos um atlas de interiores com tema de feriado. Você pode esperar mais atualizações sazonais e relacionadas a eventos como esta no futuro. Além disso, temos discutido a expansão da funcionalidade do próprio shader de paralaxe. Eu adoraria revelar esses planos, mas... vamos manter isso em segredo por enquanto. ;)"
A SCS gostaria de agradecer a todos por terem tirado um tempo para ler tudo sobre os Interiores Parallax, e eles esperam que tenham aprendido um pouco do processo envolvido em trazer isso para o mundo virtual! A SCS pede à equipe para compartilhar uma mensagem final para todos vocês que estão lendo.
"Obrigado pelo seu apoio, entusiasmo e lealdade ao nosso jogo. Ver vocês curtindo o que criamos é a melhor motivação para toda a nossa equipe. Nós sempre nos esforçamos para tornar cada novo conteúdo melhor e mais emocionante, e é realmente gratificante saber que nosso trabalho ressoa com vocês. Amem o que vocês fazem, fiquem abertos a novas oportunidades e aproveitem cada momento. Explorem, experimentem e nunca parem de buscar inspiração. Obrigado por estarem conosco — há muito mais por vir!"
Se você gostou deste blog Under the Hood, não deixe de deixar uma mensagem para a equipe, a SCS tem certeza de que eles apreciarão seus comentários! Eles estão ansiosos para compartilhar mais tópicos Under the Hood no futuro. Se você quiser ler artigos anteriores, você pode encontrá-los todos aqui. Até a próxima, continuem transportando!
Nenhum comentário:
Postar um comentário