Open Graphics Library for Embedded Systems

Open Graphics Library for Embedded Systems
OpenGL ES
Entwickler Khronos Group
Aktuelle Version 2.0
Betriebssystem plattformunabhängig
Kategorie Programmierschnittstelle
Lizenz verschieden
www.khronos.org/opengles

Open Graphics Library for Embedded Systems (kurz OpenGL ES geschrieben) ist eine Spezifikation für eine plattform- und sprachenunabhängige Programmierschnittstelle zur Entwicklung von 3D-Computergrafik. Die Spezifikation beschreibt eine vereinfachte Version der OpenGL-Spezifikation, welche sich besonders für den Einsatz im Bereich von eingebetteten Systemen eignet.

Inhaltsverzeichnis

Versionen

OpenGL ES wird, im Gegensatz zu OpenGL, in zwei separaten Zweigen spezifiziert. Der Zweig 1.x definiert eine Schnittstelle zu Hardware ohne Vertex- oder Fragmentshader. Der 2.x-Zweig definiert eine Schnittstelle für Grafikchips mit Shadern.

  • OpenGL ES 1.0
    • Gegen OpenGL 1.3 spezifiziert
  • OpenGL ES 1.1
    • Gegen OpenGL 1.5 spezifiziert
    • Erleichtert Hardwarebeschleunigung
    • Rückwärtskompatibel zur Version 1.0
  • OpenGL ES 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 OpenGL ES übergeben werden, welche dann zum Zeichnen verwendet werden. Diese Funktionen wurden auch bei OpenGL ab Version 3.0 entfernt. Weiterhin wird der Datentyp double nicht 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 Gleitkommatypen nicht mehr vorhanden. Als einziger nicht Ganzzahltyp kommt ein 16.16-Fixkommaformat zum Einsatz. Da Fixkommafunktionen in OpenGL nicht vorhanden sind, ist eine Emulation von OpenGL ES auf dem PC nicht ohne weiteres möglich.

Implementierungen

Diverse Firmen haben OpenGL ES auf vielen verschiedenen Hard- und Softwareplattformen implementiert. Dabei reicht die Spannweite von Mobiltelefonen über PDAs bis hin zum PC wobei die dortigen Implementierungen mehr der Softwareentwicklung als der eigentlichen Anwendung dienen. Die PlayStation 3 nutzt ebenfalls OpenGL ES. Zudem findet es bei vielen Smartphones Anwendung, zum Beispiel Samsungs Wave mit Bada-Betriebssystem, Apples iPhone, das N900 von Nokia und dem Android von Google. Außerdem gibt es OpenGL-ES-1.1/2.0-State-Tracker für Gallium3D.[1]

Weiterhin besitzen moderne Browser (z. B. Firefox ab Version 4) eine OpenGL-ES-Schnittstelle in Form von WebGL.

Einzelnachweise

  1. http://www.phoronix.com/scan.php?page=news_item&px=NzI3Mw

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Embedded system — Picture of the internals of an ADSL modem/router. A modern example of an embedded system. Labelled parts include a microprocessor (4), RAM (6), and flash memory (7). An embedded system is a computer system designed to do one or a few dedicated… …   Wikipedia

  • Graphics processing unit — GPU redirects here. For other uses, see GPU (disambiguation). GeForce 6600GT (NV43) GPU A graphics processing unit or GPU (also occasionally called visual processing unit or VPU) is a specialized circuit designed to rapidly manipulate and alter… …   Wikipedia

  • Open Programming Language — (OPL) Paradigm(s) imperative, structured, embedded Appeared in 1984 Designed by Psion Ltd Developer opl dev project Stable release …   Wikipedia

  • Open XML Paper Specification — (OpenXPS) Filename extension .oxps, .xps Internet media type application/oxps, application/vnd.ms xpsdocument Developed by Micro …   Wikipedia

  • Open Cobalt — Developer(s) Community source and Duke University Initial release 2009 Development …   Wikipedia

  • C standard library — The C Standard Library consists of a set of sections of the ANSI C standard in the programming language C. They describe a collection of headers and library routines used to implement common operations such as input/output[1] and string handling …   Wikipedia

  • List of file systems — The following lists identify, characterize and link to more thorough information on computer file systems.Many older operating systems support only their one native file system, which does not bear any name apart from the name of the operating… …   Wikipedia

  • List of free and open source software packages — This article is about software free to be modified and distributed. For examples of software free in the monetary sense, see List of freeware. This is a list of free and open source software packages: computer software licensed under free… …   Wikipedia

  • Comparison of vector graphics editors — A number of vector graphics editors for various platforms exist. Potential users of these editors will make a decision based on factors such as the availability for the user s platform, the feature set, usability of the user interface (UI) and… …   Wikipedia

  • List of open source software packages — This is a list of open source software packages: computer software licensed under an open source license. Software that fits the Free software definition may be more appropriately called free software; the GNU project in particular objects to… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”