MTLParallelRenderCommandEncoder
Наследование
Не применимый
Оператор импорта
Swift
import Metal
Objective C
@import Metal;
Доступность
Доступный в iOS 8.0 и позже.
MTLParallelRenderCommandEncoder
протокол используется для определения интерфейса для объектов, которые могут разбить единственную передачу рендеринга графики так, чтобы это могло быть закодировано от многократных потоков одновременно.
Ваше приложение не определяет классы, реализующие этот протокол. Создать a MTLParallelRenderCommandEncoder
объект, вызовите parallelRenderCommandEncoderWithDescriptor:
метод MTLCommandBuffer
возразите, что Вы хотите закодировать команды рендеринга в. Затем вызовите renderCommandEncoder
метод на этом MTLParallelRenderCommandEncoder
объект создать один или больше MTLRenderCommandEncoder
объекты. Подчиненный MTLRenderCommandEncoder
создаваемые объекты кодируют свои команды к тому же буферу команд и предназначаются для того же MTLRenderPassAttachmentDescriptor
объект. MTLParallelRenderCommandEncoder
объект гарантирует присоединяемую загрузку, и действия хранилища только происходят в запуске и конце всей передачи рендеринга.
Можно присвоить каждого MTLRenderCommandEncoder
к его собственному потоку и каждый может закодировать команды параллельно. Вы ответственны за любую требующуюся синхронизацию потока. После того, как все подчиненные кодеры закончили кодировать свои команды, вызвать endEncoding
выполнить команды. Команды рендеринга выполняются в порядке, что создавались подчиненные кодеры.
-
Создайте объект, кодирующий команды, которые выполняют операции рендеринга графики и могут быть присвоены различному потоку. (требуемый)
Объявление
Swift
func renderCommandEncoder() -> MTLRenderCommandEncoder
Objective C
- (id<MTLRenderCommandEncoder>)renderCommandEncoder
Возвращаемое значение
Объект кодера команды рендеринга графики
Обсуждение
Команды рендеринга, закодированные
MTLRenderCommandEncoder
объекты выполняются в порядке в которыйMTLRenderCommandEncoder
объекты создаются, не в порядке, они заканчиваются.Оператор импорта
Objective C
@import Metal;
Swift
import Metal
Доступность
Доступный в iOS 8.0 и позже.