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…

MDA®

E-Book MDA®
Effektives Software-Engineering mit UML2® und Eclipse? Format: PDF

Dieses Buch liefert sowohl die theoretischen Grundlagen als auch das praktische Handwerkszeug zur Anwendung der Model-Driven-Architecture der OMG. Nach einer Definition und der Einordnung des…

Social Development mit .NET

E-Book Social Development mit .NET
Format: PDF

Wenn Sie einen Weg suchen, wie Sie Ihre zukünftigen .NET Anwendungen auf einfache Art und Weise einer Vielzahl von Benutzern zur Verfügung stellen können, dann sind Sie im Bereich der sozialen…

VirtueMart - Der Joomla!-Shop

E-Book VirtueMart - Der Joomla!-Shop
Der erfolgreiche E-Commerce-Start mit Joomla! und VirtueMart Format: PDF

VirtueMart erweitert das freie Content-Management-System Joomla! um ein leistungsfähiges, stabiles und sicheres Shopsystem. Dieses Buch zeigt Ihnen, wie Sie mit VirtueMart in wenigen Schritten einen…

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…

Android

E-Book Android
Anwendungen für das Handy-Betriebssystem erfolgreich programmieren Format: PDF

ANDROID AUF DEM VORMARSCH Erfahren Sie von Programmierexperten, wie Sie professionelle Anwendungen mit Android entwickeln. Lernen Sie die Erfolgsfaktoren für die Vermarktung Ihrer…

Weitere Zeitschriften

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 ...

Burgen und Schlösser

Burgen und Schlösser

aktuelle Berichte zum Thema Burgen, Schlösser, Wehrbauten, Forschungsergebnisse zur Bau- und Kunstgeschichte, Denkmalpflege und Denkmalschutz Seit ihrer Gründung 1899 gibt die Deutsche ...

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 ...

Deutsche Hockey Zeitung

Deutsche Hockey Zeitung

Informiert über das internationale, nationale und internationale Hockey. Die Deutsche Hockeyzeitung ist Ihr kompetenter Partner für Ihr Wirken im Hockeymarkt. Sie ist die einzige ...

die horen

die horen

Zeitschrift für Literatur, Kunst und Kritik."...weil sie mit großer Aufmerksamkeit die internationale Literatur beobachtet und vorstellt; weil sie in der deutschen Literatur nicht nur das Neueste ...