Zum Inhalt springen

Open Graphics Library for Embedded Systems

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 15. Dezember 2006 um 16:37 Uhr durch Mod42 (Diskussion | Beiträge) (AZ: Die Seite wurde neu angelegt.). Sie kann sich erheblich von der aktuellen Version unterscheiden.
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
OpenGLES

Basisdaten

Entwickler Khronos Group
Erscheinungsjahr 28. Juli 2003
Aktuelle Version 1.1 & 2.0
Betriebssystem plattformunabhängig
Programmier­sprache GLSL ES
Kategorie API
Lizenz verschieden
khronos.org

OpenGLES (Open Graphics Library for Embedded Systems) ist eine Spezifikation für ein plattform- und programmiersprachenunabhängiges API (Application Programming Interface) zur Entwicklung von 3D-Computergrafik. Die Spezifikation beschreibt eine Untermenge der OpenGL Spezifikation welche sich besonders für den Einsatz im Berreich von eingebetteten Systemen eignet.

Versionen

OpenGLES wird, im Gegensatz zu OpenGL, in zwei seperaten Zweigen spezifiziert. Der Zweig 1.x definiert eine Schnittstelle zu nicht programmierbarer Hardware bzw. zu reinem Softwarerendering. Der 2.x Zweig setzt komplett auf programmierbare Grafikchips zur Beschleunigung.

  • OpenGLES 1.0
    • Gegen OpenGL 1.3 spezifiziert
  • OpenGLES 1.1
    • Gegen OpenGL 1.5 spezifiziert
    • Erleichtert hardwarebeschleunigung
    • Rückwärtskompatibel zur Version 1.0
  • OpenGLES 2.0
    • Gegen OpenGL 2.0 spezifiziert
    • Nicht rückwärtskompatibel
    • Nur programmierbare Hardware mit Vertex- und Fragmentshadern wird unterstützt

Unterschiede zu OpenGL

Der wohl wichtigste Unterschied zu OpenGL besteht im Wegfall der glBegin()/glEnd() Funktionen. Dadurch müssen immer Arrays an OpenGLES übergeben werden welche dann zum Zeichnen verwendet werden. Weiterhin wird der Datentyp double nicht mehr unterstützt. Funktionen die in OpenGL nur mit double als Argument vorhanden waren wurden durch entsprechende Funktionen mit float Parametern ersetzt. Im 1.x Zweig sind weiterhin zwei Profile, Common und Common Lite, definiert. Ist nur das Common Lite Profil implementiert sind auch sämtliche Floating Point Typen nicht mehr vorhanden. Als einziger nicht Ganzzahltyp kommt ein 16.16 Fixpunktformat zum Einsatz. Da Fixpunktfunktionen in OpenGL nicht vorhanden sind ist eine Emulation von ES auf dem PC nicht ohne weiteres möglich.

Implementierungen

Diverse Firmen haben OpenGLES auf vielen verschiedenen Hard- und Software Platformen implementieret. Dabei reicht die Spannweite von Mobiltelefonen über PDAs bis hin zum PC wobei die dortigen Implementierungen mehr der Softwareentwicklung als der eigentlichen Anwendung diehnen.