2013-09-18 5 views
4

Чтобы поделиться объектами OpenGL между различными контекстами (предположительно выполняемыми в разных потоках), мы используем wglShareLists() для Windows. Как это делается для Linux? Имеет ли API-интерфейс glx такой подход?Совместное использование объектов OpenGL между контекстами в Linux

ответ

7

Чтобы сделать это в GLX, вы должны передать дескриптор контексту, который хотите обмениваться ресурсами, в своем обращении к glXCreateContext (...) или glXCreateNewContext (...). На самом деле это просто, вместо того, чтобы иметь специальную функцию API для этой цели в GLX, она встроена в функцию, которую вы используете для создания контекста.

+0

Действительно? Не понял, что все так просто! –

+4

Да, проигнорируйте часть на этой странице руководства для 'glXCreateNewContext (...)', где они дублируют слово 'share_list', когда он должен сказать' direct'. Бесчисленные отчеты об ошибках позже, ясно, что никто не заботится о точности спецификации GLX: P –

Смежные вопросы