MTLRenderPipelineColorAttachmentDescriptor
Наследование
-
NSObject -
MTLRenderPipelineColorAttachmentDescriptor
-
NSObject -
MTLRenderPipelineColorAttachmentDescriptor
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCopying -
NSObjectProtocol -
Печатаемый -
NSCopying -
NSObject
Оператор импорта
Swift
import Metal
Objective C
@import Metal;
Доступность
Доступный в iOS 8.0 и позже.
A MTLRenderPipelineColorAttachmentDescriptor объект определяет конфигурацию цветного присоединения, связанного с конвейером рендеринга.
pixelFormat свойство должно быть указано для конвейерного состояния рендеринга в цветном присоединении.
Операции смешения определяют, как исходный фрагмент объединен с целевым значением в цветном присоединении для определения пиксельного значения, которое будет записано. Следующие свойства определяют, если и как выполняется смешивание:
Чтобы позволить смешаться, установите
blendingEnabledсвойство кYEStrue. Значение по умолчаниюNOfalse.writeMaskсвойство идентифицирует, какие цветовые каналы смешиваются. Значение по умолчаниюMTLColorWriteMaskAll, который позволяет всем цветовым каналам быть смешанными.rgbBlendOperationиalphaBlendOperationсвойства отдельно присваивают операции смешения для альфа-пиксельных данных и RGB. Значение по умолчанию для обоих свойствMTLBlendOperationAdd.sourceRGBBlendFactor,sourceAlphaBlendFactor,destinationRGBBlendFactor, иdestinationAlphaBlendFactorсвойства присваивают источник и целевые факторы смешения. Значение по умолчанию дляsourceRGBBlendFactorиsourceAlphaBlendFactorMTLBlendFactorOne. Значение по умолчанию дляdestinationRGBBlendFactorиdestinationAlphaBlendFactorMTLBlendFactorZero.
-
pixelFormatСвойствоФормат пикселя текстуры цветного присоединения.
Объявление
Swift
var pixelFormat: MTLPixelFormatObjective C
@property(nonatomic) MTLPixelFormat pixelFormatОбсуждение
Формат пикселя конвейерного состояния рендеринга должен быть установлен соответствовать формат пикселя текстуры, используемой присоединением выбранного цвета; иначе, ошибка происходит.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
writeMaskСвойствоБитовая маска, ограничивающая, какие цветовые каналы записаны в текстуру.
Объявление
Swift
var writeMask: MTLColorWriteMaskObjective C
@property(nonatomic) MTLColorWriteMask writeMaskОбсуждение
Значение по умолчанию
writeMaskвсе,MTLColorWriteMaskAll, который позволяет всем цветовым каналам быть смешанными.MTLColorWriteMaskзначенияMTLColorWriteMaskRed,MTLColorWriteMaskGreen,MTLColorWriteMaskBlue, иMTLColorWriteMaskAlphaпредел, смешивающийся к одному цветовому каналу и этим значениям, может быть поразрядно объединен.MTLColorWriteMaskNoneне позволяет никаким цветовым каналам быть смешанными.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
blendingEnabledСвойствоБулево значение, определяющее, включено ли смешивание.
Объявление
Swift
var blendingEnabled: BoolObjective C
@property(nonatomic, getter=isBlendingEnabled) BOOL blendingEnabledОбсуждение
Значение по умолчанию
NOfalse, что означает, что смешивание отключено, и пиксельные значения незатронуты путем смешивания. Отключенное смешивание является эффективно тем же какMTLBlendOperationAddработа смешения с источником смешивает фактор1.0и целевой фактор смешения0.0и для RGB и для альфы.Если
YEStrue, смешивание включено, и значения свойств дескриптора смешения используются, чтобы определить, как объединены источник и целевые значения цвета.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
alphaBlendOperationСвойствоРабота смешения присвоилась для альфа-данных.
Объявление
Swift
var alphaBlendOperation: MTLBlendOperationObjective C
@property(nonatomic) MTLBlendOperation alphaBlendOperationОбсуждение
Значение по умолчанию
MTLBlendOperationAdd.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
rgbBlendOperationСвойствоРабота смешения присвоилась для данных RGB.
Объявление
Swift
var rgbBlendOperation: MTLBlendOperationObjective C
@property(nonatomic) MTLBlendOperation rgbBlendOperationОбсуждение
Значение по умолчанию
MTLBlendOperationAdd.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
destinationAlphaBlendFactorСвойствоЦелевой фактор смешения (DBF), используемый альфой, смешивает работу.
Объявление
Swift
var destinationAlphaBlendFactor: MTLBlendFactorObjective C
@property(nonatomic) MTLBlendFactor destinationAlphaBlendFactorОбсуждение
Значение по умолчанию
MTLBlendFactorZero.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
destinationRGBBlendFactorСвойствоЦелевой фактор смешения (DBF), используемый RGB, смешивает работу.
Объявление
Swift
var destinationRGBBlendFactor: MTLBlendFactorObjective C
@property(nonatomic) MTLBlendFactor destinationRGBBlendFactorОбсуждение
Значение по умолчанию
MTLBlendFactorZero.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
sourceAlphaBlendFactorСвойствоИсходный фактор смешения (SBF), используемый альфой, смешивает работу.
Объявление
Swift
var sourceAlphaBlendFactor: MTLBlendFactorObjective C
@property(nonatomic) MTLBlendFactor sourceAlphaBlendFactorОбсуждение
Значение по умолчанию
MTLBlendFactorOne.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
sourceRGBBlendFactorСвойствоИсходный фактор смешения (SBF), используемый RGB, смешивает работу.
Объявление
Swift
var sourceRGBBlendFactor: MTLBlendFactorObjective C
@property(nonatomic) MTLBlendFactor sourceRGBBlendFactorОбсуждение
Значение по умолчанию
MTLBlendFactorOne.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
Для каждого пикселя,
MTLBlendOperationопределяет, как объединить и взвесить исходные значения фрагмента с целевыми значениями. Некоторые операции смешения умножают исходные значения на исходный фактор смешения (SBF), умножают целевые значения на целевой фактор смешения (DBF) и комбинируют результаты с помощью дополнения или вычитания. Другие операции смешения используют или минуту или макс. функцию для определения результата.Объявление
Swift
enum MTLBlendOperation : UInt { case Add case Subtract case ReverseSubtract case Min case Max }Objective C
typedef enum : NSUInteger { MTLBlendOperationAdd = 0, MTLBlendOperationSubtract = 1, MTLBlendOperationReverseSubtract = 2, MTLBlendOperationMin = 3, MTLBlendOperationMax = 4 } MTLBlendOperation;Константы
-
AddMTLBlendOperationAddДобавьте части и источника и целевых пиксельных значений.
RGB = Source.rgb * SBF + Dest.rgb * DBFA = Source.a * SBF + Dest.a * DBFДоступный в iOS 8.0 и позже.
-
SubtractMTLBlendOperationSubtractВычтите часть целевых пиксельных значений от части источника.
RGB = Source.rgb * SBF - Dest.rgb * DBFA = Source.a * SBF - Dest.a * DBFДоступный в iOS 8.0 и позже.
-
ReverseSubtractMTLBlendOperationReverseSubtractВычтите часть исходных значений от части целевых пиксельных значений.
RGB = Dest.rgb * DBF - Source.rgb * SBFA = Dest.a * DBF - Source.a * SBFДоступный в iOS 8.0 и позже.
-
MinMTLBlendOperationMinМинимум источника и целевых пиксельных значений.
RGB = min(Source.rgb, Dest.rgb)A = min(Source.a, Dest.a)Доступный в iOS 8.0 и позже.
-
MaxMTLBlendOperationMaxМаксимум источника и целевых пиксельных значений.
RGB = max(Source.rgb, Dest.rgb)A = max(Source.a, Dest.a)Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
-
Источник и целевые факторы смешения часто необходимы для завершения спецификации работы смешения. В большинстве случаев фактор смешения для обоих значений RGB (F (rgb)) и альфа-значений (F (a)) подобен друг другу, но в некоторых случаях, такой как
MTLBlendFactorSourceAlphaSaturated, фактор смешения немного отличается. Четыре фактора смешения (MTLBlendFactorBlendColor,MTLBlendFactorOneMinusBlendColor,MTLBlendFactorBlendAlpha, иMTLBlendFactorOneMinusBlendAlpha) обратитесь к постоянному значению совмещенного цвета, установленномуsetBlendColorRed:green:blue:alpha:методMTLRenderCommandEncoder.Объявление
Swift
enum MTLBlendFactor : UInt { case Zero case One case SourceColor case OneMinusSourceColor case SourceAlpha case OneMinusSourceAlpha case DestinationColor case OneMinusDestinationColor case DestinationAlpha case OneMinusDestinationAlpha case SourceAlphaSaturated case BlendColor case OneMinusBlendColor case BlendAlpha case OneMinusBlendAlpha }Objective C
typedef enum : NSUInteger { MTLBlendFactorZero = 0, MTLBlendFactorOne = 1, MTLBlendFactorSourceColor = 2, MTLBlendFactorOneMinusSourceColor = 3, MTLBlendFactorSourceAlpha = 4, MTLBlendFactorOneMinusSourceAlpha = 5, MTLBlendFactorDestinationColor = 6, MTLBlendFactorOneMinusDestinationColor = 7, MTLBlendFactorDestinationAlpha = 8, MTLBlendFactorOneMinusDestinationAlpha = 9, MTLBlendFactorSourceAlphaSaturated = 10, MTLBlendFactorBlendColor = 11, MTLBlendFactorOneMinusBlendColor = 12, MTLBlendFactorBlendAlpha = 13, MTLBlendFactorOneMinusBlendAlpha = 14 } MTLBlendFactor;Константы
-
ZeroMTLBlendFactorZeroF = 0Доступный в iOS 8.0 и позже.
-
OneMTLBlendFactorOneF = 1Доступный в iOS 8.0 и позже.
-
SourceColorMTLBlendFactorSourceColorF(rgb) = Source.rgb; F(a) = Source.aДоступный в iOS 8.0 и позже.
-
OneMinusSourceColorMTLBlendFactorOneMinusSourceColorF(rgb) = 1 - Source.rgb; F(a) = 1 - Source.aДоступный в iOS 8.0 и позже.
-
SourceAlphaMTLBlendFactorSourceAlphaF = Source.aДоступный в iOS 8.0 и позже.
-
OneMinusSourceAlphaMTLBlendFactorOneMinusSourceAlphaF = 1 - Source.aДоступный в iOS 8.0 и позже.
-
DestinationColorMTLBlendFactorDestinationColorF(rgb) = Dest.rgb; F(a) = Dest.aДоступный в iOS 8.0 и позже.
-
OneMinusDestinationColorMTLBlendFactorOneMinusDestinationColorF(rgb) = 1 - Dest.rgb; F(a) = 1 - Dest.aДоступный в iOS 8.0 и позже.
-
DestinationAlphaMTLBlendFactorDestinationAlphaF = Dest.aДоступный в iOS 8.0 и позже.
-
OneMinusDestinationAlphaMTLBlendFactorOneMinusDestinationAlphaF = 1 - Dest.aДоступный в iOS 8.0 и позже.
-
SourceAlphaSaturatedMTLBlendFactorSourceAlphaSaturatedF(rgb) = min(Source.a, 1 - Dest.a); F(a) = 1Доступный в iOS 8.0 и позже.
-
BlendColorMTLBlendFactorBlendColorF = rgbДоступный в iOS 8.0 и позже.
-
OneMinusBlendColorMTLBlendFactorOneMinusBlendColorF = 1 - rgbДоступный в iOS 8.0 и позже.
-
BlendAlphaMTLBlendFactorBlendAlphaF = aДоступный в iOS 8.0 и позже.
-
OneMinusBlendAlphaMTLBlendFactorOneMinusBlendAlphaF = 1 - aДоступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
-
Значения раньше указывали маску, чтобы разрешить или ограничить запись в цветовые каналы значения цвета. Значения
MTLColorWriteMaskRed,MTLColorWriteMaskGreen,MTLColorWriteMaskBlue, иMTLColorWriteMaskAlphaвыберите один цветовой канал каждый, и они могут быть поразрядно объединены.Объявление
Swift
struct MTLColorWriteMask : RawOptionSetType { init(_rawValue: UInt) init(rawValuerawValue: UInt) static var None: MTLColorWriteMask { get } static var Red: MTLColorWriteMask { get } static var Green: MTLColorWriteMask { get } static var Blue: MTLColorWriteMask { get } static var Alpha: MTLColorWriteMask { get } static var All: MTLColorWriteMask { get } }Objective C
typedef enum : NSUInteger { MTLColorWriteMaskNone = 0, MTLColorWriteMaskRed = 0x1 << 3, MTLColorWriteMaskGreen = 0x1 << 2, MTLColorWriteMaskBlue = 0x1 << 1, MTLColorWriteMaskAlpha = 0x1 << 0, MTLColorWriteMaskAll = 0xf } MTLColorWriteMask;Константы
-
NoneMTLColorWriteMaskNoneВсе цветовые каналы отключены.
Доступный в iOS 8.0 и позже.
-
RedMTLColorWriteMaskRedКрасный цветовой канал включен.
Доступный в iOS 8.0 и позже.
-
GreenMTLColorWriteMaskGreenЗеленый цветовой канал включен.
Доступный в iOS 8.0 и позже.
-
BlueMTLColorWriteMaskBlueСиний цветовой канал включен.
Доступный в iOS 8.0 и позже.
-
AlphaMTLColorWriteMaskAlphaАльфа-цветовой канал включен.
Доступный в iOS 8.0 и позже.
-
AllMTLColorWriteMaskAllВсе цветовые каналы включены.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
