MTLDevice
Наследование
Не применимый
Оператор импорта
Swift
import Metal
Objective C
@import Metal;
Доступность
Доступный в iOS 8.0 и позже.
MTLDevice
протокол определяет интерфейс к единственному графическому процессору (GPU). Вы используете объект, соответствующий этому протоколу для запросов возможностей процессора, и выделить объекты раньше получало доступ к тем возможностям.
Ваше приложение не определяет классы, реализующие этот протокол; это используется Металлом для обеспечения объекта устройства для приложения. Для получения предпочтительного системного устройства системы вызовите MTLCreateSystemDefaultDevice
функция.
Большинство объектов в Металле, выполняющих рендеринг графики и вычислительную работу, связано непосредственно с определенным устройством. Например, объекты текстуры создаются объектом устройства и могут использоваться только с тем устройством. Большинство методов на a MTLDevice
объект создает невременные объекты, включая очереди команды, ресурсы (такие как буферы и текстуры), и конвейерно обрабатывает состояния. Эти объекты могут быть дорогими для создания, и Вы призваны создать их вскоре после своих запусков приложения и снова использовать их всюду по времени жизни Вашего приложения. Избегите создавать эти объекты в производительности чувствительный код.
-
name
СвойствоСтрока, идентифицирующая устройство. (требуемый) (только для чтения)
Обсуждение
Когда этот объект просматривается в отладчике XCode, его имя используется для маркировки устройства. Имя должно только использоваться для информационных целей.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
supportsFeatureSet (_:) - supportsFeatureSet:
ТребуемыйПроверки, чтобы видеть, реализует ли устройство определенный набор функций. (требуемый)
Объявление
Swift
func supportsFeatureSet(_
featureSet
: MTLFeatureSet) -> BoolObjective C
- (BOOL)supportsFeatureSet:(MTLFeatureSet)
featureSet
Параметры
featureSet
Значение, указывающее набор функций, которым Вы интересуетесь.
Возвращаемое значение
YES
true
если набор функций поддерживается устройством; иначеNO
false
.Обсуждение
Для получения дополнительной информации об определенных возможностях каждого набора функций см. Металлическое Руководство по программированию.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newDefaultLibrary () - newDefaultLibrary
ТребуемыйСоздает новую библиотеку, содержащую функции, сохраненные в библиотеке Metal приложения по умолчанию. (требуемый)
Объявление
Swift
func newDefaultLibrary() -> MTLLibrary?
Objective C
- (id<MTLLibrary>)newDefaultLibrary
Возвращаемое значение
Новый объект библиотеки, содержащий функции от библиотеки по умолчанию. Этот метод возвраты
nil
если не может быть найдена библиотека по умолчанию.Обсуждение
Все
.metal
файлы в проекте XCode, создающем приложение, скомпилированы и встроены в единственную библиотеку по умолчанию.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Создает новую библиотеку, содержащую функции, сохраненные в указанной библиотеке Metal. (требуемый)
Объявление
Swift
func newLibraryWithFile(_
filepath
: String, errorerror
: NSErrorPointer) -> MTLLibrary?Параметры
filepath
Полный путь к файлу к a
.metallib
файл.error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа. Например, если код не может быть успешно скомпилирован, объект мог бы включать ошибки компилятора.Возвращаемое значение
Новый объект библиотеки, содержащий функции, скомпилированные в
.metallib
файл.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newLibraryWithSource (_: options:completionHandler:) - newLibraryWithSource:options:completionHandler:
ТребуемыйАсинхронно создает новую библиотеку путем компиляции функций, сохраненных в указанной исходной строке. (требуемый)
Объявление
Swift
func newLibraryWithSource(_
source
: String, optionsoptions
: MTLCompileOptions?, completionHandlercompletionHandler
: ((MTLLibrary!, NSError!) -> Void)!)Objective C
- (void)newLibraryWithSource:(NSString *)
source
options:(MTLCompileOptions *)options
completionHandler:(void (^)(id<MTLLibrary> library, NSError *error))completionHandler
Параметры
source
Строка, содержащая исходный код для одной или более Металлических функций. Посмотрите Металлическое Руководство по Языку Штриховки.
options
Ряд опций влиять на компиляцию этого источника. Посмотрите Ссылку класса MTLCompileOptions.
completionHandler
Блок кода, вызывающийся, когда результат загрузки библиотеки доступен. Обработчик завершения берет следующие параметры:
library
Новый объект библиотеки, содержащий скомпилированный код или
nil
если произошла ошибка.error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа. Например, если код не может быть успешно скомпилирован, объект мог бы включать ошибки компилятора. Если компилятор только генерировал предупреждения, для параметра ошибок возможно быть не -nil
и также получите допустимый объект библиотеки.Обсуждение
Источник может только импортировать Металлическую стандартную библиотеку. Нет никакого пути поиска для нахождения других функций.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Синхронно создает новую библиотеку, содержащую функции, сохраненные в указанной исходной строке. (требуемый)
Объявление
Swift
func newLibraryWithSource(_
source
: String, optionsoptions
: MTLCompileOptions?, errorerror
: NSErrorPointer) -> MTLLibrary?Objective C
- (id<MTLLibrary>)newLibraryWithSource:(NSString *)
source
options:(MTLCompileOptions *)options
error:(NSError **)error
Параметры
source
Строка, содержащая исходный код для одной или более Металлических функций. Посмотрите Металлическое Руководство по Языку Штриховки.
options
Ряд опций влиять на компиляцию этого источника. Посмотрите Ссылку класса MTLCompileOptions.
error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа. Например, если код не может быть успешно скомпилирован, объект мог бы включать ошибки компилятора. Если компилятор только генерировал предупреждения, для параметра ошибок возможно быть не -nil
и также получите допустимый объект библиотеки.Возвращаемое значение
Новый объект библиотеки, содержащий функции из источника.
Обсуждение
Источник может только импортировать Металлическую стандартную библиотеку. Нет никакого пути поиска для нахождения других функций.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Создает новую библиотеку, содержащую функции, сохраненные в указанном объекте двоичных данных. (требуемый)
Объявление
Swift
func newLibraryWithData(_
data
: dispatch_data_t, errorerror
: NSErrorPointer) -> MTLLibrary?Objective C
- (id<MTLLibrary>)newLibraryWithData:(dispatch_data_t)
data
error:(NSError **)error
Параметры
data
Данные от предварительно скомпилированной библиотеки Metal. Для получения дополнительной информации посмотрите Библиотеки Создания Во время Процесса сборки Приложения
error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа. Например, если код не может быть успешно скомпилирован, объект мог бы включать ошибки компилятора.Возвращаемое значение
Новый объект библиотеки, содержащий функции от
metallib
файл..Обсуждение
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
См. также
-
newCommandQueue () - newCommandQueue
ТребуемыйСоздает и возвратите последовательную очередь представления команды. (требуемый)
Объявление
Swift
func newCommandQueue() -> MTLCommandQueue
Objective C
- (id<MTLCommandQueue>)newCommandQueue
Возвращаемое значение
Новый объект очереди команды.
Обсуждение
Объекты очереди команды всегда связываются с исходным устройством.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Создает и возвращает последовательную очередь представления команды с максимальным количеством незаконченных буферов команд. (требуемый)
Объявление
Swift
func newCommandQueueWithMaxCommandBufferCount(_
maxCommandBufferCount
: Int) -> MTLCommandQueueObjective C
- (id<MTLCommandQueue>)newCommandQueueWithMaxCommandBufferCount:(NSUInteger)
maxCommandBufferCount
Параметры
maxCommandBufferCount
Максимальное количество незаконченных буферов команд, которые могут ставиться в очередь.
Возвращаемое значение
Новый объект очереди команды.
Обсуждение
Объекты очереди команды всегда связываются с исходным устройством.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Выделяет новый буфер, к которому может получить доступ устройство. (требуемый)
Объявление
Swift
func newBufferWithLength(_
length
: Int, optionsoptions
: MTLResourceOptions) -> MTLBuffer!Objective C
- (id<MTLBuffer>)newBufferWithLength:(NSUInteger)
length
options:(MTLResourceOptions)options
Параметры
length
Размер, в байтах, нового выделения памяти.
options
Указывает поведение нового буферного объекта.
Возвращаемое значение
Новый буферный объект с новым выделением памяти. Данные буфера первоначально заполнены, обнуляет.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Выделяет новый буфер, и инициализируйте его содержание путем копирования данных в него. (требуемый)
Объявление
Swift
func newBufferWithBytes(_
pointer
: UnsafePointer<Void>, lengthlength
: Int, optionsoptions
: MTLResourceOptions) -> MTLBuffer!Objective C
- (id<MTLBuffer>)newBufferWithBytes:(const void *)
pointer
length:(NSUInteger)length
options:(MTLResourceOptions)options
Параметры
pointer
Адрес памяти, с которого можно скопировать исходные данные.
length
Размер, в байтах, нового выделения памяти. Это - также число байтов, копирующихся с
pointer
.options
Указывает поведение нового буферного объекта.
Возвращаемое значение
Новый буферный объект, содержащий данные, скопированные с
pointer
.Обсуждение
Выделение ресурсов хранения возвращенного нового буферного объекта не является тем же как
pointer
входное значение.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newBufferWithBytesNoCopy (_: length:options:deallocator:) - newBufferWithBytesNoCopy:length:options:deallocator:
ТребуемыйСоздает буфер путем обертывания существующего непрерывного выделения памяти. (требуемый)
Объявление
Swift
func newBufferWithBytesNoCopy(_
pointer
: UnsafeMutablePointer<Void>, lengthlength
: Int, optionsoptions
: MTLResourceOptions, deallocatordeallocator
: ((UnsafeMutablePointer<Void>, Int) -> Void)?) -> MTLBuffer!Objective C
- (id<MTLBuffer>)newBufferWithBytesNoCopy:(void *)
pointer
length:(NSUInteger)length
options:(MTLResourceOptions)options
deallocator:(void (^)(void *pointer, NSUInteger length))deallocator
Параметры
pointer
Адрес памяти, с которого запускаются данные. Выделение памяти в
pointer
должна уже быть выровненная страница.length
Число байтов существующего выделения памяти для покрытия. Значение
length
должен привести к выровненной страницей области памяти.options
Указывает поведение нового буферного объекта.
deallocator
Блок кода, вызывающийся, когда освобожден этот буферный объект. Передача
nil
если Вы не должны выполнять действие.Возвращаемое значение
Новый буферный объект, ссылающийся на существующее выделение памяти.
Обсуждение
Выделение ресурсов хранения возвращенного нового буферного объекта совпадает с
pointer
входное значение. Существующее выделение памяти должно быть покрыто единственной областью VM, обычно выделенной сvm_allocate
илиmmap
. Память, выделеннаяmalloc
в частности запрещен.deallocator
блок может использоваться для освобождения обернутого выделения памяти любым желаемым способом.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Создает объект текстуры с частным хранением, содержащим состояние текстуры. (требуемый)
Объявление
Swift
func newTextureWithDescriptor(_
descriptor
: MTLTextureDescriptor) -> MTLTexture!Objective C
- (id<MTLTexture>)newTextureWithDescriptor:(MTLTextureDescriptor *)
descriptor
Параметры
descriptor
Объект дескриптора, описывающий текстуру, которая будет создаваться.
Возвращаемое значение
Новый объект скомпилированная текстура.
Обсуждение
Возвращенный объект текстуры выделил хранение для данных изображения текстуры.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Создает объект состояния сэмплера, содержащий состояние сэмплера. (требуемый)
Объявление
Swift
func newSamplerStateWithDescriptor(_
descriptor
: MTLSamplerDescriptor) -> MTLSamplerStateObjective C
- (id<MTLSamplerState>)newSamplerStateWithDescriptor:(MTLSamplerDescriptor *)
descriptor
Параметры
descriptor
Объект дескриптора, описывающий сэмплер для создания.
Возвращаемое значение
Новый объект с состоянием сэмплера.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Создает новый объект, содержащий глубину и тестовое состояние шаблона. (требуемый)
Объявление
Swift
func newDepthStencilStateWithDescriptor(_
descriptor
: MTLDepthStencilDescriptor) -> MTLDepthStencilStateObjective C
- (id<MTLDepthStencilState>)newDepthStencilStateWithDescriptor:(MTLDepthStencilDescriptor *)
descriptor
Параметры
descriptor
Объект дескриптора, содержащий глубину и шаблон, тестирует государственную собственность.
Возвращаемое значение
Новый объект, содержащий состояние для тестов шаблона и глубины.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newRenderPipelineStateWithDescriptor (_: completionHandler:) - newRenderPipelineStateWithDescriptor:completionHandler:
ТребуемыйАсинхронно создает и возвращает конвейерный объект состояния рендеринга. (требуемый)
Объявление
Swift
func newRenderPipelineStateWithDescriptor(_
descriptor
: MTLRenderPipelineDescriptor, completionHandlercompletionHandler
: ((MTLRenderPipelineState!, NSError!) -> Void)!)Objective C
- (void)newRenderPipelineStateWithDescriptor:(MTLRenderPipelineDescriptor *)
descriptor
completionHandler:(void (^)(id<MTLRenderPipelineState> renderPipelineState, NSError *error))completionHandler
Параметры
descriptor
Объект дескриптора, содержащий графику, представляющую государственную собственность, включая растеризацию, видимость, функцию и состояние смешения.
completionHandler
Завершается блок, который вызовут после логики для создания конвейерного объекта состояния рендеринга. Блок берет следующие параметры:
renderPipelineState
Новый рендеринг конвейерно обрабатывает объект состояния, содержащий скомпилированное состояние рендеринга графики, или
nil
если произошла ошибка.error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Обсуждение
Для использования графики, представляющей конвейерное состояние для передачи рендеринга, вызовите
setRenderPipelineState:
метод aMTLRenderCommandEncoder
объект сMTLRenderPipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newRenderPipelineStateWithDescriptor (_: options:completionHandler:) - newRenderPipelineStateWithDescriptor:options:completionHandler:
ТребуемыйАсинхронно создает и возвращает конвейерный объект состояния рендеринга и связанную отражательную информацию. (требуемый)
Объявление
Swift
func newRenderPipelineStateWithDescriptor(_
descriptor
: MTLRenderPipelineDescriptor, optionsoptions
: MTLPipelineOption, completionHandlercompletionHandler
: ((MTLRenderPipelineState!, MTLRenderPipelineReflection!, NSError!) -> Void)!)Objective C
- (void)newRenderPipelineStateWithDescriptor:(MTLRenderPipelineDescriptor *)
descriptor
options:(MTLPipelineOption)options
completionHandler:(void (^)(id<MTLRenderPipelineState> renderPipelineState, MTLRenderPipelineReflection *reflection, NSError *error))completionHandler
Параметры
descriptor
Объект дескриптора, содержащий графику, представляющую государственную собственность, включая растеризацию, видимость, функцию и состояние смешения.
options
Тип отражательной информации, которая должна быть возвращена.
completionHandler
Завершается блок, который вызовут после логики для создания конвейерного объекта состояния рендеринга. Блок берет следующие параметры:
renderPipelineState
Новый рендеринг конвейерно обрабатывает объект состояния, содержащий скомпилированное состояние рендеринга графики, или
nil
если произошла ошибка.reflection
Новый отражательный объект, содержащий отражательные данные о вершине и функциях фрагмента, включая подробные данные об аргументах функции. Если конвейерное состояние не могло бы быть скомпилировано, этот параметр
nil
.error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Обсуждение
Для использования графики, представляющей конвейерное состояние для передачи рендеринга, вызовите
setRenderPipelineState:
метод aMTLRenderCommandEncoder
объект сMTLRenderPipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newRenderPipelineStateWithDescriptor (_: ошибка:) - newRenderPipelineStateWithDescriptor:error:
ТребуемыйСинхронно создает и возвращает конвейерный объект состояния рендеринга. (требуемый)
Объявление
Swift
func newRenderPipelineStateWithDescriptor(_
descriptor
: MTLRenderPipelineDescriptor, errorerror
: NSErrorPointer) -> MTLRenderPipelineState?Objective C
- (id<MTLRenderPipelineState>)newRenderPipelineStateWithDescriptor:(MTLRenderPipelineDescriptor *)
descriptor
error:(NSError **)error
Параметры
descriptor
Объект дескриптора, содержащий графику, представляющую государственную собственность, включая растеризацию, видимость, программируемую программу построения теней и состояние смешения.
error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Возвращаемое значение
Новый объект со скомпилированной графикой, представляющей конвейерное состояние.
Обсуждение
Для использования графики, представляющей конвейерное состояние для передачи рендеринга, вызовите
setRenderPipelineState:
метод aMTLRenderCommandEncoder
объект сMTLRenderPipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newRenderPipelineStateWithDescriptor (_: options:reflection:error:) - newRenderPipelineStateWithDescriptor:options:reflection:error:
ТребуемыйСинхронно создает конвейерный объект состояния рендеринга, содержащий скомпилированную графику, представляющую конвейерное состояние, и возвращающий дополнительную отражательную информацию. (требуемый)
Объявление
Swift
func newRenderPipelineStateWithDescriptor(_
descriptor
: MTLRenderPipelineDescriptor, optionsoptions
: MTLPipelineOption, reflectionreflection
: AutoreleasingUnsafeMutablePointer<MTLRenderPipelineReflection?>, errorerror
: NSErrorPointer) -> MTLRenderPipelineState?Objective C
- (id<MTLRenderPipelineState>)newRenderPipelineStateWithDescriptor:(MTLRenderPipelineDescriptor *)
descriptor
options:(MTLPipelineOption)options
reflection:(MTLRenderPipelineReflection **)reflection
error:(NSError **)error
Параметры
descriptor
Объект дескриптора, содержащий графику, представляющую государственную собственность, включая растеризацию, видимость, программируемую программу построения теней и состояние смешения.
options
Тип отражательной информации, которая должна быть возвращена.
reflection
По возврату расположение, на которое указывает этот параметр, заполнено новым объектом, содержащим отражательные данные о вершине и функциях фрагмента, включая подробные данные об аргументах функции. Если конвейерное состояние не могло бы быть скомпилировано, то
nil
возвращается.error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Возвращаемое значение
Новый объект со скомпилированной графикой, представляющей конвейерное состояние.
Обсуждение
Для использования графики, представляющей конвейерное состояние для передачи рендеринга, вызовите
setRenderPipelineState:
метод aMTLRenderCommandEncoder
объект сMTLRenderPipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newComputePipelineStateWithFunction (_: completionHandler:) - newComputePipelineStateWithFunction:completionHandler:
ТребуемыйАсинхронно создает новое, вычисляют конвейерный объект состояния, представляющий скомпилированный, вычисляют функцию. (требуемый)
Объявление
Swift
func newComputePipelineStateWithFunction(_
function
: MTLFunction, completionHandlercompletionHandler
: ((MTLComputePipelineState!, NSError!) -> Void)!)Objective C
- (void)newComputePipelineStateWithFunction:(id<MTLFunction>)
function
completionHandler:(void (^)(id<MTLComputePipelineState> computePipelineState, NSError *error))completionHandler
Параметры
function
Функциональный объект, который должен быть скомпилирован в вычислить конвейерный объект состояния.
completionHandler
Блок, который вызовут после задачи, завершается. Блок берет следующие параметры:
computePipelineState
Новое вычисляет конвейерный объект состояния, содержащий скомпилированный, вычисляют конвейерное состояние или
nil
если произошла ошибка.error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Обсуждение
Для использования вычислить конвейерного состояния для вычислить передачи вызовите
setComputePipelineState:
метод aMTLComputeCommandEncoder
объект сMTLComputePipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newComputePipelineStateWithFunction (_: options:completionHandler:) - newComputePipelineStateWithFunction:options:completionHandler:
ТребуемыйАсинхронно создает новое, вычисляют конвейерный объект состояния, представляющий скомпилированный, вычисляют функцию, и возвращает дополнительную отражательную информацию. (требуемый)
Объявление
Swift
func newComputePipelineStateWithFunction(_
function
: MTLFunction, optionsoptions
: MTLPipelineOption, completionHandlercompletionHandler
: ((MTLComputePipelineState!, MTLComputePipelineReflection!, NSError!) -> Void)!)Objective C
- (void)newComputePipelineStateWithFunction:(id<MTLFunction>)
function
options:(MTLPipelineOption)options
completionHandler:(void (^)(id<MTLComputePipelineState> computePipelineState, MTLComputePipelineReflection *reflection, NSError *error))completionHandler
Параметры
function
Функциональный объект, который должен быть скомпилирован в вычислить конвейерный объект состояния.
options
Тип отражательной информации, которая должна быть возвращена.
completionHandler
Блок, который вызовут после задачи, завершается. Блок берет следующие параметры:
computePipelineState
Новое вычисляет конвейерный объект состояния, содержащий скомпилированный, вычисляют конвейерное состояние, или
nil
если произошла ошибка.reflection
Новый отражательный объект, содержащий отражательные данные о вычислить функции, включая подробные данные об аргументах функции. Если конвейерное состояние не могло бы быть скомпилировано, этот параметр
nil
.error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Обсуждение
Для использования вычислить конвейерного состояния для вычислить передачи вызовите
setComputePipelineState:
метод aMTLComputeCommandEncoder
объект сMTLComputePipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newComputePipelineStateWithFunction (_: ошибка:) - newComputePipelineStateWithFunction:error:
ТребуемыйСинхронно создает новое, вычисляют конвейерный объект состояния, представляющий скомпилированный, вычисляют функцию. (требуемый)
Объявление
Swift
func newComputePipelineStateWithFunction(_
function
: MTLFunction, errorerror
: NSErrorPointer) -> MTLComputePipelineState?Objective C
- (id<MTLComputePipelineState>)newComputePipelineStateWithFunction:(id<MTLFunction>)
function
error:(NSError **)error
Параметры
function
Функциональный объект, который должен быть скомпилирован в вычислить конвейерный объект состояния.
error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Возвращаемое значение
Новый объект, который может использоваться в качестве вычислить конвейерного состояния.
Обсуждение
Для использования вычислить конвейерного состояния для вычислить передачи вызовите
setComputePipelineState:
метод aMTLComputeCommandEncoder
объект сMTLComputePipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
newComputePipelineStateWithFunction (_: options:reflection:error:) - newComputePipelineStateWithFunction:options:reflection:error:
ТребуемыйСинхронно создает новое, вычисляют конвейерный объект состояния, представляющий скомпилированный, вычисляют функцию, и возвращает дополнительную отражательную информацию. (требуемый)
Объявление
Swift
func newComputePipelineStateWithFunction(_
function
: MTLFunction, optionsoptions
: MTLPipelineOption, reflectionreflection
: AutoreleasingUnsafeMutablePointer<MTLComputePipelineReflection?>, errorerror
: NSErrorPointer) -> MTLComputePipelineState?Objective C
- (id<MTLComputePipelineState>)newComputePipelineStateWithFunction:(id<MTLFunction>)
function
options:(MTLPipelineOption)options
reflection:(MTLComputePipelineReflection **)reflection
error:(NSError **)error
Параметры
function
Функциональный объект, который должен быть скомпилирован в вычислить конвейерный объект состояния.
options
Тип отражательной информации, которая должна быть возвращена.
reflection
Отражательные данные о вычислить функции, включая подробные данные об аргументах функции.
error
Ошибочный объект, описывающий проблему, или
nil
если успешно выполнилась работа.Возвращаемое значение
Новый объект, который может использоваться в качестве вычислить конвейерного состояния.
Обсуждение
Для использования вычислить конвейерного состояния для вычислить передачи вызовите
setComputePipelineState:
метод aMTLComputeCommandEncoder
объект сMTLComputePipelineState
объект.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
Значения, указывающие определенные аппаратные наборы функций, которые доступны. Каждая семья обещает различный набор аппаратных пределов и функций. Для получения дополнительной информации см. Металлическое Руководство по программированию.
Объявление
Swift
enum MTLFeatureSet : UInt { case _iOS_GPUFamily1_v1 case _iOS_GPUFamily2_v1 }
Objective C
typedef enum : NSUInteger { MTLFeatureSet_iOS_GPUFamily1_v1 = 0, MTLFeatureSet_iOS_GPUFamily2_v1 = 1, } MTLFeatureSet;
Константы
-
MTLFeatureSet_iOS_GPUFamily1_v1
Набор функций, поддерживаемый первым поколением iOS GPUs тот Металл поддержки. Этот набор функций поддерживается A7 GPU.
Доступный в iOS 8.0 и позже.
-
MTLFeatureSet_iOS_GPUFamily2_v1
Набор функций, поддерживаемый вторым поколением iOS GPUs тот Металл поддержки. Этот набор функций поддерживается A8 GPU.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-
-
Средства управления, какая информация о параметре сделана доступной для отражения созданием конвейера.
Объявление
Swift
struct MTLPipelineOption : RawOptionSetType { init(_
rawValue
: UInt) init(rawValuerawValue
: UInt) static var None: MTLPipelineOption { get } static var ArgumentInfo: MTLPipelineOption { get } static var BufferTypeInfo: MTLPipelineOption { get } }Objective C
typedef enum : NSUInteger { MTLPipelineOptionNone = 0, MTLPipelineOptionArgumentInfo = 1, MTLPipelineOptionBufferTypeInfo = 2 } MTLPipelineOption;
Константы
-
None
MTLPipelineOptionNone
Никакая информация о параметре не сделала доступным.
Доступный в iOS 8.0 и позже.
-
ArgumentInfo
MTLPipelineOptionArgumentInfo
Информация о параметре сделала доступным.
Доступный в iOS 8.0 и позже.
-
BufferTypeInfo
MTLPipelineOptionBufferTypeInfo
Буфер и информация о параметре сделали доступным.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.
-