<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>https://wiki.delphigl.com/index.php?action=history&amp;feed=atom&amp;title=Normalmap</id>
		<title>Normalmap - Versionsgeschichte</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.delphigl.com/index.php?action=history&amp;feed=atom&amp;title=Normalmap"/>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Normalmap&amp;action=history"/>
		<updated>2026-04-29T12:50:30Z</updated>
		<subtitle>Versionsgeschichte dieser Seite in DGL Wiki</subtitle>
		<generator>MediaWiki 1.27.4</generator>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Normalmap&amp;diff=24592&amp;oldid=prev</id>
		<title>Flash: /* Grundprinzip */</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Normalmap&amp;diff=24592&amp;oldid=prev"/>
				<updated>2010-01-12T20:44:18Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Grundprinzip&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='de'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Version vom 12. Januar 2010, 20:44 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l3&quot; &gt;Zeile 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Grundprinzip==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Grundprinzip==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Will man Farbige Flächen erreichen kann man mit Hilfe von [[glColor]] jedem Vertex eine Farbe geben. Diese wird dann, je nach eingestelltem [[Shading]], noch interpoliert. Das Ergebnis ist aber verhältnismäßig detailarm.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Will man Farbige Flächen erreichen kann man mit Hilfe von [[glColor]] jedem Vertex eine Farbe geben. Diese wird dann, je nach eingestelltem [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Flat_Shading|&lt;/ins&gt;Shading]], noch interpoliert. Das Ergebnis ist aber verhältnismäßig detailarm.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Beim normalen Texturieren von Flächen erzeugt man einen hohen grafischen Detailgrad indem man, verhältnismäßig einfach gestaltete Flächen, mit einem Bild &amp;quot;bespannt&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Beim normalen Texturieren von Flächen erzeugt man einen hohen grafischen Detailgrad indem man, verhältnismäßig einfach gestaltete Flächen, mit einem Bild &amp;quot;bespannt&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Flash</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Normalmap&amp;diff=24590&amp;oldid=prev</id>
		<title>Flash: Neuer Artikel</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Normalmap&amp;diff=24590&amp;oldid=prev"/>
				<updated>2010-01-12T20:41:47Z</updated>
		
		<summary type="html">&lt;p&gt;Neuer Artikel&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Bildwunsch|Einen Satz Beispielbilder für die 3D Version wie für die 2D Version wäre cool}}&lt;br /&gt;
Eine Normalmap ist eine spezielle [[Textur]] bzw. eine Textur deren inhalt nicht als Farbe sondern als [[Normale]] interpretiert wird.&lt;br /&gt;
&lt;br /&gt;
==Grundprinzip==&lt;br /&gt;
Will man Farbige Flächen erreichen kann man mit Hilfe von [[glColor]] jedem Vertex eine Farbe geben. Diese wird dann, je nach eingestelltem [[Shading]], noch interpoliert. Das Ergebnis ist aber verhältnismäßig detailarm.&lt;br /&gt;
&lt;br /&gt;
Beim normalen Texturieren von Flächen erzeugt man einen hohen grafischen Detailgrad indem man, verhältnismäßig einfach gestaltete Flächen, mit einem Bild &amp;quot;bespannt&amp;quot;.&lt;br /&gt;
So kann man z.B. auf einem Viereck (4 [[Vertex|Vertices]]) ein detailliertes Bild anzeigen.&lt;br /&gt;
&lt;br /&gt;
So wie Texturen einen höheren Farbdetailgrad erzeugen, so erzeugen Normalmaps einen höheren Detailgrad für die Normalen einer Fläche.&lt;br /&gt;
Normalen werden mit [[glNormal]], vergleichbar wie das oben genannte glColor, spezifiziert. Über die Fläche hinweg werden die Normalen ebenso wie die Farben bei Smooth-Shading, linear interpolliert.&lt;br /&gt;
Eine Normalmap enhält in den 3 Farbkanälen keine Farbwerte, sondern die Komponenten der Normale. Der RGB-Wert (1,0,0) wird also nicht als &amp;quot;ROT&amp;quot; interpretiert, sondern als &amp;quot;Vector der Länge 1 in X Richtung&amp;quot;. RGB wird so quasi zu XYZ-Koordinaten.&lt;br /&gt;
&lt;br /&gt;
===Wozu braucht man Normalmaps===&lt;br /&gt;
Die Hauptanwendung von Normalmaps liegt in der Beleuchtungsberechnung.&lt;br /&gt;
Der Helligkeitseindruck eines Punktes einer Fläche ist bestimmt durch die Materialeigenschaften (siehe [[glMaterial]]) der Fläche, der Entfernung zur Lichtquelle und der Lage der Fläche im Raum.&lt;br /&gt;
Die Lage im Raum wird für die Lichtberechnung durch die Normale angegeben (diese steht immer senkrecht auf der Fläche).&lt;br /&gt;
&lt;br /&gt;
So wie man nun mit Texturen die Farbe für Teile der Fläche anders festlegen kann, kann man mit Normalmaps die eine andere Lage &amp;quot;simulieren&amp;quot;. Simulieren deshalb, weil die Teile der Fläche sich nicht aus der Fläche herausbewegt haben. Sie wirken nur durch die Lichtberechnung anders ausgerichtet. Dies sieht man vor Allem an den Rändern der Flächen. Hier liegt auch der Unterschied zum [[Displacementmapping]]&lt;br /&gt;
&lt;br /&gt;
[[Bumpmapping]] nennt man diesen Effekt.&lt;br /&gt;
&lt;br /&gt;
==2D Bumpmapping==&lt;br /&gt;
2D Bumpmapping entspricht dem zuvor beschriebenen Verfahren. Ein Beispiel zeigt die Wirkung. Mehr Details findet man im Bumpmapping-Artikel.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{|border=0&lt;br /&gt;
|[[Bild:Tutorial_BM_bump_02.jpg|framed|Normale Textur]] || [[Bild:Tutorial_BM_bump_04.jpg|framed|RGB Normalmap (bump_out.tga)]]&lt;br /&gt;
|}&amp;lt;/center&amp;gt;&lt;br /&gt;
[[Bild:Tutorial_BM_bump_01.jpg|framed|center|Dieses Einfache Quadrat wurde aus einer normalen Textur und einer Normalmap gerendert]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3D Bumpmapping==&lt;br /&gt;
Beim 3D Bummapping müssen die Informationen über die Normalen für ein komplettes 3D Objekt vorliegen. Die Idee 3D Texturen zu verwenden liegt nahe und würde sicherlich qualitativ hochwertige Ausgaben liefern. Allerdings wäre eine echte kubische 3D Textur zu speicherintensiv.&lt;br /&gt;
Es reicht aus, wenn man 6 2D Texturen (eine pro Richtung) verwendet und dann die selbe Technik anwendet, wie man sie zur Erzeugung von Spiegelungen kennt: sogenannte [[Cubemap]]s.&lt;br /&gt;
&lt;br /&gt;
==Siehe Auch==&lt;br /&gt;
[[Bumpmap]]&lt;br /&gt;
[[Cubemap]]&lt;br /&gt;
[[Tutorial_BumpMap]]&lt;/div&gt;</summary>
		<author><name>Flash</name></author>	</entry>

	</feed>