2013-05-15 2 views
4

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

Открывает ли OpenGL другой монитор и использует общий размер двух мониторов?

+0

OpenGL разговаривает с GPU, вы избегаете его разговоров со всеми GPU? http://www.rchoetzlein.com/theory/2010/multi-monitor-rendering-in-opengl/ –

+0

Попробуйте систему эквалайзера. –

ответ

5

Это не OpenGL, который ограничивает размер окна, это GLUT.

Вы должны найти способ изменить способ создания GLUT и создать окно. В Windows, кажется, вы можете use win32 API to change these settings во время выполнения.

+0

Это хороший источник, но я использую X-окно в Linux. –

+1

@YanLi: Тогда ваш диспетчер окон может быть виновником, который не позволяет окну охватывать два экрана. Вам нужно будет использовать свойства подсказки окна XRandR и/или Xinerama, чтобы сообщить WM, что окно должно охватывать два монитора. Опять же, это не проблема OpenGL, а одна из используемой структуры. И я сожалею, что сломал это вам, но GLUT не может этого сделать (пока). Так что либо взломайте FreeGLUT, либо создайте собственную инфраструктуру, либо используйте что-то, что может иметь дело с мультимонитором (например, Qt). – datenwolf

+0

@ datenwolf ОК, мне кажется, мне нужно изучить программирование окон X. Не могли бы вы порекомендовать какие-нибудь хорошие книги или веб-учебники, чтобы узнать это? –

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