CVMetalTextureCacheCreate & triple-buffering - PullRequest
       31

CVMetalTextureCacheCreate & triple-buffering

0 голосов
/ 29 октября 2018

Я реализую схему тройной буферизации для моей ситуации рисования металла, основываясь на предложениях здесь .

Работает очень хорошо. Я играю видеоклипы и использую тройную буферизацию CVPixelBuffer семплов по мере их поступления от AVPlayer объектов в AVFoundation. При переходе между видео у меня есть одна пара таких схем тройного буфера в работе и задействованный шейдер ядра. Кажется, работает хорошо @ 60fps.

Однако у меня есть вопрос о требованиях буферизации CVMetalTextureCacheCreate.

Я также трижды буферизовал эти кэши (создавая три таких кэша для каждого фильма), , но я не уверен, нужно ли мне это делать . Я использую кеш (с вызовом CVMetalTextureCacheCreateTextureFromImage) в методе drawRect MTKView. Для пары фильмов будет несколько таких вызовов разрозненных кешей.

Любые предложения на этот счет были бы великолепны.

1 Ответ

0 голосов
/ 07 ноября 2018

Вам нужно только создать 1 кеш текстуры, 1 кеш соответствует N текстурам.

...