OpenGL Spiele auf Windows und Linux?



  • Hallo,
    OpenGl wird ja von Windows und Linux unterstützt.
    Könnt ich dann ein Opengl Programm was in Linux entwickelt wurde auch einfach
    auf Windows Spielen? Wenn nicht was muss man da beachten?

    Grüsse



  • Cho++ schrieb:

    Könnt ich dann ein Opengl Programm was in Linux entwickelt wurde auch einfach
    auf Windows Spielen?

    Nein.

    Cho++ schrieb:

    Wenn nicht was muss man da beachten?

    Nun, erstmal musst du das Programm natürlich neu kompilieren. Die Binaries sind nicht zwischen Windows und Linux kompatibel.
    Dann unterstützen zwar beide Systeme OpenGL, aber um das zu nutzen brauchst du einen OpenGL-Kontext. (Fenster) Und wie man den erstellt, hängt vom Betriebssystem ab. Dazu kommen noch Audioausgabe und Tastatur/Maus Input. Wenn du das alles für alle Plattformen die du unterstützen willst implementiert hast (oder fertige Bibliotheken wie SFML genutzt hast), dann kannst du das Spiel entsprechend für diese Plattformen kompilieren.



  • Also muss ich dann beide Spiele also den für Windows + Linux einzelnd auf dem
    entsprechenden Betriebssystem compilieren. Liegt da ein grosser unterschied oder?
    Und noch kurz wegen dem Verstaendnis es gibt Xbox 360 Spiele die mit directx entwickelt wurden aber das gleiche spiel gibts auch für ps3. Haben die das ganze dann wieder mit OpenGl nochmal entwickelt?



  • Cho++ schrieb:

    Haben die das ganze dann wieder mit OpenGl nochmal entwickelt?

    Ja. (Also ich gehe mal davon aus, dass es für die PS3 keinen DX Port gibt oder so.)

    Aber es ist (war) auch durchaus üblich für ein Spiel einen Direct3D und einen OpenGL Renderer anzubieten, das kann man dann einfach in den Optionen umstellen. Je komplexer ein Spiel wird, desdo geringer wird der Teil des Programmcodes, der einfach nur Dreiecke auf den Bildschirm malt.



  • Die PS3 verwendet OpenGL ES, also würden normale PC Engines, die auf OpenGL basieren, darauf nicht laufen.



  • Mechanics schrieb:

    Die PS3 verwendet OpenGL ES, also würden normale PC Engines, die auf OpenGL basieren, darauf nicht laufen.

    OpenGL ES ist im großen und ganzen nichts anderes als ein abgespecktes OpenGL.
    Im Prinzip muß man zum Portieren nicht wesentlich mehr tun, als die reinen OpenGL Funktionen rausschmeißen die von OpenGL ES nicht abgedeckt werden.


Anmelden zum Antworten