Pacote | flash.display3D |
Classe | public final class Context3DBlendFactor |
Herança | Context3DBlendFactor Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
Um fator de mistura representa um determinado vetor de quatro valores é multiplicado pela cor de origem ou de destino na fórmula da mistura. A fórmula da mistura é:
resultado = origem * sourceFactor + destino * destinationFactor
Nas fórmulas, a cor de origem é a cor de saída do programa sombreador de pixel. A cor de destino é a cor que atualmente existe no buffer de cores, como estabelecido pelas operações anteriores de limpeza e desenho.
Por exemplo, se a cor de origem for (.6.6.6.4) e o fator de mistura de origem for Context3DBlendFactor. ONE_MINUS_SOURCE_ALPHA
, então a parte de origem da equação da mistura será calculada:
(.6, .6, .6, .4) * (1-0.4, 1-0.4, 1-0.4, 1-0.4) = (.36, .36, .36, .24)
O cálculo final é acrescido ao intervalo [0,1].
Exemplos
Os seguintes exemplos demonstram a matemática da mistura usando cor de origem = (.6.4.2.4), cor de destino = (.8.8.8.5) e vários fatores de mistura.
Finalidade | Fator de origem | Fator de destino | Fórmula de mistura | Resultado |
---|---|---|---|---|
Nenhuma mistura | UM | ZERO | (.6,.4,.2,.4) * ( 1, 1, 1, 1) + (.8,.8,.8,.5) * ( 0, 0, 0, 0) | ( .6, .4, .2, .4) |
Alfa | SOURCE_ALPHA | ONE_MINUS_SOURCE_ALPHA | (.6,.4,.2,.4) * (.4,.4,.4,.4) + (.8,.8,.8,.5) * (.6,.6,.6,.6) | (.72,.64,.56,.46) |
Aditivo | UM | UM | (.6,.4,.2,.4) * ( 1, 1, 1, 1) + (.8,.8,.8,.5) * ( 1, 1, 1, 1) | ( 1, 1, 1, .9) |
Multiplicar | DESTINATION_COLOR | ZERO | (.6,.4,.2,.4) * (.8,.8,.8,.5) + (.8,.8,.8,.5) * ( 0, 0, 0, 0) | (.48,.32,.16, .2) |
Tela | UM | ONE_MINUS_SOURCE_COLOR | (.6,.4,.2,.4) * ( 1, 1, 1, 1) + (.8,.8,.8,.5) * (.4,.6,.8,.6) | (.92,.88,.68, .7) |
Observe que nem todas as combinações de fatores de mistura são úteis e que às vezes é possível obter o mesmo efeito de maneiras diferentes.
Elementos da API relacionados
Constante | Definido por | ||
---|---|---|---|
DESTINATION_ALPHA : String = "destinationAlpha" [estático]
O fator de mistura é (Da, Da, Da, Da), onde Da é o componente alfa da cor do fragmento computada pelo programa de pixel. | Context3DBlendFactor | ||
DESTINATION_COLOR : String = "destinationColor" [estático]
O fator de mistura é (Dr, Dg, Db, Da), onde Dr/g/b/a é o componente correspondente da cor atual no buffer de cores. | Context3DBlendFactor | ||
ONE : String = "one" [estático]
O fator de mistura é (1,1,1,1). | Context3DBlendFactor | ||
ONE_MINUS_DESTINATION_ALPHA : String = "oneMinusDestinationAlpha" [estático]
O fator de mistura é (1-Da, 1-Da, 1-Da, 1-Da), onde Da é o componente alfa da cor atual no buffer de cores. | Context3DBlendFactor | ||
ONE_MINUS_DESTINATION_COLOR : String = "oneMinusDestinationColor" [estático]
O fator de mistura é (-Dr, 1-Dg, 1-Db, 1-Da), onde Dr/g/b/a é o componente correspondente da cor atual no buffer de cores. | Context3DBlendFactor | ||
ONE_MINUS_SOURCE_ALPHA : String = "oneMinusSourceAlpha" [estático]
O fator de mistura é (1-Sa, 1-Sa, 1-Sa, 1-Sa), onde Sa é o componente alfa da cor do fragmento computada pelo programa de pixel. | Context3DBlendFactor | ||
ONE_MINUS_SOURCE_COLOR : String = "oneMinusSourceColor" [estático]
O fator de mistura é (1-Sr, 1-Sg, 1-Sb, 1-Sa), onde Sr/g/b/a é o componente correspondente da cor do fragmento computada pelo programa de pixel. | Context3DBlendFactor | ||
SOURCE_ALPHA : String = "sourceAlpha" [estático]
O fator de mistura é (Sa, Sa, Sa, Sa), onde Sa é o componente alfa da cor do fragmento computada pelo programa de pixel. | Context3DBlendFactor | ||
SOURCE_COLOR : String = "sourceColor" [estático]
O fator de mistura é (Sr, Sg, Sb, Sa), onde Sr/g/b/a é o componente correspondente da cor do fragmento computada pelo programa de pixel. | Context3DBlendFactor | ||
ZERO : String = "zero" [estático]
O fator de mistura é (0,0,0,0). | Context3DBlendFactor |
DESTINATION_ALPHA | Constante |
public static const DESTINATION_ALPHA:String = "destinationAlpha"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (Da, Da, Da, Da)
, onde Da
é o componente alfa da cor do fragmento computada pelo programa de pixel.
DESTINATION_COLOR | Constante |
public static const DESTINATION_COLOR:String = "destinationColor"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (Dr,Dg,Db,Da)
, onde Dr/g/b/a
é o componente correspondente da cor atual no buffer de cores.
ONE | Constante |
public static const ONE:String = "one"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (1,1,1,1)
.
ONE_MINUS_DESTINATION_ALPHA | Constante |
public static const ONE_MINUS_DESTINATION_ALPHA:String = "oneMinusDestinationAlpha"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (1-Da,1-Da,1-Da,1-Da)
, onde Da
é o componente alfa da cor atual no buffer de cores.
ONE_MINUS_DESTINATION_COLOR | Constante |
public static const ONE_MINUS_DESTINATION_COLOR:String = "oneMinusDestinationColor"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (1 doutor, 1-Dg, 1-Db, 1-Da)
, onde Dr/g/b/a
é o componente correspondente da cor atual no buffer de cores.
ONE_MINUS_SOURCE_ALPHA | Constante |
public static const ONE_MINUS_SOURCE_ALPHA:String = "oneMinusSourceAlpha"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (1-Sa,1-Sa,1-Sa,1-Sa)
, onde Sa
é o componente alfa da cor do fragmento computada pelo programa de pixel.
ONE_MINUS_SOURCE_COLOR | Constante |
public static const ONE_MINUS_SOURCE_COLOR:String = "oneMinusSourceColor"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (1-Sr,1-Sg,1-Sb,1-Sa)
, onde Sr/g/b/a
é o componente correspondente da cor do fragmento computada pelo programa de pixel.
SOURCE_ALPHA | Constante |
public static const SOURCE_ALPHA:String = "sourceAlpha"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (Sa, Sa, Sa, Sa)
, onde Sa
é o componente alfa da cor do fragmento computada pelo programa de pixel.
SOURCE_COLOR | Constante |
public static const SOURCE_COLOR:String = "sourceColor"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (Sr, Sg, Sb, Sa)
, onde Sr/g/b/a
é o componente correspondente da cor do fragmento computada pelo programa de pixel.
ZERO | Constante |
public static const ZERO:String = "zero"
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O fator de mistura é (0,0,0,0)
.
Wed Jun 13 2018, 11:10 AM Z