Construindo a Casa

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Demorou muitas iterações e testes rápidos no início do processo para tornar a casa divertida e assustadora, fácil de explorar e algo que você quer se perder. Vamos mostrar como pensamos no espaço e construímos usando pacotes para tornar a atualização de cadeiras individuais e salas inteiras mais rápida até o terminar/parar/sair.

Começando com um Modelo 2D

Como a casa é tanto a maioria da área de jogo quanto um personagem inteiro para si mesmo, queríamos dar muito pensamento sobre como garantir que a casa permanecesse tanto real quanto divertida. Começamos com a idéia de que a casa deve conter vários gags visuais e de áudio, lore e salas de quebra-cabeças corruptas, e queríamos que os jogadores fossem à casa com pouco conhecimento do que estava acontecendo, aprendendo o

Para equilibrar todos esses elementos importantes, começamos a imaginar o ambiente 3D com um layout 2D! Começando com a solução dos beats de história gerais, ou momentos-chave, queríamos que o jogador experiência, desenhossemos um layout do espaço e pensássemos em como guiarmos o jogador onde queríamos que eles estivessem, mantendo um ambiente que se sentisse maior que a vida.

Um rascunho inicial do que queríamos que a área jogável e o ambiente ao redor parecessem.

Uma vez que tínhamos nosso rascunho inicial do layout geral, usamos terreno para rapidamente colocar as colinas ao redor, lagos, estradas e a pista de pouso até a casa. Não nos preocupamos com a qualidade visual do demo neste ponto, mas em vez disso nos concentramos em quanto tempo leva para chegar à casa e o que levará para dar uma olhada nos jogadores nos glimpses da casa e do evento no céu.

Conceito inicial de como queríamos que o jogador se aproximasse da casa. Para levar os jogadores a quererem uma olhada mais de perto na casa, usamos árvores para ocultar sua visão enquanto ainda dávamos alguns olhares sobre a casa e o evento no céu.

Usando ambas as peças simples junto com Recursos da Loja do Criador, pudemos adicionar rapidamente conteúdo que nos ajudaria a compor o ambiente, incluindo:

  • Fazendo a estrada se dobrar para que os jogadores não pudessem ver o longo dela.
  • Adicionando árvores com áreas mais densas onde queríamos deixar claro que o jogador não poderia acesso, bem como áreas mais finas onde queríamos encorajá-lo a explorar.
  • Aumentar a entrada da casa para que quando os jogadores se aproximarem dela, eles terão que escalada. Isso deu à casa uma presença mais intimidante.
  • Colocando o evento gigante atrás da tempestade no céu para que os jogadores pudessem ver as peças, mas não a coisa inteira, até que eles se aproximem da casa em si.
  • Colocando e descobrindo a forma geral da casa que finalmente nos assentamos.

Não há quantidade de experiência garantindo que suas primeiras ideias sejam as melhores. É por isso que nós temos recursos no Studio rapidamente e usamos peças simples e recursos da Loja do Criador para preencher o ambiente com recursos temporários. Isso nos permitiu não ter que fazer tudo de frente e podemos começar a testar o jogo dentro dos primeiros alguns dias.

Versão mais antiga usando peças simples e a Loja do Criador.

Embora tivéssemos o objetivo de eventualmente substituir os recursos temporários por possuir, a única coisa que nos importávamos no início era estabelecer as bases e jogar a experiência para garantir que o ambiente fosse divertido de explorar e não fosse muito grande ou muito "direto". Isso para que os jogadores fossem encorajados a explorar.

Primeiro tiro da abordagem da garagem.

Planejando Cada Sala

O exterior era apenas uma amostra da história geral para imersão do jogador e torná-lo familiar com o mundo em que estavam jogando. O personagem principal era a própria casa, e nós queríamos que os jogadores passassem a maioria do seu tempo de jogo dentro dela, tubando para segredos e encontrando surpresas em cada sala. Para fazer isso, precisáv

Planta 2D "azul" cedo com descrições de quais eventos assustadores nós queríamos acontecer em cada sala.

Usamos caixas 2D de cada sala para descobrir como queríamos arranque-as umas com as outras. Cada sala deve ser uma oportunidade de fazer algo, e nós trocamos muitas idéias, incluindo as principais utilidades de cada sala, o que gags assustadores que podemos usar para surpreender o jogador e potenciais quebra-cabeças que eles podem enfrentar.

Cada sala tinha que trabalhar juntos, e queríamos contar a história lentamente e progressivamente. Nós sabíamos que não podíamos controlar onde alguém foi primeiro, então planejamos alguns dos desafios mais difíceis para serem mais distantes da porta da frente e mais difíceis de cair. Isso significou adicionar alguns andares à casa, incluindo um sótão e um porão para ambas as razões de jogo e temáticas. O desafio final em um por

Construindo umaLayout 3D

Todas as primeiras planificações e idéias no mundo não fazem uma experiência divertida, então era hora de começar a fazer a ideia 3D! A layout exterior foi bloqueada e nós fizemos espaço para a casa ser expandida ou contratada. As primeiras iterações foram feitas em outra aplicação 3D onde podemos fazer caixas e formas simples

Visão de cima para baixo da layout. Você'll notice it's flipped do conceito.
Meshes cinza são malhas simples que você pode usar para começar a fazer o espaço em 3D.

Nada fica mais fácil à medida que o trabalho se torna mais complexo, então foi importante para nós experimentar frequentemente e descobrir a estrutura de ambiente que queríamos Criar. As primeiras iterações da casa foram tão simples quanto as imagens que você vê acima, e as formas simples nos permeteram ser tão flexíveis quanto possível e fazer alterações rápidas

Queríamos que personagens realistas e de blocos se sentissem naturais ao escalar até a exterior da casa.
Quando eles estavam dentro da casa, queríamos que tudo se sentisse espaçoso, mas não absurdamente grande!

Passei por muitas pequenas e grandes iterações para chegar ao que temos na demonstração final.Compare as rascunhos anteriores acima com uma versão muito mais tarde da sala de espera, e você verá muitas das decisões originais que tomamos depois de jogar através da casa foi capaz de ficar!

Última iteração do layout da casa. A maioria do layout permaneceu o mesmo que a primeira caixa de cores!

Móveis e Props

Precisávamos de muito móveis e decoração para preencher uma casa deste tamanho, então antes de começarmos a colorir qualquer conteúdo, nós fazíamos um documento para rastrear tudo o que podíamos usar que fosse coerente com o tipo de sala que era e os quebra-cabeças que estávamos no processo de criação. Ao trazer todos os nossos pens

Essa lista nos deu uma boa compreensão do que precisava ter prioridade quando a caixa cinza saiu do conteúdo e o preencheu em toda a casa. Ao adicionar conteúdo de alto prioridade cedo, poderíamos facilmente ver quando os recursos eram repet

Versões anteriores em caixa cinza.
Versões de conteúdo finais.

Devido à quantidade enorme de recursos necessários para esta demonstração, reutilizar texturas o máximo que pudéssemos foi extremamente importante para manter dentro do nosso orçamento de memória. Muitos dos móveis compartilham as mesmas telhas ou folhas de textura para madeira, metal, pedra, vidro e tecido, e usamos texturas transparentes onde pudéssemos. Por exemplo,

Quatro texturas que reutilizamos em várias salas.

Fotogrametria

Sabíamos que precisávamos de muito mais conteúdo do que tínhamos tempo para criar nós mesmos, então decidimos acelerar o processo de c

A história de fundo que criamos para a família descreve-os como "colecionadores eccentricos'' dabbling no oculto. Eles reuniram artefatos de todo o mundo, e nós queríamos que a casa estivesse cheia de coisas para refletir essa história. Nós pudemos源 o dado de escaneamento do conteúdo de

Meshes de dados de escaneamento originais com textura de difusão.

UV映射 é o processo de modelagem 3D de desembr

Dados de escaneamento originais com UVs automatizados.

Além disso, a maioria das malhas dos modelos só incluiria a textura de difusão com informações de iluminação assim quando o modelo foi escaneado inicialmente. Embora isso possa ser útil para usar como base para a textura de Albedo, ainda exigiria limpeza manual onde precisávamos pintar a luz e a sombra. Se uma malha tiver uma forte textura direcional,

Texturas de dados de escaneamento originais com iluminação incorporada na difusão.

As malhas dos dados de escaneamento que usamos geralmente eram bastante boas, mas algumas malhas precisavam ser limpas. Por exemplo, algumas malhas tinham buracos problemáticos que precisavam ser preenchidos, bordas granuladas que precisavam ser suavizadas ou bordas finas que precisavam ser espessadas. Para este processo, usamos Zbrush para editar os dados de escaneamento.

Notas da esquerda para a direita: Muito fino e com espinhos | Modelo inteiro precisa de um pouco de polimento | Além disso, muito fino e com espinhos. Preencha e suavize. | Preencha buracos.
O mesmo malha depois de limpar os dados de escaneamento.

Este processo não foi perfeito, de forma alguma, mas ao limpar o modelo de alta resolução, foi significativamente mais fácil criar automaticamente ou manualmente a distribuição de malha do modelo. Distribuição de malha é o processo de modificar a distribuição de边 e estrutura de um modelo 3D, e para noss

Para reposicionar manualmente ou automaticamente, você pode usar qualquer aplicativo 3D de sua escolha. Nós escolhemos usar 3DS Max para reposicionar manualmente e Zbrush para re

A Ferramenta Zremesher no Zbrush.
A Ferramenta de Decoração no Zbrush.

Independentemente da rota automática que pudéssemos escolher para nossos modelos/malhas, provavelmente precisávamos fazer alguma limpeza, já que a otimização automática depende muito da malha de alta resolução, como ela foi construída e seu algoritmo. Tendíamos a escolher a rota de decadência com uma malha triangulada porque era mais importante para nós ter um menor número de vértices ao mesmo tempo que mantíamos a forma original.

Sobreposição e má topologia causam erros de superfície normais que podem ocorrer quando a otimização automática é feita. Isso precisava ser corrigido, caso contrário, teríamos problemas de malha e iluminação no modelo.
O processo de desenho à mão de rostos aderindo às normas de superfície de alta resolução.

Depois de terminar o processo de reatorialização do malha com novos UVs, precisávamos então cozinhar e transferir os detalhes de malha de alta resolução e texturas. Marmoset fez isso facilmente ao cozinhar mapas de malha e transferir quaisquer texturas originais do modelo para

Atribuir texturas originais no modelo de alta resolução ao modelo de corvo ao cozinhar.
Novos UVs e texturas PBR de tamanho 512 com iluminação pintada.
Retopologizado à mão com texturas transferidas. Fazer isso à mão significou que poderíamos controlar a maneira como a geometria fluiu e onde gastamos vértices. Muitas vezes, é uma escolha melhor, especialmente quando um malha de alta resolução é composta por muitos objetos separados ou tem formas problemáticas.
Retopologizando automaticamente em uma aplicação 3D. Fazer isso automaticamente salvou o tempo de criação do mash de baixa resolução manualmente, mas o desligamento foi um mash com mais contagem de vértice para manter o silhuete e um modelo mais desafiador para trabalhar quando criar UVs

Depois de terminar nossas texturas de PBR de Albedo, Normal, Metal e Roughness em Substance Paintter , nossas novas fontes estavam prontas para serem importadas no Studio! havia algumas diferenças de qualidade entre os dados de escaneamento vs. os recursos retopologizados, mas foi finalmente um comércio de valor quando o

Scan data raven.
Recarregado manualmente em um ativodo jogo.
Digite dados de candelabro de scaneamento.
Recarregado automaticamente em ativode jogo.

Usando Pacotes

Pacotes > são um sistema que permite que você armazene e use uma versão de um único objeto ou de um grupo de objetos, e quando você atualiza

Exemplo de um pacote para um quarto inteiro. Qualquer coisa que fosse única ao seu estado normal ou corrompido viveu fora deste pacote.

Pacotes nos permitem modificar tudo, desde a decoração da parede até as paredes inteiras, então ambos os estados da sala seriam atualizados para nossas alterações. Nós também pudemos convertar SurfaceAppearance objetos em pacotes para que pudéssemos atualizar a aparência de um material em todos os momentos da experiência de uma vez. Reutilizar materiais foi fundamental para tornar o demo tão executivo quanto possível para dispositivos, apesar de sua complexidade clara

Por exemplo, as seguintes imagens exibem um pacote de modelos de armário com um conjunto complexo de recursos de filho, incluindo um pacote de aparência de superfície de metal que usamos em vários locais dentro da demonstração. Sempre que atualizamos o recurso de visual de superfície de metal, podemos também executar uma atualização em massa que forçará o recurso de 2>visual de superfície de metal2>

Recurso Armillary
Pacote de Modelo Armillary
Pacote de Aparência da Superfície de Metal

Para mais informações sobre como transformar um objeto individual ou um grupo de objetos como Models ou Folders em um pacote, ou para como escolher um criador do pacote para editar o acesso, veja Pacotes. Nós escolhemos designar o Vistech Demo

Configuramos pacotes de pais, como o armário acima ou uma sala inteira, para atualizar automaticamente para que as alterações no modelo ou pasta sejam compartilhadas automaticamente entre todos os instância desse pacote sem que nós tenhamos que verificar / conferirmanualmente. Este processo significou que podíamos criar facilmente as alterações para cada estado normal e corrupto dos seus

Usar pacotes nos permitiu fazer duas versões de uma sala, enquanto estamos apenas tratando do conteúdo de uma.

Em vez de trabalhar inteiramente no mesmo local de arquivo que a experiência, nós construímos um lugar de armazenamento de recursos com todos os nossos componentes com links de pacote. Sempre que fizemos uma alteração em um pacote neste local de armazenamento, ele atualizaria automaticamente e imediatamente em todos os locais que usam esse pacote. Nós podíamos modificar objetos, adicionar funções e trabalhar em detalhes sem ter que nave

O local de armazenamento de recursos com cada componente dentro da demonstração.

Pacotes nos permitiram mais liberdade para explorar diferentes idéias em 3D sem ter que fazer muito trabalho extra. Nós podíamos planejar, testar ou até reverter para qualquer versão anterior de um recurso se um experimento não tivesse panela no prêmio ou quebrasse a experiência. Havia muitas vezes em que horas de trabalho valiosas foram restauradas indo de volta a uma versão no pacote. No terminar/parar/sair,