Пакет | flash.display3D |
Класс | public final class Context3DBlendFactor |
Наследование | Context3DBlendFactor Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения представляет определенный четырехзначный вектор, который умножается на исходный или целевой цвет в формуле наложения. Формула наложения:
result = source * sourceFactor + destination * destinationFactor
В формуле исходным цветом является цвет вывода программы пиксельного шейдера. Целевым цветом является цвет, который в настоящее время существует в буфере цвета и задан предыдущими операциями очистки и рисования.
Например, если в качестве исходного указан цвет (.6, .6, .6, .4) и используется исходный коэффициент наложения Context3DBlendFactor.ONE_MINUS_SOURCE_ALPHA
, то исходная часть уравнения наложения вычисляется следующим образом:
(.6, .6, .6, .4) * (1-0.4, 1-0.4, 1-0.4, 1-0.4) = (.36, .36, .36, .24)
Окончательное вычисление ограничено диапазоном [0,1].
Примеры
Следующие примеры демонстрируют вычисление наложения с использованием исходного цвета (.6,.4,.2,.4), целевого цвета (.8,.8,.8,.5) и различных коэффициентов наложения.
Цель | Исходный коэффициент | Целевой коэффициент | Формула наложения | Результат |
---|---|---|---|---|
Без наложения | ONE | ZERO | (.6,.4,.2,.4) * ( 1, 1, 1, 1) + (.8,.8,.8,.5) * ( 0, 0, 0, 0) | ( .6, .4, .2, .4) |
Альфа | 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) |
Аддитивные | ONE | ONE | (.6,.4,.2,.4) * ( 1, 1, 1, 1) + (.8,.8,.8,.5) * ( 1, 1, 1, 1) | ( 1, 1, 1, .9) |
Умножить | DESTINATION_COLOR | ZERO | (.6,.4,.2,.4) * (.8,.8,.8,.5) + (.8,.8,.8,.5) * ( 0, 0, 0, 0) | (.48,.32,.16, .2) |
Экран | ONE | ONE_MINUS_SOURCE_COLOR | (.6,.4,.2,.4) * ( 1, 1, 1, 1) + (.8,.8,.8,.5) * (.4,.6,.8,.6) | (.92,.88,.68, .7) |
Обратите внимание, что не все комбинации коэффициентов наложения практически применимы и иногда один и тот же эффект можно получить разными способами.
Связанные элементы API
Константа | Определено | ||
---|---|---|---|
DESTINATION_ALPHA : String = "destinationAlpha" [статические]
Коэффициент наложения — (Da,Da,Da,Da), где Da — это альфа-компонент цвета фрагмента, вычисленного пиксельной программой. | Context3DBlendFactor | ||
DESTINATION_COLOR : String = "destinationColor" [статические]
Коэффициент наложения — (Dr,Dg,Db,Da), где Dr/g/b/a — это соответствующий компонент текущего цвета в буфере цвета. | Context3DBlendFactor | ||
ONE : String = "one" [статические]
Коэффициент наложения — (1,1,1,1). | Context3DBlendFactor | ||
ONE_MINUS_DESTINATION_ALPHA : String = "oneMinusDestinationAlpha" [статические]
Коэффициент наложения — (1-Da,1-Da,1-Da,1-Da), где Da — это альфа-компонент текущего цвета в буфере цвета. | Context3DBlendFactor | ||
ONE_MINUS_DESTINATION_COLOR : String = "oneMinusDestinationColor" [статические]
Коэффициент наложения — (1-Dr,1-Dg,1-Db,1-Da), где Dr/g/b/a — это соответствующий компонент текущего цвета в буфере цвета. | Context3DBlendFactor | ||
ONE_MINUS_SOURCE_ALPHA : String = "oneMinusSourceAlpha" [статические]
Коэффициент наложения — (1-Sa,1-Sa,1-Sa,1-Sa), где Sa — это альфа-компонент цвета фрагмента, вычисленного пиксельной программой. | Context3DBlendFactor | ||
ONE_MINUS_SOURCE_COLOR : String = "oneMinusSourceColor" [статические]
Коэффициент наложения — (1-Sr,1-Sg,1-Sb,1-Sa), где Sr/g/b/a — это соответствующий компонент цвета фрагмента, вычисленного пиксельной программой. | Context3DBlendFactor | ||
SOURCE_ALPHA : String = "sourceAlpha" [статические]
Коэффициент наложения — (Sa,Sa,Sa,Sa), где Sa — это альфа-компонент цвета фрагмента, вычисленного пиксельной программой. | Context3DBlendFactor | ||
SOURCE_COLOR : String = "sourceColor" [статические]
Коэффициент наложения — (Sr,Sg,Sb,Sa), где Sr/g/b/a — это соответствующий компонент цвета фрагмента, вычисленного пиксельной программой. | Context3DBlendFactor | ||
ZERO : String = "zero" [статические]
Коэффициент наложения — (0,0,0,0). | Context3DBlendFactor |
DESTINATION_ALPHA | Константа |
public static const DESTINATION_ALPHA:String = "destinationAlpha"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (Da,Da,Da,Da)
, где Da
— это альфа-компонент цвета фрагмента, вычисленного пиксельной программой.
DESTINATION_COLOR | Константа |
public static const DESTINATION_COLOR:String = "destinationColor"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (Dr,Dg,Db,Da)
, где Dr/g/b/a
— это соответствующий компонент цвета в буфере цвета.
ONE | Константа |
public static const ONE:String = "one"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (1,1,1,1)
.
ONE_MINUS_DESTINATION_ALPHA | Константа |
public static const ONE_MINUS_DESTINATION_ALPHA:String = "oneMinusDestinationAlpha"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (1-Da,1-Da,1-Da,1-Da)
, где Da
— это альфа-компонент текущего цвета в буфере цвета.
ONE_MINUS_DESTINATION_COLOR | Константа |
public static const ONE_MINUS_DESTINATION_COLOR:String = "oneMinusDestinationColor"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (1-Dr,1-Dg,1-Db,1-Da)
, где Dr/g/b/a
— это соответствующий компонент цвета в буфере цвета.
ONE_MINUS_SOURCE_ALPHA | Константа |
public static const ONE_MINUS_SOURCE_ALPHA:String = "oneMinusSourceAlpha"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (1-Sa,1-Sa,1-Sa,1-Sa)
, где Sa
— это альфа-компонент цвета фрагмента, вычисленного пиксельной программой.
ONE_MINUS_SOURCE_COLOR | Константа |
public static const ONE_MINUS_SOURCE_COLOR:String = "oneMinusSourceColor"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (1-Sr,1-Sg,1-Sb,1-Sa)
, где Sr/g/b/a
— это соответствующий компонент цвета фрагмента, вычисленного пиксельной программой.
SOURCE_ALPHA | Константа |
public static const SOURCE_ALPHA:String = "sourceAlpha"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (Sa,Sa,Sa,Sa)
, где Sa
— это альфа-компонент цвета фрагмента, вычисленного пиксельной программой.
SOURCE_COLOR | Константа |
public static const SOURCE_COLOR:String = "sourceColor"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (Sr,Sg,Sb,Sa)
, где Sr/g/b/a
— это соответствующий компонент цвета фрагмента, вычисленного пиксельной программой.
ZERO | Константа |
public static const ZERO:String = "zero"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 11, AIR 3 |
Коэффициент наложения — (0,0,0,0)
.
Tue Jun 12 2018, 11:34 AM Z