Zumindest auf den meisten Systemen (z. B. Windows, MacOS) erstellt das Windowing-System einen virtuellen Desktop mit verschiedenen Monitoren, die verschiedenen Teilen des Desktops zugeordnet sind. Wenn Sie möchten, können Sie beispielsweise ein großes Fenster erstellen, das alle drei Anzeigen abdeckt. Wenn Sie dieses Fenster für die Verwendung von OpenGL verwenden, funktioniert fast alles, das OpenGL (fast sicher einschließlich Ogre3D) verwendet, gut, obwohl in einigen Fällen eine so hohe Ausgabeauflösung die Grafikkarte so viel kostet, dass sie etwas langsamer als gewöhnlich ist .
Wenn Sie mit einem separaten Fenster auf jedem Display arbeiten möchten, können die Dinge etwas komplexer sein. OpenGL selbst (nicht einmal versuchen) zu definieren, wie die Anzeige in mehreren Fenstern zu behandeln - das ist bis zu einer Plattform-spezifische Reihe von Funktionen. Unter Windows beispielsweise haben Sie für jedes Fenster einen Renderkontext und müssen WGLMakeCurrent
verwenden, um auszuwählen, zu welchem Renderingkontext Sie zu einem bestimmten Zeitpunkt zeichnen.
Wenn der Speicher dient, unterstützt der Windows-Port von Ogre3D mehrere Rendering-Kontexte, so dass dies auch kein Problem sein sollte. Ich würde erwarten, dass es auch auf anderen Systemen mit mehreren Fenstern funktionieren kann, aber ich habe es auf keinem anderen System verwendet, daher kann ich nicht mit Sicherheit sagen.
Meine unmittelbare Vermutung ist jedoch, dass die Unterstützung von drei Monitoren in Ihrer gesamten Entwicklungsbemühung nahezu belanglos sein wird. Natürlich, es bedeutet bedeutet, dass Sie (können Sie Ihren Chef sagen) brauchen eine dreifache Monitor-Setup für die Entwicklung und Prüfung, die sicherlich keine schlechte Sache ist! :-)
Edit: OpenGL selbst gibt nichts über Vollbild-Fenster im Vergleich zu normalen Fenstern. Wenn Speicher dient, zumindest unter Windows, um eine Vollbildanwendung zu erhalten, verwenden Sie ChangeDisplaySettings
mit CDS_FULLSCREEEN
. Danach behandelt es im Wesentlichen den gesamten virtuellen Desktop als ein einziges Fenster. Ich erinnere mich nicht, dass ich das mit mehreren Monitoren gemacht habe, daher kann ich nicht viel mit großer Sicherheit sagen.
Hallo Jerry, thak Sie für Ihre Antwort. Es ist nicht unbedingt ein separates Fenster für jede Anzeige, da es auf jeder Anzeige ein Vollbild sein muss (ich bin nicht sicher, ob diese Art von Ausgabe von einem Fenster abhängt oder das Fenstersystem umgeht). Was ist deine Meinung? – user16120
gilt auch für LINUX: Wenn Sie mehrere Monitore verwenden, verwenden Sie normalerweise Xinerama, das einen riesigen virtuellen Bildschirm erstellt. – Tilo