<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=OpenGL_ES_Shading_Language</id>
	<title>OpenGL ES Shading Language - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=OpenGL_ES_Shading_Language"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=OpenGL_ES_Shading_Language&amp;action=history"/>
	<updated>2026-05-20T17:15:20Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=OpenGL_ES_Shading_Language&amp;diff=2798717&amp;oldid=prev</id>
		<title>imported&gt;Oialand: /* growthexperiments-addlink-summary-summary:1|0|0 */</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=OpenGL_ES_Shading_Language&amp;diff=2798717&amp;oldid=prev"/>
		<updated>2025-06-23T08:18:28Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;growthexperiments-addlink-summary-summary:1|0|0&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox Programmiersprache&lt;br /&gt;
|Logo = &lt;br /&gt;
|Beschreibung = OpenGL ES Shading Language&lt;br /&gt;
|Erscheinungsjahr = 2009&lt;br /&gt;
|Entwickler = [[Khronos Group]]&lt;br /&gt;
|AktuelleVersion = 3.20&lt;br /&gt;
|AktuelleVersionFreigabeDatum = 6. August 2015&lt;br /&gt;
|Website = [http://www.khronos.org/opengles/ www.khronos.org/opengles/]&lt;br /&gt;
|Beeinflusst_von = [[OpenGL Shading Language]] und [[C (Programmiersprache)|C]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Die &amp;#039;&amp;#039;&amp;#039;OpenGL ES Shading Language&amp;#039;&amp;#039;&amp;#039; (kurz: &amp;#039;&amp;#039;GLSL ES&amp;#039;&amp;#039;) ist eine [[Programmiersprache]], mit der programmierbare Einheiten eines [[Grafikprozessor]]s, sogenannte [[Shader]], erstellt werden. Diese Shader werden kompiliert, miteinander zu einem fertigen Programm verbunden und mittels [[OpenGL ES]] auf eingebetteten Systemen ausgeführt.&lt;br /&gt;
&lt;br /&gt;
== Sprachmerkmale ==&lt;br /&gt;
GLSL ES basiert auf der [[OpenGL Shading Language]] (GLSL) und ist als solches auch eine [[C (Programmiersprache)|C]]-ähnliche Programmiersprache. Im Gegensatz zu GLSL gibt es in der aktuellen Version von GLSL ES weniger Texture-Datentypen (Sampler) und bietet wesentlich weniger eingebaute Variablen und Funktionen an. Darüber hinaus kann allerdings mittels Precision-Qualifier die minimale Reichweite und Genauigkeit eines Gleitkomma- oder Ganzzahl-Datentyps bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
Ein Beispiel eines einfachen GLSL-ES-Programms aus einem Vertex- und einem Fragment-Shader; das Programm zeichnet Objekte in einer zuvor definierten Farbe:&lt;br /&gt;
&lt;br /&gt;
=== Vertex-Shader ===&lt;br /&gt;
Dieser [[Vertex-Shader]] positioniert den Vertex (&amp;lt;code&amp;gt;a_vertex&amp;lt;/code&amp;gt;) mithilfe der Matrix &amp;lt;code&amp;gt;modelViewProjectionMatrix&amp;lt;/code&amp;gt; relativ zur Kamera im Raum und übergibt die von der OpenGL ES-API übergebene Farbe (a_color) weiter an den Fragment-Shader.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;glsl&amp;quot;&amp;gt;&lt;br /&gt;
uniform mat4 modelViewProjectionMatrix;&lt;br /&gt;
attribute vec4 a_vertex;&lt;br /&gt;
attribute vec4 a_color;&lt;br /&gt;
varying vec4 v_color;&lt;br /&gt;
&lt;br /&gt;
void main()&lt;br /&gt;
{&lt;br /&gt;
  v_color = a_color;&lt;br /&gt;
  gl_Position = modelViewProjectionMatrix * a_vertex;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dasselbe Beispiel in Version 3.00:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;glsl&amp;quot;&amp;gt;&lt;br /&gt;
#version 300 es&lt;br /&gt;
uniform mat4 modelViewProjectionMatrix;&lt;br /&gt;
layout (location = 0) in vec4 a_vertex;&lt;br /&gt;
layout (location = 1) in vec4 a_color;&lt;br /&gt;
out vec4 v_color;&lt;br /&gt;
&lt;br /&gt;
void main()&lt;br /&gt;
{&lt;br /&gt;
  v_color = a_color;&lt;br /&gt;
  gl_Position = modelViewProjectionMatrix * a_vertex;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fragment-Shader ===&lt;br /&gt;
Dieser Fragment-Shader setzt die Zeichenfarbe des Fragments auf die vom Vertex-Shader übergebene Farbe.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;glsl&amp;quot;&amp;gt;&lt;br /&gt;
precision mediump float;&lt;br /&gt;
varying vec4 v_color;&lt;br /&gt;
&lt;br /&gt;
void main()&lt;br /&gt;
{&lt;br /&gt;
  gl_FragColor = v_color;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dasselbe Beispiel in Version 3.00&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;glsl&amp;quot;&amp;gt;&lt;br /&gt;
#version 300 es&lt;br /&gt;
precision mediump float;&lt;br /&gt;
in vec4 v_color;&lt;br /&gt;
out vec4 my_fragcolor;&lt;br /&gt;
&lt;br /&gt;
void main()&lt;br /&gt;
{&lt;br /&gt;
  my_fragcolor = v_color;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Versionsgeschichte ==&lt;br /&gt;
&lt;br /&gt;
{{Version|t|zeige=10100}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe5&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
!style=&amp;quot;min-width:10em;&amp;quot;| Veröffentlichung&lt;br /&gt;
! Beschreibung / Änderungen&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.00}}&lt;br /&gt;
| 12. Mai 2009&lt;br /&gt;
|&lt;br /&gt;
* OpenGL ES 2.0&lt;br /&gt;
* erste Veröffentlichung&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|3.00}}&lt;br /&gt;
| 11. Juli 2012&lt;br /&gt;
|&lt;br /&gt;
* OpenGL ES 3.0&lt;br /&gt;
* Mehrfachauswahl&lt;br /&gt;
* Nichtquadratische Matrizen&lt;br /&gt;
* Schwerpunkts-basierte Interpolation und Nicht-Interpolation zwischen Vertex- und Fragment-Shader&lt;br /&gt;
* Matrix-Funktionen&lt;br /&gt;
* Derivativ-Funktionen&lt;br /&gt;
* Ganzzahlige Textur-Datentypen&lt;br /&gt;
* Vorzeichenlose Ganzzahl-, Vektor- und Textur-Datentypen&lt;br /&gt;
* hyperbolische Winkel-Funktionen&lt;br /&gt;
* abscheiden und runden von Gleitkommazahlen&lt;br /&gt;
* Format-Layout für Variablen-Deklaration&lt;br /&gt;
* Konvertierung zwischen Ganzzahlen und Gleitkommazahlen mit Beibehaltung der Bit-Level-Darstellung&lt;br /&gt;
* Packen und Entpacken von Zahlen&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|3.10}}&lt;br /&gt;
| 17. März 2014&lt;br /&gt;
|&lt;br /&gt;
* OpenGL ES 3.1&lt;br /&gt;
* Compute-Shader&lt;br /&gt;
* Shader-Speicherpuffer-Objekte&lt;br /&gt;
* Arrays von Arrays&lt;br /&gt;
* Atomic-Counter&lt;br /&gt;
* Images&lt;br /&gt;
* Separate Programm-Objekte (auch bekannt als separate Shader-Objekte)&lt;br /&gt;
* Explizite Uniform-Locations&lt;br /&gt;
* Texture-Gather&lt;br /&gt;
* Bitfield-Operationen&lt;br /&gt;
* Integer-Mix-Funktionen&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|c|3.20}}&lt;br /&gt;
| 6. August 2015&lt;br /&gt;
|&lt;br /&gt;
* OpenGL ES 3.2&lt;br /&gt;
* Geometry-Shader&lt;br /&gt;
* Tessellation-Control-Shader&lt;br /&gt;
* Tessellation-Evaluation-Shader&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.khronos.org/registry/gles/specs/2.0/GLSL_ES_Specification_1.0.17.pdf GLSL-ES-Specification Version 1.00 (12. Mai 2009).] (PDF; 619 kB)&lt;br /&gt;
* [http://www.khronos.org/registry/gles/specs/3.0/GLSL_ES_Specification_3.00.4.pdf GLSL-ES-Specification Version 3.00 (6. März 2013).] (PDF; 750 kB)&lt;br /&gt;
* [http://www.khronos.org/registry/gles/specs/3.1/GLSL_ES_Specification_3.10.pdf GLSL-ES-Specification Version 3.10 (17. März 2014).] (PDF; 891 kB)&lt;br /&gt;
* [http://www.khronos.org/registry/gles/specs/3.2/GLSL_ES_Specification_3.20.pdf GLSL-ES-Specification Version 3.20 (6. August 2015).] (PDF; 1,16 MB)&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Opengl Es Shading Language}}&lt;br /&gt;
[[Kategorie:Bildsynthese]]&lt;br /&gt;
[[Kategorie:Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Oialand</name></author>
	</entry>
</feed>