Construindo arquitetura

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

Construir a estação de forma modular nos permitiu atualizar e propagar atualizações de conteúdo de forma suave e foi essencial para garantir que não passássemos horas atualizando malhas, texturas, partes e muito mais individuais.

Pacotes do Roblox nos permitem alcançar esse design modular permitindo que pacotemos uma paleta de Meshparts que se encaixou facilmente, conjuntos de folhas de acabamento e SurfaceAppearance nós que o MeshParts poderia compartilhar.Isso nos adaptou às mudanças no layout e no tamanho durante os testes iniciais e tornou o processo de preencher a estação muito mais rápido.

Architecture Overview

Designs flexíveis para a arte final

Quando começamos pela primeira vez, não tínhamos compreensão completa do que queríamos estar na estação ou do quão grande precisava ser para 50 jogadores.

Para descobrir isso, começamos primeiro construindo o ambiente usando Parts e trazendo algumas malhas, como a forma rotunda da nossa aplicação externa do DCC, como Maya ou Blender.Com essas formas simples, ajustamos a escala do mapa, a disposição das salas e os caminhos para encontrar os arranjos mais divertidos.Seja para um jogo ou uma experiência social, esta fase inicial tende a ser a mais dinâmica.

Ao construir o layout da estação, o mais importante para impulsionar a exploração era dar ao usuário um objetivo.Neste caso, o objetivo mais óbvio é ter uma olhada mais próxima no buraco negro.Em seguida, sabíamos que dar a eles um caminho reto para o buraco negro seria entediante, porque um jogador pode apenas caminhar de spawn para o fim do mapa.Quebramos o caminho para que o jogador não pudesse chegar ao buraco negro sem antes dar uma volta e ver outras coisas que possam atrai-los também.

O design modular nos permitiu fazer tais alterações no ambiente sem uma revisão catastrófica do design geral.Podemos mover seções inteiras da estação para brincar com diferentes ideias de jogabilidade.Em última análise, essas mesmas peças modulares poderiam então ser atualizadas usando pacotes para que não tivéssemos que reconstruir várias versões do mesmo recurso.

Architecture Example 1 Architecture Example 2 Architecture Example 3 Architecture Example 4

Design modular da Kerr-Newman DSR-14

A estação espacial usa apenas um punhado de peças modulares de paleta.Peças de paleta modulares são recursos reutilizáveis, o que significa que não precisamos criar cada parede de forma única, mas podemos juntar várias paredes menores.Isso permite flexibilidade no layout à medida que estamos construção / simulação.

Aqui estão alguns dicas que nos ajudaram a criar nosso design modular:

  • Defina um tamanho de grid uniforme — Para a estação, acordamos em um tamanho de grid de 16 studs para criar a maior parte do configurarmodular.O tamanho da grade que você usa é arbitrário, mas deve ser consistente ao longo do projeto e de todos os artistas que trabalham nesse projeto.Ajustar o tamanho de uma grade no início do seu projeto garante que cada peça se encaixe bem com a peça ao lado dela.Também permite trocar peças facilmente, por exemplo, trocar uma seção de parede por uma seção de porta.

  • Todas as unidades são importadas como metros — Ao criar malhas em outras aplicações do DCC, como Maya ou Blender, o Studio não converte metros, centímetros, pés ou polegadas — ele simplesmente substitui as unidades recebidas por unidades idênticas em metros.Por exemplo, se você definir suas unidades em metros, o Studio converte 2 metros em 2 studs.É melhor tratar as escalas de sua unidade na sua aplicação de escolha como escalas de studs no Roblox.A escala mais próxima do mundo real para um único stud no Roblox é de 28 centímetros.

  • Mantenha as peças simples — Não tente construir todas as peças que você acha que precisará sempre.A idéia é ter algumas peças muito versáteis e não muitos one-offs.Quanto mais peças você tem, mais tempo leva para criar cada peça e mais afeta seu orçamento geral de memória e desempenho.Você sempre pode adicionar outra peça ao seu kit se for absolutamente necessário.

  • Use pacotes — Converta cada peça modular em um pacote e também coloque materiais em pacotes antes de começar a preenchê-los em sua experiência.Isso permite que você facilmente envie atualizações para todas as instâncias.Vamos mergulhar em pacotes um pouco mais tarde.

Os seguintes captura de tela mostram várias maneiras que usamos o design modular para construir partes da estação.

Architecture Example 5 Architecture Example 6 Architecture Example 7 Architecture Example 8

Criar folhas de acabamento

Texturas 1:1 são o caminho do futuro, mas se tornam custosas em relação aos orçamentos de memória e ao tempo para Criar.Para a estação espacial, 90% dos elementos arquitetônicos usaram um punhado de conjuntos de folhas de acabamento intercambiáveis, que são um conjunto de mapas de textura que são dispostos em uma forma vertical ou horizontal.Cada linha ou coluna da folha tem um visual único, dando-lhe um monte de diferentes tratamentos de superfície para escolher ao desembrulhar um modelo, tudo enquanto usa uma folha de imagem.

Aqui estão algumas dicas para fazer folhas de acabamento:

  • Comece com um inventário do tipo de objetos e materiais que você precisa — Folhas de corte podem incluir uma grande variação de tipos de materiais, como madeira, metal, borracha e muito mais.Antes de começar a modelar seu primeiro Objeto, crie um modelo de folha de acabamento.Este é o ponto de partida para todos os outros conjuntos de folhas de acabamento e dá a você um ponto de partida rápido para desembrulhar seus modelos.Essas folhas de acabamento vivem dentro do nó SurfaceAppearance, que abordaremos mais tarde.

  • Inclua uma variedade de tratamentos de superfície em uma folha — Isso permite que você mantenha mais da malha juntos, para que você possa aplicar novos tratamentos sem ter que quebrar suas malhas em várias malhas.Isso melhora o desempenho do tempo de execução reduzindo as chamadas de desenho de objetos e materiais.

  • Faça um modelo de folha de corte — Um modelo garante que você possa trocar qualquer conjunto de mapas por outro.Por exemplo, você pode trocar um conjunto de metal limpo com um configurarde metal enferrujado.

Aqui está como criamos folhas de acabamento para a estação:

Criamos um esboço grosso do que a folha deve parecer:

Trim Sheet Example

No Photoshop, criamos um mockup para obter uma ideia rápida de como cada seção de recorte da folha pareceria.

Trim Section Example

Usamos Substance, mas você pode usar qualquer aplicativo que lhe convença para criar os mapas finais.Este é o conjunto final de mapas de folha de acabamento que foram gerados na Substance.Todos os quatro mapas trabalham juntos dentro de um nó SurfaceAppearance para produzir um material baseado em física renderizado (RBP (Renderização baseada em física)).

Aqui estão alguns rendimentos finais da folha de acabamento dentro do Substance Designer:

E aqui estão exemplos das mesmas folhas de acabamento sendo usadas em uma grande variedade de objetos:

Modular Trim Sheets

Se você quiser aprender mais sobre Mapeamento de UV da Folha Trim, apenas pesquise o tópico na web; existem muitos bons tutoriais por aí.

Aplicar aparências de superfície

SurfaceAppearance Permite que você especifique novas entradas de textura para nosso sistema de renderização baseado em física para MeshParts e permite que você substitua a aparência de uma malha com opções de gráficos avançados, incluindo Mapa de Cor, Mapa de Metal, Mapa de Rugosidade e Mapa Normal.Também faz uso do novo sistema de mapa dinâmico de cubos que o Roblox usa para reflexões em materiais, como cromo.Por exemplo, aqui está uma imagem lado a lado de uma malha com Aparência de Superfície aplicada ao lado de uma malha sem ela:

Surface Appearance Example

Ao usar a aparência da superfície, tenha em mente os seguintes dicas:

  • Se seus mapas de corte contiverem informações alfa para transparência, altere o Modo Alfa de Sobreposição para Transparência.
  • A aparência da superfície não funciona com Peças porque elas não têm as informações de UV necessárias para aplicar os mapas.As peças usam projeções alinhadas ao mundo em vez de informações de UV.As MeshParts são normalmente criadas em outro aplicativo, como Maya, 3ds Max ou Blender, e contêm informações de desembrulho de UV.

Para aplicar SurfaceAppearance :

  1. Clique no final de um MeshPart ou nome de pasta no Explorer e procure por SurfaceAppearance .Adicionar um substituirá qualquer BrickColor, Color, Material e TextureID que você já tenha aplicado.

  2. Renomeie o nó SurfaceAppearance para algo único e adicione um sufixo de _SA para torná-los fáceis de encontrar.Neste exemplo, usamos Metal_Trim_A_SA.

  3. Importe os mapas da folha de acabamento, copie os IDs do painel Gerenciador de Recursos e cole-os nos espaços apropriados no painel de Propriedades.Aqui está como o nó Metal_Trim_A_SA parece com todos os IDs de mapa inseridos e aplicados à porta.

Surface Appearance Example 2

Aumente a eficiência com pacotes

Pacotes permitem que você crie instâncias de objeto em todas as suas experiências do Roblox, para que as atualizações que você faz no pacote sejam publicadas em todas as instâncias desse pacote.Usamos pacotes para quase todos os objetos que colocamos na estação, então não tivemos que caçar cada colocação se precisássemos fazer ajustes.Por exemplo, usamos mais de 1.000 instâncias de painel de parede de um pacote e pudemos publicar atualizações para eles instantaneamente modificando o pacote.

Siga essas dicas ao usar pacotes:

Ative a funcionalidade de atualização automática em PackageLink .Todas as modificações são aplicadas a todos os usos do pacote quando este é ativado, economizando o passo de ter que usar o recurso "atualizar todas / todos".

Packages Example

Você pode usar pacotes para objetos criar uma "biblioteca de materiais". Isso permite que você modifique mapas de bits em um objeto e os publique para todos os objetos que o usam.A seguinte captura de tela mostra os materiais principais usados durante a demonstração.Se precisássemos modificar os mapas, apenas tínhamos que atualizar o material principal e republicar o pacote.

Packages Example 2