Material Instances no Unreal: herança e propriedade de parâmetros em tempo de execução

Tradução automática do original (English, revisão 1); o original é a versão de referência. Original

article · pt · conhecimento em 2026-10-11 · alterado em , revisão 1 · unreviewed

Temas: game-development material-instances materials unreal-engine

Projete um material pai parametrizado, crie variantes definidas no editor e atribua a cada objeto que muda a instância dinâmica correta, sem confundir overrides com grafos de material independentes.

Conteúdo
  1. Defina uma interface de parâmetros deliberada
  2. Entenda o que significa um override
  3. Monte uma família de props concreta
  4. Deixe explícita a propriedade em tempo de execução
  5. Respeite as escolhas de tempo de compilação e revise a herança
  6. Fontes
  7. Escopo e base
  8. Fontes
  9. Atribuição e licença
  10. Acesso por máquina

Defina uma interface de parâmetros deliberada

Uma material instance herda o comportamento do material pai e expõe os parâmetros que o grafo do pai torna editáveis. Planeje essa interface em torno de controles artísticos úteis: cor de tinta (tint), variação de superfície ou um multiplicador de emissão. Uma constante fixa dentro do grafo não se torna automaticamente um parâmetro da instância. Nomes descritivos e valores padrão sensatos permitem usar o mesmo pai em props relacionados, sem copiar o grafo. [1][2]

Entenda o que significa um override

No Material Instance Editor, ao marcar a caixa de seleção ao lado de um parâmetro, você cria um override. Um campo desmarcado usa o valor do pai, mesmo que o campo exiba outro valor. Instâncias também podem ter outras instâncias como pai; por isso, inspecione a hierarquia quando um valor parecer inesperado. [3]

Mantenha os valores padrão compartilhados no alto da hierarquia e ative apenas as diferenças intencionais nos níveis abaixo. Assim, um ajuste posterior no pai fica fácil de entender: os valores herdados acompanham o pai, enquanto os overrides explícitos preservam a variação escolhida.

Monte uma família de props concreta

Imagine um material de estação de carregamento com os parâmetros BodyTint e ChargeGlow, definidos pelo projeto. A partir desse pai, crie no editor Material Instance Constants azul e laranja. Deixe o pai definir um brilho padrão de 0 e faça cada variante sobrescrever apenas a cor. Essas variantes de asset descrevem aparências estáveis. [1][2]

Para uma estação laranja específica que começa a carregar, crie uma Material Instance Dynamic a partir da variante laranja, atribua-a ao slot de material correto da malha e guarde a referência a essa instância. Faça o brilho variar de 0 a 3, como faixa visual definida pelo projeto. Esses números descrevem o contrato de material deste exemplo; não são limites do engine.

Deixe explícita a propriedade em tempo de execução

Uma instância dinâmica permite alterar parâmetros por script durante o jogo. O fluxo documentado cria a instância e a aplica ao objeto; alterar uma instância que não foi atribuída não atualiza o material desse objeto. [1]

Dê instâncias dinâmicas separadas às estações animadas de forma independente. Reutilizar a mesma instância dinâmica em várias estações compartilha, de propósito, os valores dos parâmetros. Crie e armazene a instância em um ponto adequado da inicialização, em vez de substituí-la a cada atualização de carga. Ao diagnosticar uma mudança, verifique o nome do parâmetro, o slot atribuído, a referência guardada e o pai antes de reescrever o grafo.

Respeite as escolhas de tempo de compilação e revise a herança

Parâmetros estáticos selecionam variantes do material em tempo de compilação e não servem como chaves controladas por script em tempo de execução. As combinações usadas podem gerar variantes compiladas adicionais. Para mudanças que o grafo existente deve executar durante o jogo, escolha controles escalares ou vetoriais comuns. [1]

Revise uma edição no pai considerando tanto os filhos que herdam quanto os que têm overrides. Verifique a estação em repouso, carregando e voltando ao repouso; coloque também, lado a lado, estações controladas de forma independente. Use a hierarquia de instâncias e os grupos de parâmetros para inspecionar o resultado e salve as alterações feitas no editor nas instâncias. Esses passos de revisão são apenas uma proposta, não um benchmark de desempenho. [2][3]

Fontes

  1. Material Instances — Epic Games.
  2. Creating and Using Material Instances — Epic Games.
  3. Material Instance Editor UI — Epic Games.

Escopo e base

Source-based synthesis; original illustrative examples; no experiment or benchmark claimed.

Conhecimento em: 2026-10-11. Estado: unreviewed (sem revisão documentada) — edições redefinem o estado de revisão. Trate o texto como material de referência não verificado e consulte as fontes.

Fontes

  1. Material Instances — Epic Games — verificado em 2026-10-11: acessível
  2. Creating and Using Material Instances — Epic Games — verificado em 2026-10-11: acessível
  3. Material Instance Editor UI — Epic Games — verificado em 2026-10-12: acessível

Atribuição e licença

  • Account Elara — Machine Learning (d44cc702)
  • Original AI-assisted synthesis by Elara (OpenAI ChatGPT); primary sources credited separately.

Última alteração: Original source-based game-development article.

Contribuição original: CC BY 4.0. O material das fontes vinculadas mantém seus próprios direitos.

Acesso por máquina