MTLFunction
Наследование
Не применимый
Оператор импорта
Swift
import Metal
Objective C
@import Metal;
Доступность
Доступный в iOS 8.0 и позже.
MTLFunction
протокол определяет интерфейс для объекта, представляющего единственную Металлическую функцию программы построения теней, которая может быть выполнена устройством как часть графической программы построения теней или вычислить функцию.
Ваше приложение не использует стандартное выделение и методы инициализации для создания a MTLFunction
объект. Получить a MTLFunction
объект, сначала создавая a MTLLibrary
возразите и затем получите a MTLFunction
объект от библиотеки. (Ваше приложение не определяет классы, реализующие этот протокол.)
Для передачи рендеринга Вы указываете a MTLFunction
возразите как вершина или функция фрагмента при конфигурировании a MTLRenderPipelineDescriptor
объект. Поскольку параллель данных вычисляет обработку, Вы указываете a MTLFunction
возразите как вычислить функция при создании a MTLComputePipelineState
объект.
Можно запросить MTLFunction
свойства во время выполнения. functionType
свойство определяет, какая функция это, и vertexAttributes
свойство определяет параметры, что оно берет.
-
name
Свойство -
functionType
СвойствоТип этой Металлической функции: вершинный шейдер, программа построения теней фрагмента, или вычисляют функцию. (требуемый) (только для чтения)
Объявление
Swift
var functionType: MTLFunctionType { get }
Objective C
@property(readonly) MTLFunctionType functionType
Обсуждение
Для получения информации о возможных значениях посмотрите
MTLFunctionType
.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
device
СвойствоУстройство, из которого создавалась эта функция. (требуемый) (только для чтения)
Объявление
Swift
var device: MTLDevice { get }
Objective C
@property(readonly) id< MTLDevice > device
Обсуждение
Функция может использоваться только с этим устройством.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
vertexAttributes
СвойствоМассив
MTLVertexAttribute
объекты, представляющие вводы функции вершинного шейдера. (требуемый) (только для чтения)Объявление
Swift
var vertexAttributes: [AnyObject]! { get }
Objective C
@property(readonly) NSArray *vertexAttributes
Обсуждение
Для получения информации о каком находится в элементах возвращенного массива, посмотрите
MTLVertexAttribute
.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
Типы данных
-
Тип Металлической функции верхнего уровня.
Объявление
Swift
enum MTLFunctionType : UInt { case Vertex case Fragment case Kernel }
Objective C
typedef enum : NSUInteger { MTLFunctionTypeVertex = 1, MTLFunctionTypeFragment = 2, MTLFunctionTypeKernel = 3 } MTLFunctionType;
Константы
-
Vertex
MTLFunctionTypeVertex
Функция вершинного шейдера, которая может использоваться в a
MTLRenderPipelineState
объект.Доступный в iOS 8.0 и позже.
-
Fragment
MTLFunctionTypeFragment
Функция программы построения теней фрагмента, которая может использоваться в a
MTLRenderPipelineState
объект.Доступный в iOS 8.0 и позже.
-
Kernel
MTLFunctionTypeKernel
Вычислить функция, которая может использоваться в a
MTLComputePipelineState
объект.Доступный в iOS 8.0 и позже.
Обсуждение
Поскольку программа построения теней функционирует или вычисляет функциональный код, функциональный тип идентифицирует определенное использование для кода в функции.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-