Al menos en la mayoría de los sistemas (por ejemplo, Windows, MacOS), el sistema de ventanas crea un escritorio virtual, con diferentes monitores asignados a diferentes partes del escritorio. Si lo desea, puede (por ejemplo) crear una ventana grande que cubra las tres pantallas. Si configura esa ventana para usar OpenGL, casi cualquier cosa que use OpenGL (casi seguro que incluye Ogre3D) funcionará bien, aunque en algunos casos producir tanta resolución de salida puede gravar la tarjeta gráfica al punto que es un poco más lenta de lo normal .
Si desea tratar con una ventana separada en cada pantalla, las cosas pueden ser un poco más complejas. OpenGL por sí mismo no (incluso intenta) definir cómo manejar la visualización en múltiples ventanas, eso depende de un conjunto de funciones específico de la plataforma. En Windows, por ejemplo, tiene un contexto de representación para cada ventana, y debe usar WGLMakeCurrent
para elegir el contexto de representación al que dibuja en un momento dado.
Si la memoria sirve, el puerto de Windows de Ogre3D admite múltiples contextos de representación, por lo que esto tampoco debería ser un problema. Espero que también funcione con múltiples ventanas en otros sistemas, pero no lo he usado en ningún otro sistema, así que no puedo decir con certeza.
Mi suposición inmediata, sin embargo, es que el soporte del monitor triple será casi intrascendente en su esfuerzo general de desarrollo. Por supuesto, significa significa que usted (puede decirle a su jefe) necesita una configuración de monitor triple para el desarrollo y las pruebas, que sin duda no es algo malo. :-)
Editar: OpenGL por sí solo no especifica nada acerca de las ventanas de pantalla completa frente a las ventanas normales. Si la memoria sirve, al menos en Windows para obtener una aplicación de pantalla completa, usa ChangeDisplaySettings
con CDS_FULLSCREEEN
. Después de eso, trata esencialmente todo el escritorio virtual como una sola ventana. No recuerdo haberlo hecho con múltiples monitores, así que no puedo decir mucho con gran certeza.
Hola Jerry, gracias por tu respuesta. No es necesariamente una ventana separada para cada pantalla, porque necesita estar en pantalla completa en cada pantalla (no estoy seguro de si este tipo de salida depende de una ventana o pasa por alto el sistema de ventanas). ¿Cuál es tu opinión? – user16120
lo mismo es cierto para LINUX: si está utilizando monitores múltiples, normalmente está usando Xinerama, que crea una gran pantalla virtual. – Tilo