<?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=glActiveStencilFaceEXT</id>
		<title>glActiveStencilFaceEXT - Versionsgeschichte</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.delphigl.com/index.php?action=history&amp;feed=atom&amp;title=glActiveStencilFaceEXT"/>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glActiveStencilFaceEXT&amp;action=history"/>
		<updated>2026-04-21T13:54:05Z</updated>
		<subtitle>Versionsgeschichte dieser Seite in DGL Wiki</subtitle>
		<generator>MediaWiki 1.27.4</generator>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glActiveStencilFaceEXT&amp;diff=24323&amp;oldid=prev</id>
		<title>Dj3hut1: /* Siehe auch */</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glActiveStencilFaceEXT&amp;diff=24323&amp;oldid=prev"/>
				<updated>2009-11-10T17:31:11Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Siehe auch&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 10. November 2009, 17:31 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-l74&quot; &gt;Zeile 74:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 74:&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;== Siehe auch ==&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;== Siehe auch ==&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;[[glStencilFunc]], [[glStencilFuncSeparate]], [[glStencilMask]],&amp;#160; [[glStencilMaskSeparate]], [[glStencilOp]]&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;[[glStencilFunc]], [[glStencilFuncSeparate]], [[glStencilMask]],&amp;#160; [[glStencilMaskSeparate]], [[glStencilOp&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;]], [[glStencilOpSeparate&lt;/ins&gt;]]&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;/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;/table&gt;</summary>
		<author><name>Dj3hut1</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glActiveStencilFaceEXT&amp;diff=24321&amp;oldid=prev</id>
		<title>Dj3hut1: /* Zugehörige Wertrückgaben */</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glActiveStencilFaceEXT&amp;diff=24321&amp;oldid=prev"/>
				<updated>2009-11-10T17:11:56Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Zugehörige Wertrückgaben&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 10. November 2009, 17:11 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-l71&quot; &gt;Zeile 71:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 71:&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;== Zugehörige Wertrückgaben ==&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;== Zugehörige Wertrückgaben ==&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;div&gt;[[glGet]] mit Token [[glGet#GL_ACTIVE_STENCIL_FACE_EXT|GL_ACTIVE_STENCIL_FACE_EXT]]&amp;lt;br&amp;gt;&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;[[glGet]] mit Token [[glGet#GL_ACTIVE_STENCIL_FACE_EXT|GL_ACTIVE_STENCIL_FACE_EXT]]&amp;lt;br&amp;gt;&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;[[glIsEnabled]] mit Token &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/del&gt;GL_STENCIL_TEST_TWO_SIDE_EXT&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/del&gt;&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;[[glIsEnabled]] mit Token &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[[glIsEnabled#&lt;/ins&gt;GL_STENCIL_TEST_TWO_SIDE_EXT&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;|GL_STENCIL_TEST_TWO_SIDE_EXT]]&lt;/ins&gt;&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;== Siehe auch ==&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;== Siehe auch ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Dj3hut1</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glActiveStencilFaceEXT&amp;diff=24318&amp;oldid=prev</id>
		<title>Dj3hut1: Neu erstellt</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glActiveStencilFaceEXT&amp;diff=24318&amp;oldid=prev"/>
				<updated>2009-11-10T17:04:02Z</updated>
		
		<summary type="html">&lt;p&gt;Neu erstellt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= glActiveStencilFaceEXT =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Name ==&lt;br /&gt;
'''glActiveStencilFaceEXT''' - Legt für zweiseitige [[Stenciltest]]s die aktive Seite fest.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
&lt;br /&gt;
 procedure '''glActiveStencilFaceEXT'''(''face'' : GLenum);&lt;br /&gt;
&lt;br /&gt;
== Parameter ==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; rules=&amp;quot;all&amp;quot;&lt;br /&gt;
! ''face'' &lt;br /&gt;
| Aktive Seite für zweiseitigen Stenciltest, entweder '''GL_BACK''' oder '''GL_FRONT'''.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Beschreibung ==&lt;br /&gt;
Setzt für zweiseite [[Stenciltest]]s die aktive Stencilseite, welche bestimmt ob Stencilbezogene Befehle den Stencilzustand der Vorder- oder der Rückseite aktualisieren.&lt;br /&gt;
Stencil-Befehle ([[glStencilFunc]], [[glStencilOp]] und [[glStencilMask]]), die den Stencilzustand aktualisieren, aktualisieren den vorderen Stencilzustand, falls die aktive Stencilseite '''GL_FRONT''' und den hinteren Stencilzustand, falls die aktive Stencilseite '''GL_BACK''' ist.&lt;br /&gt;
Zusätzlich geben Abfragen des Stencilzustands abhängig von der aktuell aktiven Stencilsteite den vorderen oder hinteren Stencilzustand zurück. &lt;br /&gt;
&lt;br /&gt;
Mit zweiseiten [[Stenciltest]]s erhält man möglicherweise eine bessere Performance für [[Volumetrische Stencilschatten|volumetrischen Stencilschatten]] und [[Constructive Solid Geometry]] (CSG)-Algorithmen, da nur noch einer statt zwei Renderpässen notwendig ist.&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
Die Funktion hat nur Auswirkungen, wenn der zweiseitige [[Stenciltest]] mithilfe von [[glEnable]] ( '''GL_STENCIL_TEST_TWO_SIDE_EXT''' ) aktiviert wurde.&lt;br /&gt;
&lt;br /&gt;
Initial ist '''GL_FRONT''' aktiv.&lt;br /&gt;
&lt;br /&gt;
Diese Funktion ( und die zugehörige Extension ) sollte möglichst nicht mehr ab OpenGL 2.0 verwendet werden, da dort bereits die Extension [[GL_ATI_separate_stencil]] integriert ist.&lt;br /&gt;
&lt;br /&gt;
== Fehlermeldungen ==&lt;br /&gt;
'''GL_INVALID_VALUE''' wird generiert, wenn ''face'' weder '''GL_BACK''' noch '''GL_FRONT''' ist.&lt;br /&gt;
&lt;br /&gt;
'''GL_INVALID_OPERATION''' wird generiert wenn '''glActiveStencilFuncEXT''' innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird.&lt;br /&gt;
&lt;br /&gt;
== Beispiele ==&lt;br /&gt;
=== Stencilschatten ===&lt;br /&gt;
Stencilschatten können mithilfe dieser Funktion und der Extension [[GL_EXT_stencil_wrap]] folgendermaßen in einem einzigen Pass gerendert werden :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
glDepthMask(0);&lt;br /&gt;
glColorMask(0,0,0,0);&lt;br /&gt;
glDisable(GL_CULL_FACE);&lt;br /&gt;
glEnable(GL_STENCIL_TEST);&lt;br /&gt;
glEnable(GL_STENCIL_TEST_TWO_SIDE_EXT);&lt;br /&gt;
&lt;br /&gt;
glActiveStencilFaceEXT(GL_BACK);&lt;br /&gt;
glStencilOp(GL_KEEP,            // stencil test fail&lt;br /&gt;
            GL_KEEP,            // depth test fail&lt;br /&gt;
            GL_DECR_WRAP_EXT);  // depth test pass&lt;br /&gt;
glStencilMask(~0);&lt;br /&gt;
glStencilFunc(GL_ALWAYS, 0, ~0);&lt;br /&gt;
&lt;br /&gt;
glActiveStencilFaceEXT(GL_FRONT);&lt;br /&gt;
glStencilOp(GL_KEEP,            // stencil test fail&lt;br /&gt;
            GL_KEEP,            // depth test fail&lt;br /&gt;
            GL_INCR_WRAP_EXT);  // depth test pass&lt;br /&gt;
glStencilMask(~0);&lt;br /&gt;
glStencilFunc(GL_ALWAYS, 0, ~0);&lt;br /&gt;
&lt;br /&gt;
renderShadowVolumePolygons();&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
== Zugehörige Wertrückgaben ==&lt;br /&gt;
[[glGet]] mit Token [[glGet#GL_ACTIVE_STENCIL_FACE_EXT|GL_ACTIVE_STENCIL_FACE_EXT]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[glIsEnabled]] mit Token '''GL_STENCIL_TEST_TWO_SIDE_EXT'''&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
[[glStencilFunc]], [[glStencilFuncSeparate]], [[glStencilMask]],  [[glStencilMaskSeparate]], [[glStencilOp]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Hintergrundwissen :''' [[Stencilbuffer]]&lt;br /&gt;
&lt;br /&gt;
'''Techniken :''' [[Volumetrische Stencilschatten]]&lt;br /&gt;
&lt;br /&gt;
'''Extension :''' [[GL_EXT_stencil_two_side]]&lt;br /&gt;
&lt;br /&gt;
[http://www.opengl.org/registry/specs/EXT/stencil_two_side.txt Englische Originalversion]  ( Copyright NVIDIA Corporation, 2001-2002. )&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:GL|ActiveStencilFaceEXT]]&lt;br /&gt;
[[Kategorie:GL1.3|ActiveStencilFaceEXT]]&lt;/div&gt;</summary>
		<author><name>Dj3hut1</name></author>	</entry>

	</feed>