Как загрузить IOSurface в приложение OpenGL для Mac OS X Snow Leopard - PullRequest
4 голосов
/ 06 октября 2009

Apple добавила новую платформу IOSurface в рамках обновления 10.6 для Mac OS X. Поскольку этот фреймворк относительно новый, я не нашел столь необходимой документации, как правильно его использовать.

Мне было интересно, есть ли кто-нибудь на StackOverflow, который может помочь мне с использованием IOSurface.

В любом случае, это то, что я хочу сделать. Прямо сейчас мое приложение очень простое, так что я могу ознакомиться с IOSurfaces. По сути, я хотел бы загрузить изображение в текстуру IOSurface и отобразить в пользовательском OpenGLView. Это все, к чему я сейчас стремлюсь.

Чтобы сделать это проще, я просто загружаю один постоянный цвет в IOSurface. На данный момент моя главная цель - создать ссылку на IOSurface и отобразить ее в пользовательском представлении OpenGL.

Пожалуйста, помогите мне с -IOSurface объявления заявления Загрузка данных в IOSurface и синтаксис для рисования IOSurface в OpenGL.

Очень ценится.

приписка

IOSurface похож на диспетчер памяти, который передает графические данные между приложениями или что-то в этом роде.

Я пробовал Google IOSurface. И самый полезный сайт

http://cocoadhoc.blogspot.com/2009/09/hidden-gems-of-snow-leopard-iosurface.html

Однако, когда я попытался скомпилировать код примера, у меня появляется ошибка компилятора, указывающая, что QTVisualContextRef и другие переменные QuickTime не объявлены. У меня последняя версия Quick Time через автоматическое обновление.

1 Ответ

4 голосов
/ 26 ноября 2009

API IOSurface очень похож на CVPixelBuffer Core Video, который задокументирован, поэтому вы можете начать с просмотра документации CVPixelBuffer и сравнения с IOSurfaceAPI.h.

Чтобы связать текстуру OpenGL с IOSurface, см. Функцию CGLTexImageIOSurface2D, которая определена в <OpenGL/CGLIOSurface.h>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...