Parâmetros de coleção
Uma expressão de parâmetro de coleção é usada para referenciar um ativo de coleção de parâmetros de Material. Esses são grupos de parâmetros que você pode reutilizar com facilidade em muitos ativos diferentes, como materiais, Blueprints e mais.
Eles permitem modificar um valor global uma vez na coleção de parâmetros e propagá-lo a vários materiais que referência à coleção. Para obter mais informações, leia a documentação sobre Coleções de parâmetros de Material.
Um Material pode fazer referência a, no máximo, duas MaterialParameterCollections diferentes. Em geral, uma é usada para valores de todo o jogo e a outra pode ser usada para parâmetros específicos de nível. Uma coleção pode ter até 1.024 parâmetros escalares e 1.024 parâmetros vetoriais.
DynamicParameter
A expressão DynamicParameter fornece um canal para emissores de partícula passarem até quatro valores ao Material a ser usado de qualquer maneira. Esses valores são definidos no Niagara por meio de um módulo ParameterDynamic colocado em um emissor.
| Propriedade | Descrição |
|---|---|
Nomes de parâmetros | Uma matriz com os nomes dos parâmetros. Os valores determinarão o texto exibido nas saídas da expressão no Editor de Material e serão os nomes usados para referenciar os parâmetros no módulo ParameterDynamic no Niagara. |
Valor padrão | Especifica os valores iniciais de saída do parâmetro (Vector4). |
| Saídas | |
Param1 | Gera o valor do primeiro parâmetro na propriedade Nomes de parâmetros. O nome dessa saída pode mudar com base nos valores na propriedade Nomes de parâmetros. |
Param2 | Gera o valor do segundo parâmetro na propriedade Nomes de parâmetros. O nome dessa saída pode mudar com base nos valores na propriedade Nomes de parâmetros. |
Param3 | Gera o valor do terceiro parâmetro na propriedade Nomes de parâmetros. O nome dessa saída pode mudar com base nos valores na propriedade Nomes de parâmetros. |
Param4 | Gera o valor do quarto parâmetro na propriedade Nomes de parâmetros. O nome dessa saída pode mudar com base nos valores na propriedade Nomes de parâmetros. |
FontSampleParameter
A expressão FontSampleParameter permite expor um parâmetro baseado em fonte em uma constante de instância de Material, facilitando o uso de diferentes fontes em diferentes instâncias. O canal alfa da fonte conterá o valor Font Outline. Apenas páginas de fontes válidas podem ser especificadas.
| Item | Descrição |
|---|---|
| Propriedades | |
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Fonte | Mantém o ativo de fonte padrão (do Navegador de Conteúdo) mantido dentro da expressão. |
Página de textura da fonte | A página de textura da fonte atual a ser usada como parte da textura. |
ScalarParameter
A expressão ScalarParameter gera um único valor float (constante) que você pode acessar e alterar em uma instância de Material ou em tempo real por Blueprints ou código.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Valor padrão | Especifica o valor inicial que a constante assume. |
Você pode atualizar o valor em um parâmetro escalar e ver os resultados imediatamente sem precisar recompilar o Material.
Parâmetro escalar atualizado de 0 para 10.
StaticSwitchParameter
A expressão StaticSwitchParameter recebe duas entradas e gera a primeira se o valor do parâmetro for true, e a segunda em caso contrário.
Este parâmetro é chamado de estático porque não pode ser alterado em tempo de execução; ele só pode ser definido no editor de instância de Material. Switches estáticos são aplicados em tempo de compilação, não em tempo de execução. Isso significa que a ramificação do Material que foi descartada nunca é executada. Portanto, os switches estáticos estão efetivamente livres no tempo de execução. Por outro lado, uma nova versão do Material deve ser compilada para cada combinação usada de parâmetros estáticos em um Material. Isso pode levar a um grande aumento nas permutações de shader se for usado de forma abusiva. Tente minimizar o número de parâmetros estáticos no material e o número de permutações desses parâmetros estáticos que são realmente usados.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Valor padrão | Se true, a primeira entrada será a saída. Caso contrário, a segunda entrada será a saída. |
Exibição de legenda estendida | Se true, a barra de título das expressões exibirá o valor da expressão. |
| Entradas | |
A | Aceita um valor de qualquer número de canais. |
B | Aceita um valor de qualquer número de canais. |
Exemplo de uso: você pode usar switches estáticos para remover uma ramificação inteira de um material sem custo de tempo de execução. Instâncias de Material podem ter valores diferentes, possibilitando uma configuração de shader sem perda de desempenho.
O switch estático foi atualizado de "True" para "False".
StaticBoolParameter
O StaticBoolParameter funciona como um StaticSwitchParameter, mas cria apenas um parâmetro booleano e não implementa o switch. Você pode usar um StaticBoolParameter para passar um valor padrão a uma entrada booleana em uma função de Material.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Valor padrão | O valor booleano padrão do parâmetro, true (marcado) ou false. |
Switches estáticos são aplicados em tempo de compilação (não em tempo de execução), o que significa que você pode substituir o parâmetro no editor de instância de Material, mas ele não pode mudar durante o jogo. A ramificação do Material que foi descartada nunca é executada. Isso significa que os switches estáticos estão efetivamente livres no tempo de execução. Por outro lado, uma nova versão do Material deve ser compilada para cada combinação usada de parâmetros estáticos em um Material. Isso pode levar a um grande aumento nas permutações de shader se for usado de forma abusiva. Tente minimizar o número de parâmetros estáticos no material e o número de permutações desses parâmetros estáticos que são realmente usados.
Este nó é usado com MaterialFunctions.
StaticComponentMaskParameter
A expressão StaticComponentMaskParameter se comporta como uma máscara de componente comum, exceto que você pode substituir os valores da máscara em uma instância de Material.
Este parâmetro é chamado de estático porque não pode ser alterado em tempo de execução; ele só pode ser definido no editor de instância de Material. Switches estáticos são aplicados em tempo de compilação, não em tempo de execução. Isso significa que a 'ramificação' do Material descartada nunca será executada. Portanto, os switches estáticos estão efetivamente livres no tempo de execução. Por outro lado, uma nova versão do Material deve ser compilada para cada combinação usada de parâmetros estáticos em um Material. Isso pode levar a um grande aumento nas permutações de shader se for usado de forma abusiva. Tente minimizar o número de parâmetros estáticos no material e o número de permutações desses parâmetros estáticos que são realmente usados.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
R Padrão | Se esta opção estiver selecionada, o canal vermelho, ou o primeiro, do valor de entrada será passado para o de saída. |
G Padrão | Se esta opção estiver selecionada, o canal verde, ou o segundo, do valor de entrada será passado para o de saída. |
B Padrão | Se esta opção estiver selecionada, o canal azul, ou o terceiro, do valor de entrada será passado para o de saída. |
A Padrão | Se esta opção estiver selecionada, o canal alfa, ou o quarto, do valor de entrada será passado para o de saída. |
Exemplo de uso: você pode usar máscaras de componente estáticas para permitir que as instâncias ditem qual canal de uma textura de máscara usar. Se a máscara for estática (não precisa ser alterada no tempo de execução), essa abordagem será sempre usada em vez de multiplicar uma pesquisa de textura por um parâmetro vetorial para mascarar canais, pois esse último desperdiça largura de banda da textura e instruções de shader.
Os canais marcados passam pela saída, enquanto os canais não selecionados são descartados.
VectorParameter
A expressão VectorParameter é idêntica a Constant4Vector, mas é um parâmetro que pode ser modificado em instâncias do Material e por código. Uma vantagem do "VectorParameter" é que você pode definir seu valor usando o Seletor de Cores.
| Item | Descrição |
|---|---|
| Propriedades | |
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Valor padrão
| O vetor para saída por padrão, a menos que seja substituído por uma constante de instância de Material.
|
A VertexColor é mutuamente exclusiva com o nó de transformação devido aos interpoladores limitados. Se você usar um nó de transformação e VertexColor, a VertexColor ficará branca.
Programadores: para partículas sprite, as cores são comunicadas ao shader por vértice, enquanto as cores para partículas de malha são definidas como constantes de shader.
TextureObjectParameter
A expressão TextureObjectParameter define um parâmetro de textura e gera o objeto de textura. Essa expressão é usada com frequência para passar parâmetros de textura a uma função de Material com entradas de texturas. As entradas de textura em um nó de função de Material não são compatíveis com os dados Float3 de um nó TextureSample 2D. Portanto, o Objeto de textura (T2d) é necessário. Na verdade, esse nó não obtém a amostra da textura e, portanto, deve ser usado em conjunto com um nó TextureSample.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Textura | Especifica a textura amostrada pela expressão. |
Tipo de amostrador | O tipo de dados que serão amostrados e de saída pelo nó. |
MipValueMode | Seleciona como personalizar o nível mip da amostra ou derivados do hardware padrão computado. Afeta a aparência e o desempenho. |
Este nó é usado com MaterialFunctions.
TextureSampleParameter2D
A expressão TextureSampleParameter2D é idêntica à TextureSample, exceto que é um parâmetro que pode ser modificado em instâncias de Material e por Blueprints ou código.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Textura | Especifica a textura amostrada pela expressão. |
Tipo de amostrador | O tipo de dados que serão amostrados e de saída pelo nó. |
MipValueMode | Seleciona como personalizar o nível mip da amostra ou derivados do hardware padrão computado. Afeta a aparência e o desempenho. |
| Entradas | |
UV | Aceita as coordenadas de textura UV a serem usadas para a textura. Se nenhum valor for entrada nos UV, serão usadas as coordenadas de textura da malha ao qual o material é aplicado. |
| Saídas | |
RGB | Gera o valor do vetor RGB de três canais da cor. |
R | Gera o canal vermelho da cor. |
G | Gera o canal verde da cor. |
B | Gera o canal azul da cor. |
A | Gera o canal alfa da cor. Se uma textura não tiver um canal alfa, conectar o canal alfa a algo, embora não seja tecnicamente ilegítimo, sempre resultará em zero (preto). |
TextureSampleParameterSubUV
A expressão TextureSampleParameterSubUV é idêntica a ParticleSubUV, mas é um parâmetro que pode ser modificado em instâncias do material e por código.
| Item | Descrição |
|---|---|
| Propriedades | |
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Mesclagem | Mescla cada quadro do layout de sprite do SubUV em vez de "pular" instantaneamente de um quadro para o outro. |
Textura | Especifica a textura amostrada pela expressão. |
Tipo de amostrador | O tipo de dados que serão amostrados e de saída pelo nó. |
MipValueMode | Seleciona como personalizar o nível mip da amostra ou derivados do hardware padrão computado. Afeta a aparência e o desempenho. |
| Entradas | |
UV | A entrada de UV é ignorada e não faz nada. |
| Saídas | |
RGB | Gera o valor do vetor RGB de três canais da cor. |
R | Gera o canal vermelho da cor. |
G | Gera o canal verde da cor. |
B | Gera o canal azul da cor. |
A | Gera o canal alfa da cor. Se uma textura não tiver um canal alfa, conectar o canal alfa a algo, embora não seja tecnicamente ilegítimo, sempre resultará em zero (preto). |
TextureSampleParameterCube
A expressão TextureSampleParameterCube é idêntica a TextureSample, mas só aceita cubemaps e é um parâmetro que pode ser modificado em instâncias do material e por código.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Textura | Especifica a textura amostrada pela expressão. |
Tipo de amostrador | O tipo de dados que serão amostrados e de saída pelo nó. |
MipValueMode | Seleciona como personalizar o nível mip da amostra ou derivados do hardware padrão computado. Afeta a aparência e o desempenho. |
| Entradas | |
UV | Aceita as coordenadas de textura UV a serem usadas para a textura. Se nenhum valor for entrada nos UV, serão usadas as coordenadas de textura da malha ao qual o material é aplicado. Essa entrada aceita um valor de vetor de dois canais. |
| Saídas | |
RGB | Gera o valor do vetor RGB de três canais da cor. |
R | Gera o canal vermelho da cor. |
G | Gera o canal verde da cor. |
B | Gera o canal azul da cor. |
A | Gera o canal alfa da cor. Se uma textura não tiver um canal alfa, conectar o canal alfa a algo, embora não seja tecnicamente inválido, sempre resultará em zero (preto). |
TextureSampleParameterMovie
A expressão TextureSampleParameterMovie é idêntica a TextureSample, mas só aceita texturas de filme (filmes "Bink") e é um parâmetro que pode ser modificado em instâncias do Material e por código.
| Propriedade | Descrição |
|---|---|
Nome do parâmetro | Especifica o nome usado para identificar o parâmetro em instâncias do Material e pelo código. |
Grupo | Fornece uma maneira de organizar nomes de parâmetro em grupos, ou categorias, em uma MaterialInstanceConstant. Todos os parâmetros em um Material com o mesmo nome da propriedade de grupo serão listados naquela categoria no Editor de Instância. |
Textura | Especifica a textura amostrada pela expressão. |
Tipo de amostrador | O tipo de dados que serão amostrados e de saída pelo nó. |
MipValueMode | Seleciona como personalizar o nível mip da amostra ou derivados do hardware padrão computado. Afeta a aparência e o desempenho. |
| Entradas | |
UV | Aceita as coordenadas de textura UV a serem usadas para a textura. Se nenhum valor for entrada nos UV, serão usadas as coordenadas de textura da malha ao qual o material é aplicado. |
| Saídas | |
RGB | Gera o valor do vetor RGB de três canais da cor. |
R | Gera o canal vermelho da cor. |
G | Gera o canal verde da cor. |
B | Gera o canal azul da cor. |
A | Gera o canal alfa da cor. Se uma textura não tiver um canal alfa, conectar o canal alfa a algo, embora não seja tecnicamente ilegítimo, sempre resultará em zero (preto). |