Sie sind hier
E-Book

Shader mit GLSL: Eine Einführung in die OpenGL Shading Language

AutorHeiko Ihde
VerlagDiplomica Verlag GmbH
Erscheinungsjahr2009
Seitenanzahl160 Seiten
ISBN9783836629270
FormatPDF
Kopierschutzkein Kopierschutz/DRM
GerätePC/MAC/eReader/Tablet
Preis34,99 EUR
Seit es Computergrafik gibt, wird kontinuierlich versucht die Qualität der Darstellung bis hin zum absoluten Realismus zu steigern. Die Shader sind dabei ein wichtiges Hilfsmittel um realistischer scheinende Materialien in der Computergrafik zu erzeugen. Shader bieten dem Grafik-Programmierer eine vorher unerreichte Flexibilität. Die vorher starren Vorgaben der Grafikprozessoren können nun individuell an die eigenen Bedürfnisse angepasst werden.

Dieses Buch bietet einen schnellen Einstieg in die Highlevel Shading Sprachen. Anhand von Beispiel-Shadern in der OpenGL Shading Language (GLSL) werden die Grundsätze erklärt. Verschiedene Ansätze werden erläutert und mögliche Fehlerquellen werden aufgedeckt. Die Einbindung der entwickelten Shader in eigene OpenGL-Anwendungen wird geklärt.Zusätzlich wird eine Einführung in Textur-Erstellung und 3D-Modeling gegeben.

Kaufen Sie hier:

Horizontale Tabs

Leseprobe
Kapitel 4.3.6, Die Shader in GLSLDemo einbinden: Wer ohne den aufwändigen Weg über ein eigenes OpenGL Programm Shader schreiben und ausprobieren möchte, der kann diese auch in ein bestehendes Programm wie z.B. GLSLDemo von der Seite www.3dshaders.com einbinden. Nach der Installation von GLSLDemo sollten im Ordner des Programms die Ordner bin, shaders und textures vorhanden sein. Starten wir das Programm mit glsldemo.exe im Ordner bin müsste das Programm wie in der Abbildung aussehen. In der Seitenleiste sind bereits einige Shaderbeispiele vorhanden. Im Menü View/Uniform adjuster (oder über Tastatureingabe Alt+U) können wir ein Bedienfeld öffnen. Darin werden Schieberegler für die im Shader definierten uniform Variablen angezeigt. Mit diesen Reglern können wir die Werte der Variablen ändern. Hat die Änderung des Wertes ein visuelles Feedback zur Folge, können wir es im 3Dbereich der Anwendung sofort sehen.
Blick ins Buch
Inhaltsverzeichnis
1 Einleitung7
1.1 Begriffliche Voraussetzungen7
1.1.1 Shader8
1.1.2 Shader Objekt9
1.1.3 Shader Programm9
1.1.4 Fixed Functionality9
1.1.5 Vertex10
1.1.6 Edge11
1.1.7 Face11
1.1.8 Fragment11
1.1.9 Vertex Shader12
1.1.10 Geometry Shader12
1.1.11 Fragment Shader12
1.1.12 Object-Space13
1.1.13 Eye-Space14
1.1.14 Diffusemap / Colormap15
1.1.15 Alphamap / Transparencymap15
1.1.16 Bumpmap15
1.1.17 Heightmap / Displacementmap15
1.1.18 Normalmap16
1.1.19 Specularitymap / Reflectivitymap16
1.1.20 Luminositymap17
1.1.21 Environmentmap / Reflectionmap17
2 Gründe für Shader mit GLSL18
2.1 Über Shader18
2.2 Die Shadertypen18
2.3 Die High Level Shading Languages19
2.3.1 HLSL20
2.3.2 Cg21
2.3.3 GLSL22
3 Shader in OpenGL24
3.1 Die OpenGL Shading Language24
3.1.1 Unterschiede zwischen Vertex und Fragment Shader25
3.1.2 Unterschiede zu C/++25
3.1.3 Typecasting und Konstruktoren26
3.1.4 Neue Datentypen26
3.1.5 Zugriff auf Vektor-Komponenten27
3.1.6 Die attribute, uniform und varying Qualifiers27
3.2 Die OpenGL Shading Language API28
4 Vier Schritte zum eigenen Shader31
4.1 Die Objekte vorbereiten31
4.1.1 Vorbereiten in Blender31
4.1.2 Vorbereiten in OpenGL36
4.2 Die Texturen vorbereiten39
4.2.1 Diffusemap41
4.2.2 Alphamap47
4.2.3 Bumpmap50
4.2.4 Normalmap52
4.2.5 Huemap54
4.2.6 Lightnessmap / Brightnessmap59
4.2.7 Environmentmap60
4.2.8 Kanten entfernen66
4.2.9 CrazyBump67
4.3 Die Shader einbinden69
4.3.1 Shader erstellen und kompilieren70
4.3.2 Shader verwenden73
4.3.3 Werte übergeben74
4.3.4 Texturen übergeben75
4.3.5 Das Resultat77
4.3.6 Die Shader in GLSLDemo einbinden78
4.4 Die Shader programmieren81
4.4.1 Farbe82
4.4.2 Fragmente verwerfen84
4.4.3 Direktionales Licht85
4.4.4 Punktlicht90
4.4.5 Drei Punktlichter92
4.4.6 Drei Punktlichter (optimiert)94
4.4.7 Glanz97
4.4.8 Prozedurale Textur 2D100
4.4.9 Prozedurale Textur 3D104
4.4.10 Selektiv Fragmente verwerfen106
4.4.11 Prozedurale Textur 3D (optimiert)109
4.4.12 Einbinden von Textur-Maps114
4.4.13 Nebel116
4.4.14 Simulation der Fixed Functionality mit ShaderGen119
4.4.15 Mehrfarb-Lack120
4.4.16 Hue-Shifter122
4.4.17 Displacement127
4.4.18 Displacement Wasser130
5 Fazit und Aussicht134
6 Anhang 1: Literaturverzeichnis135
7 Anhang 2: Verwendete Software137
7.1 Programmierung137
7.2 Grafik137
7.3 Sonstiges138
8 Anhang 4: GLSL Kurz-Referenz139
8.1 Data types139
8.2 Data type qualifiers140
8.2.1 Global variable declarations140
8.2.2 Function parameters141
8.3 Vector components141
8.4 Preprocessor142
8.5 Vertex shader variables142
8.5.1 Special Output Variables142
8.5.2 Special input variables143
8.5.3 Varying outputs143
8.5.4 Attribute inputs143
8.6 Fragment shader variables143
8.6.1 Special Output Variables143
8.6.2 Special input variables144
8.6.3 Varying inputs144
8.7 Built-in constants144
8.8 Built-in uniforms144
8.9 Built-in functions147
8.9.1 Angle and Trigonometry Functions147
8.9.2 Exponential Functions148
8.9.3 Common Functions148
8.9.4 Geometric Functions149
8.9.5 Matrix Functions150
8.9.6 Vector Relational Functions150
8.9.7 Texture Lookup Functions151
8.9.8 Texture Lookup Functions with LOD156
8.9.9 Fragment Processing Functions158
8.9.10 Noise Functions158
9 Stichwortverzeichnis159

Weitere E-Books zum Thema: Web-Programmierung - Web-Applikationen

Usability Engineering in der Anwendungsentwicklung

E-Book Usability Engineering in der Anwendungsentwicklung
Systematische Integration zur Unterstützung einer nutzerorientierten Entwicklungsarbeit Format: PDF

Brigitte Eller zeigt, wie die sprachbasierte Vorgehensweise als interdisziplinäre 'Vermittlungsmethodologie' im Sinne eines Usability Engineering umgesetzt werden kann.Dr. Brigitte Eller promovierte…

ZEND Framework im Einsatz

E-Book ZEND Framework im Einsatz
Format: PDF

HOLEN SIE MEHR RAUS AUS PHP -Beschreibt die wesentlichen Komponenten des Zend Frameworks -Orientiert sich an wichtigen Techniken und Funktionen der PHP-Programmierung -Enthält zahlreiche…

Typo 3

E-Book Typo 3
Das Praxisbuch für Entwickler Format: PDF

Die hohe Flexibilität von Typo3 4.x hat ihren Preis: Nicht selten benötigen Webseitenentwickler Wochen oder gar Monate, um sich in das freie Content-Management-System einzuarbeiten. Der erfahrene IT-…

Speech Application SDK mit ASP.NET

E-Book Speech Application SDK mit ASP.NET
Design und Implementierung sprachgestützter Web-Applikationen Format: PDF

Das Speech Application SDK ermöglicht den Aufbau von sprachgestützten Web-Applikationen innerhalb des .NET-Frameworks. Im vorliegenden Buch wird die Implementierung entsprechender Programme anhand…

Typo 3

E-Book Typo 3
Das Praxisbuch für Entwickler Format: PDF

Die hohe Flexibilität von Typo3 4.x hat ihren Preis: Nicht selten benötigen Webseitenentwickler Wochen oder gar Monate, um sich in das freie Content-Management-System einzuarbeiten. Der erfahrene IT-…

PHP quick & dirty

E-Book PHP quick & dirty
12 Praxis-Workshops für schnelles Programmieren Format: PDF

12 Praxis-Workshops für schnelles Programmieren. Mit den richtigen Tipps und Tricks und Strategien für die effizente Entwicklung in PHP lassen sich auch unter Zeitdruck sauber und übersichtlich…

Java Web Services in der Praxis

E-Book Java Web Services in der Praxis
Realisierung einer SOA mit WSIT, Metro und Policies Format: PDF

Das Buch beschreibt den aktuellen Stand der Spezifikationen und Implementierungen in der Java-Web-Services-Welt sowie deren praktischen Einsatz. Dabei werden die APIs erläutert, und der Leser kann…

Weitere Zeitschriften

Augenblick mal

Augenblick mal

Die Zeitschrift mit den guten Nachrichten "Augenblick mal" ist eine Zeitschrift, die in aktuellen Berichten, Interviews und Reportagen die biblische Botschaft und den christlichen Glauben ...

AUTOCAD & Inventor Magazin

AUTOCAD & Inventor Magazin

FÜHREND - Das AUTOCAD & Inventor Magazin berichtet seinen Lesern seit 30 Jahren ausführlich über die Lösungsvielfalt der SoftwareLösungen des Herstellers Autodesk. Die Produkte gehören zu ...

BONSAI ART

BONSAI ART

Auflagenstärkste deutschsprachige Bonsai-Zeitschrift, basierend auf den renommiertesten Bonsai-Zeitschriften Japans mit vielen Beiträgen europäischer Gestalter. Wertvolle Informationen für ...

Das Hauseigentum

Das Hauseigentum

Das Hauseigentum. Organ des Landesverbandes Haus & Grund Brandenburg. Speziell für die neuen Bundesländer, mit regionalem Schwerpunkt Brandenburg. Systematische Grundlagenvermittlung, viele ...

DER PRAKTIKER

DER PRAKTIKER

Technische Fachzeitschrift aus der Praxis für die Praxis in allen Bereichen des Handwerks und der Industrie. “der praktiker“ ist die Fachzeitschrift für alle Bereiche der fügetechnischen ...

Dr. med. Mabuse

Dr. med. Mabuse

Zeitschrift für alle Gesundheitsberufe Seit über 40 Jahren sorgt die Zeitschrift Dr. med. Mabuse für einen anderen Blick auf die Gesundheits- und Sozialpolitik. Das Konzept einer Zeitschrift ...

Evangelische Theologie

Evangelische Theologie

 Über »Evangelische Theologie« In interdisziplinären Themenheften gibt die Evangelische Theologie entscheidende Impulse, die komplexe Einheit der Theologie wahrzunehmen. Neben den ...