Pacote | flash.display |
Classe | public final dynamic class ShaderParameter |
Herança | ShaderParameter Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
value
.
Uma ocorrência de ShaderParameter que representa um parâmetro de uma ocorrência de Shader é acessada como uma propriedade da propriedade data
da ocorrência de Shader. A propriedade ShaderParameter tem o mesmo nome do nome de parâmetro no código de shader. Por exemplo, caso um shader define um parâmetro chamado radius
, a instância de ShaderParameter que representa o parâmetro radius
é disponibilizada como a propriedade radius
, como mostrado aqui:
var radiusParam:ShaderParameter = myShader.data.radius;
Além das propriedades definidas da classe ShaderParameter, cada ocorrência de ShaderParameter tem propriedades adicionais que correspondem a todos os metadados definidos para o parâmetro. Essas propriedades são adicionadas ao objeto ShaderParameter quando este é criado. Os nomes das propriedades correspondem aos nomes de metadados especificados no código-fonte do shader. O tipo de dados de cada propriedade varia de acordo com o tipo de dados dos metadados correspondentes. Um valor de metadados de texto como, por exemplo, "descrição" é uma ocorrência de String. Uma propriedade de metadados com um valor de não string (como, por exemplo, minValue
ou defaultValue
) é representada como uma instância de Array. O número de elementos e os tipos de dados de elemento correspondem aos valores de metadados.
Por exemplo, suponhamos que um shader inclua estas duas declarações de parâmetro:
parameter float2 size < description: "The size of the image to which the kernel is applied"; minValue: float2(0.0, 0.0); maxValue: float2(100.0, 100.0); defaultValue: float2(50.0, 50.0); >; parameter float radius < description: "The radius of the effect"; minValue: 0.0; maxValue: 50.0; defaultValue: 25.0; >;
A ocorrência de ShaderParameter correspondente ao parâmetro size
tem as seguintes propriedades de metadados, além das propriedades internas:
Nome da propriedade | Tipo de dados | Valor |
---|---|---|
name
| String |
"size"
|
descrição
| String |
"The size of the image to which the kernel is applied"
|
minValue
| Matriz |
[0, 0]
|
maxValue
| Matriz |
[100, 100]
|
defaultValue
| Matriz |
[50, 50]
|
ShaderParameter, que correspondente ao parâmetro radius
, tem as seguintes propriedades adicionais:
Nome da propriedade | Tipo de dados | Valor |
---|---|---|
name
| String |
"radius"
|
descrição
| String |
"The radius of the effect"
|
minValue
| Matriz |
[0]
|
maxValue
| Matriz |
[50]
|
defaultValue
| Matriz |
[25]
|
Geralmente, o código do desenvolvedor não cria uma ocorrência de ShaderParameter diretamente. Uma ocorrência de ShaderParameter é criada para cada parâmetro de shader quando a ocorrência de Shader é criada.
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
index : int [somente leitura]
O índice com base em zero do parâmetro. | ShaderParameter | ||
type : String [somente leitura]
O tipo de dados do parâmetro conforme definição no shader. | ShaderParameter | ||
value : Array
O valor ou os valores passados como sendo o valor de parâmetro para o shader. | ShaderParameter |
Método | Definido por | ||
---|---|---|---|
Cria uma ocorrência de ShaderParameter. | ShaderParameter | ||
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
Retorna o valor primitivo do objeto especificado. | Object |
index | propriedade |
type | propriedade |
type:String
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
O tipo de dados do parâmetro conforme definição no shader. O conjunto de valores possíveis para a propriedade type
é definido pelas constantes na classe ShaderParameterType.
Implementação
public function get type():String
Elementos da API relacionados
value | propriedade |
value:Array
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
O valor ou os valores passados como sendo o valor de parâmetro para o shader. A propriedade value
é uma matriz indexada. O número e o tipo dos elementos da matriz correspondem ao tipo de dados do parâmetro, que pode ser determinado usando a propriedade type
.
A seguinte tabela indica o tipo de parâmetro e o número correspondente, além do tipo de dados dos elementos da matriz value
:
Tipo de parâmetro | Nº de elementos | Tipo de dados do elemento |
---|---|---|
float (ShaderParameterType.FLOAT ) | 1 | Número |
float2 (ShaderParameterType.FLOAT2 ) | 2 | Número |
float3 (ShaderParameterType.FLOAT3 ) | 3 | Número |
float4 (ShaderParameterType.FLOAT4 ) | 4 | Número |
int (ShaderParameterType.INT ) | 1 | int ou uint |
int2 (ShaderParameterType.INT2 ) | 2 | int ou uint |
int3 (ShaderParameterType.INT3 ) | 3 | int ou uint |
int4 (ShaderParameterType.INT4 ) | 4 | int ou uint |
bool (ShaderParameterType.BOOL ) | 1 | Booleano |
bool2 (ShaderParameterType.BOOL2 ) | 2 | Booleano |
bool3 (ShaderParameterType.BOOL3 ) | 3 | Booleano |
bool4 (ShaderParameterType.BOOL4 ) | 4 | Booleano |
float2x2 (ShaderParameterType.MATRIX2X2 ) | 4 | Número |
float3x3 (ShaderParameterType.MATRIX3X3 ) | 9 | Número |
float4x4 (ShaderParameterType.MATRIX4X4 ) | 16 | Número |
Para tipos de parâmetro matriz, os elementos da matriz preenchem as linhas e, em seguida, as colunas. Por exemplo, suponhamos que a seguinte linha do ActionScript seja usada para preencher um parâmetro float2x2
chamado myMatrix
:
myShader.data.myMatrix.value = [.1, .2, .3, .4];
Dentro do shader, os elementos da matriz têm os seguintes valores:
myMatrix[0][0]
: .1myMatrix[0][1]
: .2myMatrix[1][0]
: .3myMatrix[1][1]
: .4
Implementação
public function get value():Array
public function set value(value:Array):void
ShaderParameter | () | Construtor |
public function ShaderParameter()
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Cria uma ocorrência de ShaderParameter. O código do desenvolvedor não chama o construtor ShaderParameter diretamente. Uma ocorrência de ShaderParameter é criada para cada parâmetro de shader quando a ocorrência de Shader é criada.
Wed Jun 13 2018, 11:10 AM Z