MTLStencilDescriptor
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCopying
-
NSObject
Оператор импорта
Swift
import Metal
Objective C
@import Metal;
Доступность
Доступный в iOS 8.0 и позже.
A MTLStencilDescriptor
объект используется для конфигурирования тестовой работы шаблона.
Тест шаблона является сравнением между ссылочным значением маскированным и значением маскированным, сохраненным в присоединении шаблона. (Значение маскируется путем выполнения логической операции И на нем с readMask
значение.) MTLStencilDescriptor
объект определяет, как обновить содержание присоединения шаблона, на основе результатов теста шаблона и теста глубины.
stencilCompareFunction
свойство определяет тест шаблона. stencilFailureOperation
, depthFailureOperation
, и depthStencilPassOperation
свойства указывают, что сделать к значению шаблона, сохраненному в присоединении шаблона для трех различных тестовых результатов: если тест шаблона перестал работать, если тестовые передачи шаблона и глубина тестируют сбои, или если и шаблон и тесты глубины успешно выполняются, соответственно. writeMask
определяет, какие биты шаблона могут быть изменены как результат работы шаблона.
-
stencilFailureOperation
СвойствоРабота, выполняющаяся для обновления значений в присоединении шаблона, когда тест шаблона перестал работать.
Объявление
Swift
var stencilFailureOperation: MTLStencilOperation
Objective C
@property(nonatomic) MTLStencilOperation stencilFailureOperation
Обсуждение
Значение по умолчанию
MTLStencilOperationKeep
, который не изменяет текущее значение шаблона. Для получения дополнительной информации о возможных значениях посмотритеMTLStencilOperation
.Когда отбрасываются тестовые сбои шаблона для пикселя, его входящего цвета, глубины или значений шаблона.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
depthFailureOperation
СвойствоРабота, выполняющаяся для обновления значений в присоединении шаблона, когда тест шаблона передает, но тестовые сбои глубины.
Объявление
Swift
var depthFailureOperation: MTLStencilOperation
Objective C
@property(nonatomic) MTLStencilOperation depthFailureOperation
Обсуждение
Значение по умолчанию
MTLStencilOperationKeep
, который не изменяет текущее значение шаблона. Для получения дополнительной информации о возможных значениях посмотритеMTLStencilOperation
.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
См. также
-
depthStencilPassOperation
СвойствоРабота, выполняющаяся для обновления значений в присоединении шаблона, когда и тест шаблона и глубина тестируют передачу.
Объявление
Swift
var depthStencilPassOperation: MTLStencilOperation
Objective C
@property(nonatomic) MTLStencilOperation depthStencilPassOperation
Обсуждение
Значение по умолчанию
MTLStencilOperationKeep
, который не изменяет текущее значение шаблона. Для получения дополнительной информации о возможных значениях посмотритеMTLStencilOperation
.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
См. также
-
stencilCompareFunction
СвойствоСравнение, выполняющееся между ссылочным значением маскированным и значением маскированным в присоединении шаблона.
Объявление
Swift
var stencilCompareFunction: MTLCompareFunction
Objective C
@property(nonatomic) MTLCompareFunction stencilCompareFunction
Обсуждение
Например, если
stencilCompareFunction
MTLCompareFunctionLess
, если ссылочное значение маскированное является меньше, чем сохраненное значение шаблона маскированное, тогда тест шаблона передает. Значение по умолчаниюMTLCompareFunctionAlways
, который указывает, что тест шаблона всегда передает.Сохраненное значение шаблона и ссылочное значение оба маскируются путем выполнения логической операции И с
readMask
значение перед сравнением имеет место. Для получения дополнительной информации о возможных значениях посмотритеMTLCompareFunction
.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
См. также
-
readMask
СвойствоБитовая маска, определяющая, из которого могут читать биты, получающие сравнительные испытания с помощью шаблона.
Объявление
Swift
var readMask: UInt32
Objective C
@property(nonatomic) uint32_t readMask
Обсуждение
readMask
биты привыкли для логических операций И и к сохраненному значению шаблона и к ссылочному значению.Младшие значащие биты маски чтения используются. Значение по умолчанию является всеми. Логическая операция И со значением по умолчанию
readMask
не изменяет значение.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
См. также
-
writeMask
СвойствоБитовая маска, определяющая, в который могут записать биты, получающие операции с помощью шаблона.
Объявление
Swift
var writeMask: UInt32
Objective C
@property(nonatomic) uint32_t writeMask
Обсуждение
writeMask
привыкли для логических операций И к значениям, бывшим записанными в присоединение шаблона как результат работы шаблона.Младшие значащие биты маски записи используются. Значение по умолчанию является всеми. Логическая операция И со значением по умолчанию
writeMask
не изменяет значение.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Когда сравнительное испытание передает или перестало работать, работа выполнила на в настоящее время сохраненном значении шаблона.
Объявление
Swift
enum MTLStencilOperation : UInt { case Keep case Zero case Replace case IncrementClamp case DecrementClamp case Invert case IncrementWrap case DecrementWrap }
Objective C
typedef enum : NSUInteger { MTLStencilOperationKeep = 0, MTLStencilOperationZero = 1, MTLStencilOperationReplace = 2, MTLStencilOperationIncrementClamp = 3, MTLStencilOperationDecrementClamp = 4, MTLStencilOperationInvert = 5, MTLStencilOperationIncrementWrap = 6, MTLStencilOperationDecrementWrap = 7 } MTLStencilOperation;
Константы
-
Keep
MTLStencilOperationKeep
Сохраните текущее значение шаблона.
Доступный в iOS 8.0 и позже.
-
Zero
MTLStencilOperationZero
Обнулите значение шаблона.
Доступный в iOS 8.0 и позже.
-
Replace
MTLStencilOperationReplace
Замените значение шаблона ссылочным значением шаблона, установленным
setStencilReferenceValue:
методMTLRenderCommandEncoder
.Доступный в iOS 8.0 и позже.
-
IncrementClamp
MTLStencilOperationIncrementClamp
Если текущее значение шаблона не является максимальным представимым значением, увеличьте стоимость шаблона одной. Иначе, если текущее значение шаблона является максимальным представимым значением, не изменяйте значение шаблона.
Доступный в iOS 8.0 и позже.
-
DecrementClamp
MTLStencilOperationDecrementClamp
Если текущее значение шаблона не является нулем, уменьшите значение шаблона одним. Иначе, если текущее значение шаблона является нулем, не изменяйте значение шаблона.
Доступный в iOS 8.0 и позже.
-
Invert
MTLStencilOperationInvert
Выполните логическую поразрядную работу инвертирования на текущем значении шаблона.
Доступный в iOS 8.0 и позже.
-
IncrementWrap
MTLStencilOperationIncrementWrap
Если текущее значение шаблона не является максимальным представимым значением, увеличьте стоимость шаблона одной. Иначе, если текущее значение шаблона является максимальным представимым значением, обнулите значение шаблона.
Доступный в iOS 8.0 и позже.
-
DecrementWrap
MTLStencilOperationDecrementWrap
Если текущее значение шаблона не является нулем, уменьшите значение шаблона одним. Иначе, если текущее значение шаблона является нулем, установите значение шаблона в максимальное представимое значение.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-