Могут ли два процесса рендериться на один холст OpenGL? - PullRequest
6 голосов
/ 16 января 2009

У меня на одной машине запущены три разных процесса. Один из них владеет окном OpenGL. Я хотел бы, чтобы другие два могли рендерить (быстро) различные прямоугольные части окна OpenGL.

Если я могу гарантировать, что они будут по очереди выполнять команды OpenGL, возможно ли это?

Большое спасибо

Уго Элиас

Ответы [ 2 ]

3 голосов
/ 09 февраля 2009

В Windows это возможно с потоками того же процесса.

Функция, которую вы ищете - wglMakeCurrent:

http://msdn.microsoft.com/en-us/library/dd374387%28VS.85%29.aspx

1 голос
/ 17 января 2009

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

Это даже рискованно для двух потоков в одном процессе, каждый из которых делает вызовы OpenGL в один контекст OpenGL. (Это не должно быть так по замыслу, но это часто проблема с текущими драйверами.)

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