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;Константы
-
VertexMTLFunctionTypeVertexФункция вершинного шейдера, которая может использоваться в a
MTLRenderPipelineStateобъект.Доступный в iOS 8.0 и позже.
-
FragmentMTLFunctionTypeFragmentФункция программы построения теней фрагмента, которая может использоваться в a
MTLRenderPipelineStateобъект.Доступный в iOS 8.0 и позже.
-
KernelMTLFunctionTypeKernelВычислить функция, которая может использоваться в a
MTLComputePipelineStateобъект.Доступный в iOS 8.0 и позже.
Обсуждение
Поскольку программа построения теней функционирует или вычисляет функциональный код, функциональный тип идентифицирует определенное использование для кода в функции.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
