Au moins sur la plupart des systèmes (par exemple, Windows, MacOS), le système de fenêtrage crée un bureau virtuel, avec différents moniteurs mappés à différentes parties du bureau. Si vous le souhaitez, vous pouvez (par exemple) créer une grande fenêtre qui couvrira les trois écrans. Si vous définissez cette fenêtre pour utiliser OpenGL, presque tout ce qui utilise OpenGL (y compris certainement Ogre3D) fonctionnera très bien, bien que dans certains cas produire une telle résolution de sortie peut taxer la carte graphique au point que c'est un peu plus lent que d'habitude .
Si vous voulez traiter une fenêtre séparée sur chaque affichage, les choses peuvent être un peu plus complexes. OpenGL lui-même ne définit pas comment gérer l'affichage dans plusieurs fenêtres (même s'il tente de le faire) - cela dépend d'un ensemble de fonctions spécifiques à une plate-forme. Sous Windows, par exemple, vous avez un contexte de rendu pour chaque fenêtre, et vous devez utiliser WGLMakeCurrent
pour choisir le contexte de rendu dans lequel vous dessinez à un moment donné.
Si la mémoire est bonne, le port Windows de Ogre3D prend en charge plusieurs contextes de rendu, ce qui ne devrait pas poser de problème non plus. Je m'attendrais à ce qu'il puisse fonctionner avec plusieurs fenêtres sur d'autres systèmes, mais je ne l'ai pas utilisé sur d'autres systèmes, donc je ne peux pas le dire avec certitude.
Je pense tout de suite que le support du triple moniteur sera presque sans conséquence sur l'effort global de développement. Bien sûr, cela signifie que vous (pouvez dire à votre patron) besoin d'une configuration triple moniteur pour le développement et les tests, ce qui n'est certainement pas une mauvaise chose! :-)
Modifier: OpenGL lui-même ne spécifie rien sur les fenêtres plein écran par rapport aux fenêtres normales. Si la mémoire sert, au moins sur Windows pour obtenir une application en plein écran, vous utilisez ChangeDisplaySettings
avec CDS_FULLSCREEEN
. Après cela, il traite essentiellement le bureau virtuel entier comme une seule fenêtre. Je ne me souviens pas d'avoir fait cela avec plusieurs moniteurs, donc je ne peux pas en dire beaucoup avec une grande certitude.
Bonjour Jerry, merci de votre réponse. Ce n'est pas nécessairement une fenêtre séparée pour chaque affichage, car il doit être en plein écran sur chaque affichage (je ne suis pas sûr si ce type de sortie dépend d'une fenêtre ou contourne le système de fenêtrage). Quel est ton opinion? – user16120
Même chose pour LINUX: si vous utilisez plusieurs moniteurs, vous utilisez généralement Xinerama, ce qui crée un énorme écran virtuel. – Tilo