<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>https://wiki.delphigl.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Luketheduke</id>
		<title>DGL Wiki - Benutzerbeiträge [de]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.delphigl.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Luketheduke"/>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php/Spezial:Beitr%C3%A4ge/Luketheduke"/>
		<updated>2026-05-25T09:36:13Z</updated>
		<subtitle>Benutzerbeiträge</subtitle>
		<generator>MediaWiki 1.27.4</generator>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Tutorial_Raytracing_-_Grundlagen_I&amp;diff=20057</id>
		<title>Tutorial Raytracing - Grundlagen I</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Tutorial_Raytracing_-_Grundlagen_I&amp;diff=20057"/>
				<updated>2006-12-25T16:41:13Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Die Griechische Vorstellung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Tutorial Raytracing - Grundlagen I =&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_teaser.jpg|center]]&lt;br /&gt;
== Einführung ==&lt;br /&gt;
Da melde ich mich mal wieder zurück mit einem kleinen Tutorial bezüglich Raytracing. Ihr sollt ja gelegentlich was neues lernen. Es ist zwar etwas schade, daß nur noch selten Tutorials aus der Community kommen - ich hoffe immernoch, daß sich das irgendwann wieder ändern wird. Und alle die bislang Tutorials geschrieben haben, mussten ja irgendwann ihr erstes schreiben - also nur Mut (mein allererstes war im Übrigen das 1. Tutorial aus der Terrain-Reihe). Nunja. Was hat es also mit dem Raytracing auf sich? Und warum heisst dieses Tutorial Grundlagen I? Ich will es euch erklären. Beim Raytracing verfolgt man im Gegensatz zum Rastern wie es etwa OpenGl oder Direct3D machen, einen anderen Ansatz. Statt Objekte oberflächlich in Polygone zu zerschneiden und sie dann auf den Bildschirm per Z-Buffer zu projezieren, wirft die Kamera Strahlen in die Szenerie und auf jedem Strahl prüft man, ob sich ein Objekt mit dem Strahl schneidet. Man verliert dadurch sehr deutlich Geschwindigkeit: die wenigsten Raytracer sind so schnell, dass man interaktiv damit arbeiten kann. Wozu also ist dann Raytracing gut? Man kann im Raytracer hoch realistisch wirkende Bilder erzeugen und auch Verfahren verwenden, die im Rasterizer nicht oder kaum nachzubauen sind - die gute alte Grafikkarte muss dabei nicht völlig unnütz werden: Diese besitzen sehr flotte und massiv parallele Geometrie-Einheiten, die auch im Raytracer Verwendung finden können - dies ist aber etwas zu speziell für unser kleines Tutorial und vielleicht auch nicht das, was man in seinem ersten Raytracer implementieren würde. Was sich im Bereich interaktiver Grafik allerdings anbietet, ist den Raytracer ein wenig umzumodeln und mit ihm statische Lightmaps erzeugen oder ihn zur Selection missbrauchen. Das einzige Problem welches wir dabei haben: Wir müssen alles von Grund auf zusammenbasteln - nicht so schön, wie bei OpenGl, wo man nach ein paar Stunden recht ansehnliche Bilder samt Beleuchtung zeichnen kann. Wir werden da wohl etwas länger brauchen, aber ewig wird es auch nicht dauern - und schliesslich musste OpenGl ja auch erst einmal designed werden. Andere Dinge werden sich dagegen deutlich leichter implementieren lassen als mit OpenGl, so sind etwa Schatten im Raytracer ein Kinderspiel - im Rasterizer können sie richtig arbeitsintensiv werden.&lt;br /&gt;
&lt;br /&gt;
== Die griechische Vorstellung ==&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_griechisch.jpg|right]]&lt;br /&gt;
Die Griechen hatten eine etwas sonderbare Vorstellung vom Sehen: Sie stellten sich vor, dass aus ihren Augen Strahlen kommen, die dann auf die Umgebung treffen und quasi Nachricht an das Auge geben, was sie getroffen haben, wie weit weg es ist und welche Farbe es hat. Das ist in etwa das was auch ein Raytracer macht. Wir wollen das erst einmal im Hinterkopf behalten und uns zunächst mit Strahlen genauer auseinandersetzen. Danach werden wir Kugeln mit diesen Strahlen schneiden und eine passende perspektivische Kamera entwerfen. Schließlich werden wir einen sehr einfachen Raytracer schreiben, und ihm anschließend noch Ebenen als Objekte näherbringen, weil Kugeln alleine doch etwas langweilig sind.&lt;br /&gt;
&lt;br /&gt;
== Strahlen ==&lt;br /&gt;
Was ist also ein Strahl? Ein Strahl hat einen Ursprung, an dem er beginnt, und eine Richung, in die er verläuft. Wer in der Schule in Geometrie aufgepasst hat, kennt dieses Objekt sicher auch noch als Halbgerade. Da wir später damit rechnen werden, müssen wir den Strahl in eine schöne Formel packen:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_strahlgleichung.png|center]]&lt;br /&gt;
Die Punkte auf unserem Strahl r sind also parametrisiert durch t, welches die&lt;br /&gt;
Zahlen von 0 bis unendlich durchläuft. Der Ursprung des Strahles ist o und seine&lt;br /&gt;
Richung d. Somit kennen wir alle Punkte auf dem Strahl. &lt;br /&gt;
&lt;br /&gt;
Um nun zu prüfen, ob ein Strahl nun ein Objekt trifft, beginnen wir bei t = 0 und laufen alle Punkte ab, bis wir bei t = unendlich angekommen ... ... ... Nein so machen wir das natürlich nicht - funktionieren würde es zwar, würde aber unendlich lange dauern: Nicht gerade das, was wir uns unter schnell vorstellen. &lt;br /&gt;
&lt;br /&gt;
Bevor wir weitermachen, sollten wir unseren Strahl gleich in&lt;br /&gt;
etwas Code verpacken, schließlich wollen wir uns ja einen Raytracer schreiben:&lt;br /&gt;
&amp;lt;cpp&amp;gt;public struct Ray&lt;br /&gt;
{&lt;br /&gt;
    public Vertex3 Origin;&lt;br /&gt;
    public Vertex3 Direction;&lt;br /&gt;
&lt;br /&gt;
    public Vertex3 Evaluate (double t)&lt;br /&gt;
    {&lt;br /&gt;
        return Origin + t * Direction;&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zurück zu unserem Problem: Wir müssten also unendlich lange darauf warten, bis unser Raytracer das Objekt gefunden hat, mit dem sich der momentan betrachtete Strahl schneidet. Viel schneller geht die Sache, wenn wir vorher beschließen, welche Objekte wir anzeigen können wollen. Für den Anfang wollen wir uns mit sehr einfachen Objekten begnügen: Kugeln. Sie sind schnell berechnet und werden für erste Experimente ausreichen.&lt;br /&gt;
&lt;br /&gt;
== Kugeln ==&lt;br /&gt;
Erinnerung: Eine Kugel ist definiert durch ihren Mittelpunkt und ihren Radius r. Setzt man den Mittelpunkt auf den Ursprung des Koordinatensystems, dann sind die Punkte auf der Oberfläche O unserer Kugel gerade die Punkte, die vom Ursprung den Abstand r haben. Die uns interessierende Bedingung wird so zu ||p|| = r für Punkte p auf O. Die Gleichung kann man schadlos quadrieren und statt der Vektorlänge ||p|| bekommt man das ohne Wurzel ziehen zu berechnende [[Standard Skalarprodukt|Skalarprodukt]] von p mit sich selbst:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_skalprodpp.png|center]]&lt;br /&gt;
Setzt man hierein die obige Gleichung für den Strahl, ergibt sich:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_radsqr.png|center]]&lt;br /&gt;
Und damit:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_radsqr2.png|center]]&lt;br /&gt;
Da die Richtung o und d unseres Strahls bekannt sind, haben wir eine quadratische Gleichung vor der Nase, die wir mittels Mitternachtsformel lösen können:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_mitternacht.png|center]]&lt;br /&gt;
Anhand der Diskriminante D, also dem Teil des obigen Ausdrucks, der unter der Wurzel steht, können wir entscheiden, ob der Strahl die Kugel trift. Ist nämlich D &amp;lt; 0, so kann man in den reelen Zahlen die Wurzel nicht berechnen. Ist D = 0, so gibt es genau eine Lösung der Schnittgleichung und für D &amp;gt; 0 schneidet der Strahl die Kugel genau 2 mal. Da wir unseren Strahl nur für positive Parameter t definiert haben, sollten wir die errechneten Schnittpunkte t&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; und t&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; noch daraufhin untersuchen:&lt;br /&gt;
&amp;lt;cpp&amp;gt;public double RayIntersect ( Ray ray )&lt;br /&gt;
{&lt;br /&gt;
    double boundingSquare = sphereRadius * sphereRadius ;&lt;br /&gt;
    ray.Origin -= Position;&lt;br /&gt;
    double a, b, c;&lt;br /&gt;
    a = ray.Direction.DotDot ;&lt;br /&gt;
    // DotDot ^= Skalarprod mit sichselbst : &amp;lt;d, d&amp;gt;&lt;br /&gt;
    b = 2 * ( ray.Origin * ray.Direction );&lt;br /&gt;
    // * ^= normales Skalarprod&lt;br /&gt;
    c = ray.Origin.DotDot - boundingSquare;&lt;br /&gt;
&lt;br /&gt;
    double t1 , t2 ;&lt;br /&gt;
    int roots = CalcQuadricRoots (a, b, c, out t1, out t2) ;&lt;br /&gt;
&lt;br /&gt;
    if (roots &amp;gt; 0)&lt;br /&gt;
        return t1 &amp;gt;= 0 ? t1 : t2 ;&lt;br /&gt;
        // kleinsterpositiver pos. Wert aus t1, t2&lt;br /&gt;
    else&lt;br /&gt;
        return -1; // Kein Schnittpunkt&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Einen kleinen Haken hat die Sache jedoch: Analytisch, d.h. per Stift und Papier, lässt sich mit der Mitternachtsformel wunderbar rechnen. Am Computer neigt sie zu Fehlern, was ganz allein an dem &amp;amp;plusmn; liegt. So führt man verlässlich eine Subtraktion durch, wenn D &amp;gt; 0 ist - und Subtraktionen sind reines Gift für die Genauigkeit bei numerischen Rechnungen. Durch kleine Umformungen und das Bestimmen eines Vorzeichens, können wir das Problem umgehen:&lt;br /&gt;
&lt;br /&gt;
== Quadratische Gleichungen ==&lt;br /&gt;
Hat man also eine Quadratische Gleichung in der allgemeinen Form:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_quadratisch.png|center]]&lt;br /&gt;
dann bestimmt man die Nullstellen am besten durch:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_quadratisch_numerisch.png|center]]&lt;br /&gt;
Bei der Auswertung von q wird so sicherlich echt addiert, weil zu b eine Zahl gleichen Vorzeichens summiert wird. Dass der Wert für t&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; stimmt, hat man dann auch sehr leicht nachgerechnet, wohingegen t&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; in wildes Rumgeschiebe der Formel ausartet und sich erst recht spät sign(b) herauswerfen lässt. Ich erspare euch nähere Erläuterungen ;-) Ein bischen Quellcode hierzu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;cpp&amp;gt;public static int CalcQuadricRoots(double a, double b, double c, out double x1, out double x2)&lt;br /&gt;
{&lt;br /&gt;
    double determinant = b * b - 4 * a * c;&lt;br /&gt;
    if (determinant &amp;lt; 0)&lt;br /&gt;
    {&lt;br /&gt;
        x1 = 0.0;&lt;br /&gt;
        x2 = 0.0;&lt;br /&gt;
        return 0;&lt;br /&gt;
    }&lt;br /&gt;
    determinant = Math.Sqrt(determinant);&lt;br /&gt;
    double q = -0.5 * (b + PSgn(b) * determinant);&lt;br /&gt;
    // Psgn: gives - 1 if b &amp;lt; 0 and 1 if b &amp;gt;= 0. &lt;br /&gt;
    // so no zero as normal sgn would give us.&lt;br /&gt;
    x1 = q / a;&lt;br /&gt;
    x2 = c / q;&lt;br /&gt;
    // Sort by value&lt;br /&gt;
    if (x1 &amp;gt; x2)&lt;br /&gt;
    {&lt;br /&gt;
        q = x2; x2 = x1; x1 = q;&lt;br /&gt;
    }&lt;br /&gt;
    return x1 == x2 ? 1 : 2;&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Die Funktion speichert die Nullstellen in den Variablen x1, x2 dem Wert nach sortiert ab und gibt die Anzahl der Nullstellen zurück.&lt;br /&gt;
Da wir jetzt bereits bestimmen können, wo und wie oft unser Strahl die Kugel trift, können wir, nachdem wir uns noch einen Strahlenwerfer, (also eine Kamera) konstruiert haben, unseren ersten Raytracer bauen.&lt;br /&gt;
&lt;br /&gt;
== Perspektivische Kamera ==&lt;br /&gt;
Jeder, der sich mit OpenGL auskennt, wird bei der Konstruktion einer perspektivischen Kamera gleich schreien, daß man dazu doch einfach nur eine Projektionsmatrix braucht, die man sich ganz einfach aus der OpenGL Spezifikation stibitzen kann. Falsch gedacht: Ein Raytracer ist kein Rasterizer: Wir brauchen keine Projektionsmatrizen, noch nicht einmal Matrizen. Die perspektivische Kamera eines Ray-Tracers lässt sich direkt nach vorn heraus entwerfen:&lt;br /&gt;
&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_perspektivisch.png|center]]&lt;br /&gt;
&lt;br /&gt;
Unrotiert und unverschoben soll unsere Kamera in die Tiefenrichtung z blicken. Dabei wird unser Bildschirm durch die Parameter links, rechts, oben und unten beschrieben. Ist die Auflösung des Bildschirms in X wie in Y-Richtung bekannt, so kann man leicht die Richtung d des Vektors bestimmen, der vom Betrachter auf den Bildschirm zeigt. Sofort bekommt man so einen Strahl, wenn man als Anfangspunkt o die Position des Betrachters wählt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;cpp&amp;gt;public Ray ShootRay ( int x , int y )&lt;br /&gt;
{&lt;br /&gt;
    Ray result = new Ray();&lt;br /&gt;
    result.Origin = Position;&lt;br /&gt;
&lt;br /&gt;
    double xpart , ypart ;&lt;br /&gt;
    xpart = ( ( double ) x ) / (double ) widthpixels;&lt;br /&gt;
    ypart = ( ( double ) y ) / (double ) heightpixels;&lt;br /&gt;
 &lt;br /&gt;
    xpart = left + xpart * ( right - left ) ;&lt;br /&gt;
    ypart = top + ypart * ( bottom - top ) ;&lt;br /&gt;
 &lt;br /&gt;
    result.Direction.x = xpart;&lt;br /&gt;
    result.Direction.y = ypart;&lt;br /&gt;
    result.Direction.z = 1.0;&lt;br /&gt;
&lt;br /&gt;
    /* if ( Transformation != null )&lt;br /&gt;
    {&lt;br /&gt;
        result.Direction =&lt;br /&gt;
        Transformation.Apply( result.Direction );&lt;br /&gt;
    } */&lt;br /&gt;
    result.Direction.Normalize();&lt;br /&gt;
    return result;&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Die auskommentierte if-Abfrage soll vorerst nicht stören. Ihr wird später leben eingehaucht, wenn wir dem Raytracer Verschiebungen,&lt;br /&gt;
Rotationen, Skalierungen, Scheerungen, u.s.w. einbauen.&lt;br /&gt;
&lt;br /&gt;
== Einfacher Raycaster ==&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_depthcasting.jpg|right]]&lt;br /&gt;
Damit sind wir dann auch schon soweit, daß wir unsere ersten Gehversuche in Sachen Raytracing wagen können. Für jedes Pixel im Bild werfen wir mittels ShootRay einen Strahl und prüfen, ob dieser die Kugeln in unserer Szene schneidet. Wenn ja, merken wir uns den nähestes dieser Schnittpunkte und weisen ihm einen Farbwert zu. So erhalten wir ein Bild, das in etwa die Informationen wieder gibt, die OpenGl in seinem Tiefenpuffer speichern würde. Ich gebe zu, das ist nicht hochgradig spannend, aber solange wir uns noch nicht eingehender mit Licht und Shading beschäftigt haben, können wir auch nicht mehr erwarten - und wir haben beim Raytracing ja leider das Problem, daß wir ganz von vorne anfangen müssen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;cpp&amp;gt;public RaytraceImage ( int width , int height )&lt;br /&gt;
{&lt;br /&gt;
    // near und far sind die Werte fuer den Bereich ,&lt;br /&gt;
    // von dem Tiefeninformationen abgebildet werden&lt;br /&gt;
    for ( int x = 0; x &amp;lt; width; x++) {&lt;br /&gt;
        for ( int y = 0 ; y &amp;lt; height; y++) {&lt;br /&gt;
            Ray shoot = ShootRay (x , y);&lt;br /&gt;
            double maxdist = double.Infinity;&lt;br /&gt;
            &lt;br /&gt;
            foreach (Kugel obj in SichtbareKugeln) {&lt;br /&gt;
                double hitdist = obj.RayIntersect(shoot) ;&lt;br /&gt;
                if (hitdist &amp;gt; 0 &amp;amp;&amp;amp; maxdist &amp;gt; hitdist)&lt;br /&gt;
                    maxdist = hitdist;&lt;br /&gt;
            }&lt;br /&gt;
            &lt;br /&gt;
            if (maxdist &amp;lt; double.Infinity) {&lt;br /&gt;
                SetColor(x, y, Colors.Gray (Math.Min(Math .Max(0,&lt;br /&gt;
                    (maxdist - near) / ( near - far ))), 1.0)) ;&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
                SetColor(x, y, BackgroundColor);   &lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Eine kleine Anmerkung noch: Da wir uns noch nicht über Transformationen Gedanken gemacht haben, und unsere Kugeln bislang am Nullpunkt aufgehäng sind, können wir diese noch nicht positionieren - sprich es wird höchstens die größte Kugel sichtbar, weil alle weiteren verdeckt sind. Das lässt sich beheben, indem man vor dem Test auf Schnitt vom Ursprung des entsprechenden Strahles, die Position der Kugel abzieht.&lt;br /&gt;
&lt;br /&gt;
== Ebenen ==&lt;br /&gt;
Mit Kugeln kann man zwar so einiges darstellen, aber nur Kugeln sind vielleicht doch etwas langweilig. Wir wollen deshalb noch Ebenen implementieren. Am besten betrachten wir diese dazu in der Normalform, d.h. die Ebene wird allein durch ihre Flächennormale angegeben. Für Punkte auf der Ebene gilt dann:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_ebenengleichung.png|center]]&lt;br /&gt;
Setzt man nun in x unseren Strahl ein, ergibt sich:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_ebenenrechnung.png|center]]&lt;br /&gt;
Ist &amp;lt;d,n&amp;gt;=0, dann gibt es keine Lösung, sonst genau eine. &lt;br /&gt;
&lt;br /&gt;
Welche Objekte eignen sich sonst gut zum Raytracing? ... Alle Objekte, die sich in kartesischen Koordinaten durch eine Gleichung der Form [[Bild:Tutorial_RaytracingI_kartesisch.png|center]] darstellen lassen. In (x,y,z) setzt man seinen Strahl r(t) ein und versucht nach t aufzulösen. In einigen Fällen wird dieses Problem leider kaum zu lösen sein: man kommt dann um den Einsatz von numerischen Verfahren nicht herum. Ich werde versuchen, in Folgetutorials noch ein paar weitere, interessante Objekte vorzustellen, die sich direkt lösen lassen und wenn ich viel Geduld habe, vielleicht auch einmal einen eigenen Artikel bezüglich numerischer Verfahren.&lt;br /&gt;
&lt;br /&gt;
== Vorschau ==&lt;br /&gt;
Damit sind wir auch schon wieder soweit. Die ersten Grundlagen sind abgehandelt, aber wirklich überzeugt sind wir vom Raytracing noch nicht. Damit sich das ändert, sind weitere Tutorials in Planung: Wir wollen uns dann mit Licht und Normalen beschäftigen. Ausserdem sind Reflektionen und Transparenz spannende Dinge, denen wir uns widmen können. Wir wollen ausserdem unsere Objekte transformieren, scheeren, rotieren, ... Es bleibt also noch einiges im Bereich Raytracing zu tun, was hier nicht behandelt wurde.&lt;br /&gt;
&lt;br /&gt;
Bis es soweit ist, könnt ihr euch ja selbst schonmal ein paar Gedanken zum Thema machen oder euch doch lieber in die Weiten von OpenGl flüchten.&lt;br /&gt;
&lt;br /&gt;
'''[[Benutzer:Nico Michaelis|Nico Michaelis]]'''&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Tutorial_Raytracing_-_Grundlagen_I&amp;diff=20056</id>
		<title>Tutorial Raytracing - Grundlagen I</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Tutorial_Raytracing_-_Grundlagen_I&amp;diff=20056"/>
				<updated>2006-12-25T16:39:43Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Einführung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Tutorial Raytracing - Grundlagen I =&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_teaser.jpg|center]]&lt;br /&gt;
== Einführung ==&lt;br /&gt;
Da melde ich mich mal wieder zurück mit einem kleinen Tutorial bezüglich Raytracing. Ihr sollt ja gelegentlich was neues lernen. Es ist zwar etwas schade, daß nur noch selten Tutorials aus der Community kommen - ich hoffe immernoch, daß sich das irgendwann wieder ändern wird. Und alle die bislang Tutorials geschrieben haben, mussten ja irgendwann ihr erstes schreiben - also nur Mut (mein allererstes war im Übrigen das 1. Tutorial aus der Terrain-Reihe). Nunja. Was hat es also mit dem Raytracing auf sich? Und warum heisst dieses Tutorial Grundlagen I? Ich will es euch erklären. Beim Raytracing verfolgt man im Gegensatz zum Rastern wie es etwa OpenGl oder Direct3D machen, einen anderen Ansatz. Statt Objekte oberflächlich in Polygone zu zerschneiden und sie dann auf den Bildschirm per Z-Buffer zu projezieren, wirft die Kamera Strahlen in die Szenerie und auf jedem Strahl prüft man, ob sich ein Objekt mit dem Strahl schneidet. Man verliert dadurch sehr deutlich Geschwindigkeit: die wenigsten Raytracer sind so schnell, dass man interaktiv damit arbeiten kann. Wozu also ist dann Raytracing gut? Man kann im Raytracer hoch realistisch wirkende Bilder erzeugen und auch Verfahren verwenden, die im Rasterizer nicht oder kaum nachzubauen sind - die gute alte Grafikkarte muss dabei nicht völlig unnütz werden: Diese besitzen sehr flotte und massiv parallele Geometrie-Einheiten, die auch im Raytracer Verwendung finden können - dies ist aber etwas zu speziell für unser kleines Tutorial und vielleicht auch nicht das, was man in seinem ersten Raytracer implementieren würde. Was sich im Bereich interaktiver Grafik allerdings anbietet, ist den Raytracer ein wenig umzumodeln und mit ihm statische Lightmaps erzeugen oder ihn zur Selection missbrauchen. Das einzige Problem welches wir dabei haben: Wir müssen alles von Grund auf zusammenbasteln - nicht so schön, wie bei OpenGl, wo man nach ein paar Stunden recht ansehnliche Bilder samt Beleuchtung zeichnen kann. Wir werden da wohl etwas länger brauchen, aber ewig wird es auch nicht dauern - und schliesslich musste OpenGl ja auch erst einmal designed werden. Andere Dinge werden sich dagegen deutlich leichter implementieren lassen als mit OpenGl, so sind etwa Schatten im Raytracer ein Kinderspiel - im Rasterizer können sie richtig arbeitsintensiv werden.&lt;br /&gt;
&lt;br /&gt;
== Die Griechische Vorstellung ==&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_griechisch.jpg|right]]&lt;br /&gt;
Die Griechen hatten eine etwas sonderbare Vorstellung vom Sehen: Sie stellten sich vor, daß aus ihren Augen Strahlen kommen, die dann auf die Umgebung treffen und dann quasi Nachricht an das Auge geben, was sie getroffen haben, wie weit weg es ist und welche Farbe es hat. Das ist in etwa das, was auch ein Raytracer macht. Wir wollen das erst einmal im Hinterkopf behalten und uns zuerst mit Strahlen genauer auseinandersetzen. Danach werden wir Kugeln mit diesen Strahlen schneiden und eine passende perspektivische Kamera entwerfen. Schließlich werden wir einen sehr einfachen Raytracer schreiben, und ihm anschließend noch Ebenen als Objekte näherbringen, weil Kugeln alleine doch etwas langweilig sind.&lt;br /&gt;
&lt;br /&gt;
== Strahlen ==&lt;br /&gt;
Was ist also ein Strahl? Ein Strahl hat einen Ursprung, an dem er beginnt, und eine Richung, in die er verläuft. Wer in der Schule in Geometrie aufgepasst hat, kennt dieses Objekt sicher auch noch als Halbgerade. Da wir später damit rechnen werden, müssen wir den Strahl in eine schöne Formel packen:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_strahlgleichung.png|center]]&lt;br /&gt;
Die Punkte auf unserem Strahl r sind also parametrisiert durch t, welches die&lt;br /&gt;
Zahlen von 0 bis unendlich durchläuft. Der Ursprung des Strahles ist o und seine&lt;br /&gt;
Richung d. Somit kennen wir alle Punkte auf dem Strahl. &lt;br /&gt;
&lt;br /&gt;
Um nun zu prüfen, ob ein Strahl nun ein Objekt trifft, beginnen wir bei t = 0 und laufen alle Punkte ab, bis wir bei t = unendlich angekommen ... ... ... Nein so machen wir das natürlich nicht - funktionieren würde es zwar, würde aber unendlich lange dauern: Nicht gerade das, was wir uns unter schnell vorstellen. &lt;br /&gt;
&lt;br /&gt;
Bevor wir weitermachen, sollten wir unseren Strahl gleich in&lt;br /&gt;
etwas Code verpacken, schließlich wollen wir uns ja einen Raytracer schreiben:&lt;br /&gt;
&amp;lt;cpp&amp;gt;public struct Ray&lt;br /&gt;
{&lt;br /&gt;
    public Vertex3 Origin;&lt;br /&gt;
    public Vertex3 Direction;&lt;br /&gt;
&lt;br /&gt;
    public Vertex3 Evaluate (double t)&lt;br /&gt;
    {&lt;br /&gt;
        return Origin + t * Direction;&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zurück zu unserem Problem: Wir müssten also unendlich lange darauf warten, bis unser Raytracer das Objekt gefunden hat, mit dem sich der momentan betrachtete Strahl schneidet. Viel schneller geht die Sache, wenn wir vorher beschließen, welche Objekte wir anzeigen können wollen. Für den Anfang wollen wir uns mit sehr einfachen Objekten begnügen: Kugeln. Sie sind schnell berechnet und werden für erste Experimente ausreichen.&lt;br /&gt;
&lt;br /&gt;
== Kugeln ==&lt;br /&gt;
Erinnerung: Eine Kugel ist definiert durch ihren Mittelpunkt und ihren Radius r. Setzt man den Mittelpunkt auf den Ursprung des Koordinatensystems, dann sind die Punkte auf der Oberfläche O unserer Kugel gerade die Punkte, die vom Ursprung den Abstand r haben. Die uns interessierende Bedingung wird so zu ||p|| = r für Punkte p auf O. Die Gleichung kann man schadlos quadrieren und statt der Vektorlänge ||p|| bekommt man das ohne Wurzel ziehen zu berechnende [[Standard Skalarprodukt|Skalarprodukt]] von p mit sich selbst:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_skalprodpp.png|center]]&lt;br /&gt;
Setzt man hierein die obige Gleichung für den Strahl, ergibt sich:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_radsqr.png|center]]&lt;br /&gt;
Und damit:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_radsqr2.png|center]]&lt;br /&gt;
Da die Richtung o und d unseres Strahls bekannt sind, haben wir eine quadratische Gleichung vor der Nase, die wir mittels Mitternachtsformel lösen können:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_mitternacht.png|center]]&lt;br /&gt;
Anhand der Diskriminante D, also dem Teil des obigen Ausdrucks, der unter der Wurzel steht, können wir entscheiden, ob der Strahl die Kugel trift. Ist nämlich D &amp;lt; 0, so kann man in den reelen Zahlen die Wurzel nicht berechnen. Ist D = 0, so gibt es genau eine Lösung der Schnittgleichung und für D &amp;gt; 0 schneidet der Strahl die Kugel genau 2 mal. Da wir unseren Strahl nur für positive Parameter t definiert haben, sollten wir die errechneten Schnittpunkte t&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; und t&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; noch daraufhin untersuchen:&lt;br /&gt;
&amp;lt;cpp&amp;gt;public double RayIntersect ( Ray ray )&lt;br /&gt;
{&lt;br /&gt;
    double boundingSquare = sphereRadius * sphereRadius ;&lt;br /&gt;
    ray.Origin -= Position;&lt;br /&gt;
    double a, b, c;&lt;br /&gt;
    a = ray.Direction.DotDot ;&lt;br /&gt;
    // DotDot ^= Skalarprod mit sichselbst : &amp;lt;d, d&amp;gt;&lt;br /&gt;
    b = 2 * ( ray.Origin * ray.Direction );&lt;br /&gt;
    // * ^= normales Skalarprod&lt;br /&gt;
    c = ray.Origin.DotDot - boundingSquare;&lt;br /&gt;
&lt;br /&gt;
    double t1 , t2 ;&lt;br /&gt;
    int roots = CalcQuadricRoots (a, b, c, out t1, out t2) ;&lt;br /&gt;
&lt;br /&gt;
    if (roots &amp;gt; 0)&lt;br /&gt;
        return t1 &amp;gt;= 0 ? t1 : t2 ;&lt;br /&gt;
        // kleinsterpositiver pos. Wert aus t1, t2&lt;br /&gt;
    else&lt;br /&gt;
        return -1; // Kein Schnittpunkt&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Einen kleinen Haken hat die Sache jedoch: Analytisch, d.h. per Stift und Papier, lässt sich mit der Mitternachtsformel wunderbar rechnen. Am Computer neigt sie zu Fehlern, was ganz allein an dem &amp;amp;plusmn; liegt. So führt man verlässlich eine Subtraktion durch, wenn D &amp;gt; 0 ist - und Subtraktionen sind reines Gift für die Genauigkeit bei numerischen Rechnungen. Durch kleine Umformungen und das Bestimmen eines Vorzeichens, können wir das Problem umgehen:&lt;br /&gt;
&lt;br /&gt;
== Quadratische Gleichungen ==&lt;br /&gt;
Hat man also eine Quadratische Gleichung in der allgemeinen Form:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_quadratisch.png|center]]&lt;br /&gt;
dann bestimmt man die Nullstellen am besten durch:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_quadratisch_numerisch.png|center]]&lt;br /&gt;
Bei der Auswertung von q wird so sicherlich echt addiert, weil zu b eine Zahl gleichen Vorzeichens summiert wird. Dass der Wert für t&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; stimmt, hat man dann auch sehr leicht nachgerechnet, wohingegen t&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; in wildes Rumgeschiebe der Formel ausartet und sich erst recht spät sign(b) herauswerfen lässt. Ich erspare euch nähere Erläuterungen ;-) Ein bischen Quellcode hierzu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;cpp&amp;gt;public static int CalcQuadricRoots(double a, double b, double c, out double x1, out double x2)&lt;br /&gt;
{&lt;br /&gt;
    double determinant = b * b - 4 * a * c;&lt;br /&gt;
    if (determinant &amp;lt; 0)&lt;br /&gt;
    {&lt;br /&gt;
        x1 = 0.0;&lt;br /&gt;
        x2 = 0.0;&lt;br /&gt;
        return 0;&lt;br /&gt;
    }&lt;br /&gt;
    determinant = Math.Sqrt(determinant);&lt;br /&gt;
    double q = -0.5 * (b + PSgn(b) * determinant);&lt;br /&gt;
    // Psgn: gives - 1 if b &amp;lt; 0 and 1 if b &amp;gt;= 0. &lt;br /&gt;
    // so no zero as normal sgn would give us.&lt;br /&gt;
    x1 = q / a;&lt;br /&gt;
    x2 = c / q;&lt;br /&gt;
    // Sort by value&lt;br /&gt;
    if (x1 &amp;gt; x2)&lt;br /&gt;
    {&lt;br /&gt;
        q = x2; x2 = x1; x1 = q;&lt;br /&gt;
    }&lt;br /&gt;
    return x1 == x2 ? 1 : 2;&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Die Funktion speichert die Nullstellen in den Variablen x1, x2 dem Wert nach sortiert ab und gibt die Anzahl der Nullstellen zurück.&lt;br /&gt;
Da wir jetzt bereits bestimmen können, wo und wie oft unser Strahl die Kugel trift, können wir, nachdem wir uns noch einen Strahlenwerfer, (also eine Kamera) konstruiert haben, unseren ersten Raytracer bauen.&lt;br /&gt;
&lt;br /&gt;
== Perspektivische Kamera ==&lt;br /&gt;
Jeder, der sich mit OpenGL auskennt, wird bei der Konstruktion einer perspektivischen Kamera gleich schreien, daß man dazu doch einfach nur eine Projektionsmatrix braucht, die man sich ganz einfach aus der OpenGL Spezifikation stibitzen kann. Falsch gedacht: Ein Raytracer ist kein Rasterizer: Wir brauchen keine Projektionsmatrizen, noch nicht einmal Matrizen. Die perspektivische Kamera eines Ray-Tracers lässt sich direkt nach vorn heraus entwerfen:&lt;br /&gt;
&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_perspektivisch.png|center]]&lt;br /&gt;
&lt;br /&gt;
Unrotiert und unverschoben soll unsere Kamera in die Tiefenrichtung z blicken. Dabei wird unser Bildschirm durch die Parameter links, rechts, oben und unten beschrieben. Ist die Auflösung des Bildschirms in X wie in Y-Richtung bekannt, so kann man leicht die Richtung d des Vektors bestimmen, der vom Betrachter auf den Bildschirm zeigt. Sofort bekommt man so einen Strahl, wenn man als Anfangspunkt o die Position des Betrachters wählt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;cpp&amp;gt;public Ray ShootRay ( int x , int y )&lt;br /&gt;
{&lt;br /&gt;
    Ray result = new Ray();&lt;br /&gt;
    result.Origin = Position;&lt;br /&gt;
&lt;br /&gt;
    double xpart , ypart ;&lt;br /&gt;
    xpart = ( ( double ) x ) / (double ) widthpixels;&lt;br /&gt;
    ypart = ( ( double ) y ) / (double ) heightpixels;&lt;br /&gt;
 &lt;br /&gt;
    xpart = left + xpart * ( right - left ) ;&lt;br /&gt;
    ypart = top + ypart * ( bottom - top ) ;&lt;br /&gt;
 &lt;br /&gt;
    result.Direction.x = xpart;&lt;br /&gt;
    result.Direction.y = ypart;&lt;br /&gt;
    result.Direction.z = 1.0;&lt;br /&gt;
&lt;br /&gt;
    /* if ( Transformation != null )&lt;br /&gt;
    {&lt;br /&gt;
        result.Direction =&lt;br /&gt;
        Transformation.Apply( result.Direction );&lt;br /&gt;
    } */&lt;br /&gt;
    result.Direction.Normalize();&lt;br /&gt;
    return result;&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Die auskommentierte if-Abfrage soll vorerst nicht stören. Ihr wird später leben eingehaucht, wenn wir dem Raytracer Verschiebungen,&lt;br /&gt;
Rotationen, Skalierungen, Scheerungen, u.s.w. einbauen.&lt;br /&gt;
&lt;br /&gt;
== Einfacher Raycaster ==&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_depthcasting.jpg|right]]&lt;br /&gt;
Damit sind wir dann auch schon soweit, daß wir unsere ersten Gehversuche in Sachen Raytracing wagen können. Für jedes Pixel im Bild werfen wir mittels ShootRay einen Strahl und prüfen, ob dieser die Kugeln in unserer Szene schneidet. Wenn ja, merken wir uns den nähestes dieser Schnittpunkte und weisen ihm einen Farbwert zu. So erhalten wir ein Bild, das in etwa die Informationen wieder gibt, die OpenGl in seinem Tiefenpuffer speichern würde. Ich gebe zu, das ist nicht hochgradig spannend, aber solange wir uns noch nicht eingehender mit Licht und Shading beschäftigt haben, können wir auch nicht mehr erwarten - und wir haben beim Raytracing ja leider das Problem, daß wir ganz von vorne anfangen müssen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;cpp&amp;gt;public RaytraceImage ( int width , int height )&lt;br /&gt;
{&lt;br /&gt;
    // near und far sind die Werte fuer den Bereich ,&lt;br /&gt;
    // von dem Tiefeninformationen abgebildet werden&lt;br /&gt;
    for ( int x = 0; x &amp;lt; width; x++) {&lt;br /&gt;
        for ( int y = 0 ; y &amp;lt; height; y++) {&lt;br /&gt;
            Ray shoot = ShootRay (x , y);&lt;br /&gt;
            double maxdist = double.Infinity;&lt;br /&gt;
            &lt;br /&gt;
            foreach (Kugel obj in SichtbareKugeln) {&lt;br /&gt;
                double hitdist = obj.RayIntersect(shoot) ;&lt;br /&gt;
                if (hitdist &amp;gt; 0 &amp;amp;&amp;amp; maxdist &amp;gt; hitdist)&lt;br /&gt;
                    maxdist = hitdist;&lt;br /&gt;
            }&lt;br /&gt;
            &lt;br /&gt;
            if (maxdist &amp;lt; double.Infinity) {&lt;br /&gt;
                SetColor(x, y, Colors.Gray (Math.Min(Math .Max(0,&lt;br /&gt;
                    (maxdist - near) / ( near - far ))), 1.0)) ;&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
                SetColor(x, y, BackgroundColor);   &lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/cpp&amp;gt;&lt;br /&gt;
Eine kleine Anmerkung noch: Da wir uns noch nicht über Transformationen Gedanken gemacht haben, und unsere Kugeln bislang am Nullpunkt aufgehäng sind, können wir diese noch nicht positionieren - sprich es wird höchstens die größte Kugel sichtbar, weil alle weiteren verdeckt sind. Das lässt sich beheben, indem man vor dem Test auf Schnitt vom Ursprung des entsprechenden Strahles, die Position der Kugel abzieht.&lt;br /&gt;
&lt;br /&gt;
== Ebenen ==&lt;br /&gt;
Mit Kugeln kann man zwar so einiges darstellen, aber nur Kugeln sind vielleicht doch etwas langweilig. Wir wollen deshalb noch Ebenen implementieren. Am besten betrachten wir diese dazu in der Normalform, d.h. die Ebene wird allein durch ihre Flächennormale angegeben. Für Punkte auf der Ebene gilt dann:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_ebenengleichung.png|center]]&lt;br /&gt;
Setzt man nun in x unseren Strahl ein, ergibt sich:&lt;br /&gt;
[[Bild:Tutorial_RaytracingI_ebenenrechnung.png|center]]&lt;br /&gt;
Ist &amp;lt;d,n&amp;gt;=0, dann gibt es keine Lösung, sonst genau eine. &lt;br /&gt;
&lt;br /&gt;
Welche Objekte eignen sich sonst gut zum Raytracing? ... Alle Objekte, die sich in kartesischen Koordinaten durch eine Gleichung der Form [[Bild:Tutorial_RaytracingI_kartesisch.png|center]] darstellen lassen. In (x,y,z) setzt man seinen Strahl r(t) ein und versucht nach t aufzulösen. In einigen Fällen wird dieses Problem leider kaum zu lösen sein: man kommt dann um den Einsatz von numerischen Verfahren nicht herum. Ich werde versuchen, in Folgetutorials noch ein paar weitere, interessante Objekte vorzustellen, die sich direkt lösen lassen und wenn ich viel Geduld habe, vielleicht auch einmal einen eigenen Artikel bezüglich numerischer Verfahren.&lt;br /&gt;
&lt;br /&gt;
== Vorschau ==&lt;br /&gt;
Damit sind wir auch schon wieder soweit. Die ersten Grundlagen sind abgehandelt, aber wirklich überzeugt sind wir vom Raytracing noch nicht. Damit sich das ändert, sind weitere Tutorials in Planung: Wir wollen uns dann mit Licht und Normalen beschäftigen. Ausserdem sind Reflektionen und Transparenz spannende Dinge, denen wir uns widmen können. Wir wollen ausserdem unsere Objekte transformieren, scheeren, rotieren, ... Es bleibt also noch einiges im Bereich Raytracing zu tun, was hier nicht behandelt wurde.&lt;br /&gt;
&lt;br /&gt;
Bis es soweit ist, könnt ihr euch ja selbst schonmal ein paar Gedanken zum Thema machen oder euch doch lieber in die Weiten von OpenGl flüchten.&lt;br /&gt;
&lt;br /&gt;
'''[[Benutzer:Nico Michaelis|Nico Michaelis]]'''&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Benutzer:Luketheduke&amp;diff=18003</id>
		<title>Benutzer:Luketheduke</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Benutzer:Luketheduke&amp;diff=18003"/>
				<updated>2006-05-30T13:25:55Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ist das meine eigene Seite? Zum Blödsinn schreiben über mich und meine Haustiere?&lt;br /&gt;
&lt;br /&gt;
Wenn ja:&lt;br /&gt;
&lt;br /&gt;
Ich bin 16 Jahre alt, gehe auf die 10. Klasse Gamnasium, häng den ganzen Tag am Computer(America's Army, Delphi, PHP).&lt;br /&gt;
&lt;br /&gt;
Ansonsten beschäftige ich mich mit Robotik, Elektronik oder lese Bücher.&lt;br /&gt;
&lt;br /&gt;
Hier im Wiki mach ich vor allem Rechtschreib-Korrekturen.&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Luketheduke|luketheduke]] 15:25, 30. Mai 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:DelphiGL&amp;diff=18002</id>
		<title>Diskussion:DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:DelphiGL&amp;diff=18002"/>
				<updated>2006-05-30T13:19:19Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Geschichte==&lt;br /&gt;
&lt;br /&gt;
So wie's aussieht gab's hier wohl keine &amp;quot;frühsten Anfänge&amp;quot; ;-) Die DGL war auf einmal da :P&lt;br /&gt;
&lt;br /&gt;
Ne, wäre echt schön, wenn hier einmal eine kleine Geschichtsbeschreibung ähnlich der für [[omwiki:Projektgeschichte|Projektgeschichte für Omorphia (ext)]] zu finden wäre.&lt;br /&gt;
&lt;br /&gt;
Ich kann leider zu diesem Beitrag nichts selber beisteuern, da ich erst wesentlich später zur DGLC gekommen bin.&lt;br /&gt;
&lt;br /&gt;
MfG, --[[Benutzer:BenBE|BenBE]] 21:05, 14. Dez 2005 (CET)&lt;br /&gt;
&lt;br /&gt;
Das gibts ja jetzt ;)&lt;br /&gt;
Hab mir auch erlaubt, in dem Text von Phobeus ein paar Sachen, die mir fehlerhaft erschienen, zu ändern bzw. auszubessern.&lt;br /&gt;
Hab außerdem hier mal die Diskussionsseite bisschen formatiert.&lt;br /&gt;
--[[Benutzer:Luketheduke|luketheduke]] 15:19, 30. Mai 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
Hallo, bei der Bildunterschrift zum Diagramm &amp;quot;Mitgliederentwicklung&amp;quot; kann ich mit den Zahlen &amp;quot;18.09&amp;quot;, &amp;quot;21.83&amp;quot; und &amp;quot;25.83&amp;quot; kaum was anfangen. Trennpunkte müssten ja wohl beim Tausender-Schritt stehen (&amp;quot;1.809&amp;quot;), und Dezimalstellen kommen mir 1. unwahrscheinlich vor und 2. im Deutschen bitte ein Komma. Oder zumindest einen Hinweis.&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Luketheduke|luketheduke]] 12:11, 2. Apr 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=18001</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=18001"/>
				<updated>2006-05-30T13:16:37Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Kleine orthografische Modifikationen ;) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.36 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 23.08 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 26.33 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|01.12.05 - 01.05.06&lt;br /&gt;
|27&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die frühsten Anfänge===&lt;br /&gt;
Blickt man insbesondere vor das Jahr 2000 war die Grafikprogrammierung unter Delphi eine ziemlich frustrierende Angelegenheit. Nur sehr wenige Quellen waren überhaupt verfügbar, ganz zu schweigen von notwendigen Headern. Ein erste Etappe dieser Durststrecke war vermutlich das Erscheinen von DelphiX, dass sich binnen kurzer Zeit einer sehr großen Popularität erfreute. Der gemeinsame Treffpunkt hierfür war das alte Forum auf www.neobrothers.de. Prinzipiell machte die Community bis zu diesem Zeitpunkt nichts anderes als langsam zu wachsen und alle Varianten der Grafikprogrammierung durchzugehen. Vermutlich gab es damals kaum jemanden der nicht DelphiX, WdirectX oder diverse andere Header durchprobierte.&lt;br /&gt;
&lt;br /&gt;
Anfang 2002 kam es dann im Neobrothers-Forum zu einer Umfrage, ob man nicht ein Unterforum für OpenGL einrichten sollte. Zu diesem Zeitpunkt war mir (Phobeus) der Begriff OpenGL noch kaum ein Begriff. Da ich zu diesem Zeitpunkt jedoch zunehmend unzufriedener mit Direct3D wurde (Ständige Wechsel der API, zuviel Code für zu wenig Ergebnis etc.) riskierte ich einen Blick auf OpenGL und begann, mich damit auseinander zu setzen. Die Seite erster Wahl war damals für den OpenGL-Programmierer definitiv NeHe und erlaubte es mir mich relativ schnell in OpenGL einzuarbeiten. Das Ergebnis beeindruckte mich: Wenige Wochen und man konnte fast das gleiche machen wie mit Direct3D, allerdings oftmals mit erheblich weniger Code und alleine die Tatsache, dass man mit ein paar glVertex-Aufrufen schnell Figuren bilden konnte, beeindruckte mich sehr.&lt;br /&gt;
&lt;br /&gt;
Zeitgleich nahm die Umfrage im Neobrothers-Forum ein Ende und mit nur wenigen Stimmen Vorsprung siegte die Direct3D-Fraktion und es wurde abgelehnt ein entsprechendes Unterforum einzurichten. Ich selbst war zu diesem Zeitpunkt über das Ergebnis ziemlich enttäuscht. Ebenso ein weiteres Mitglied aus dem Forum namens Sebo, den man streng genommen als geistigen Vater von DGL nennen muss.&lt;br /&gt;
&lt;br /&gt;
Ich selbst besaß damals ausreichend Webspace und unterhielt dort eine kleine Seite für einige Projekte meinerseits. Er fragte mich, ob man nicht dort dann ein Unterforum einrichten könnte. Ich selbst war ziemlich skeptisch darüber, da ich nicht glaubte, dass ein kleines Unterforum in meinem „Gästebuch“ wirklich Interessierte anlocken könnte. Ich wollte Nägel mit Köpfen machen und es wurde mir hier erstmals bewußt, dass ich unlängst OpenGL als meine künftige API gewählt habe und definitiv nicht mehr zu Direct3D zurück wollte. Nach einer kurzen Sammlung von Ideen, Plänen und dem Entschluss auch Tutorials anbieten zu wollen, ging am 1. April 2002 die Webseite http://dgl.thechaoscompany.net/ (nicht mehr im Besitz) ans Netz. Inhalt war eine kleinere rote Webseite (http://www.phobeus.de/hosting/olddgl/) mit einem Forum auf einem Lycos-Account. Das Projekt wurde DGL genannt (ist jemand schon aufgefallen wie unsinnig der Name ist? Deutsche/Delphi Gomputer/Graphic Libary/Community? *sg) und wurde allgemein mit einem herzhaften Lachen aufgenommen. Die Tatsache, dass ein Direct3D-Programmierer plante, mit einer neuen OpenGL-Seite am ersten April ans Netz zu gehen, schien etwas belustigendes zu haben.&lt;br /&gt;
&lt;br /&gt;
Was man über die Grafik-Community von Delphi im Jahre 2002 wissen sollte ist, dass Neobrothers.de ein zentrales Forum war in dem sich die Leute zum Sprechen trafen. Die Projekte selbst waren jedoch meist dezentral und jeder Entwickler / jedes Team werkelte im Stillen an seiner Arbeit herum. In der Tat beobachtete ich damals, dass viele Leute mehr Arbeit in Ihre Webseiten steckten als in die eigentliche Programmierung. DGL sollte anderes sein und ein wirkliches Portal sein. Warum muss jeder eine Webseite haben, die nur spärlich verlinkt ist, wenn es doch einen zentralen Ort geben kann an dem man das Wissen einfach zusammenträgt?&lt;br /&gt;
&lt;br /&gt;
Bereits Ende April hatte DGL rund 20 Besucher täglich und lag damit weit über dem, was wir anfangs geschätzt hatten. Die Folge davon war, dass das Forum auf Grund des „hohen“ Traffic oftmals abends bereits gar nicht mehr erreichbar war. PHP-Webspace war damals noch recht teuer. Also kam es u.a. dazu, dass das Forum von DGL zwischenzeitlich bei Untergrund-Spiele (dem alten unter Krawall-Hosting), quellcodes.de und einem Cobal-Server lag. Ganz vereinzelt findet man noch in sehr alten Dateien unsere alte URL: http://dgl.quellcodes.de/. Keine dieser Seiten existiert heute noch so.&lt;br /&gt;
&lt;br /&gt;
Bereits im Mai 2002 bekam ich eine ziemlich ernüchternde Mail von einem Entwickler, der mir bis dahin in der Szene nicht bekannt war: Lithander. Er ließ sich über das schreckliche Design der roten Seite auf und das man da doch sicherlich etwas besser machen könnte. Tja... dauerte keinen Tag, da hatte er einen neuen Job und es entstand das Design von DGL, das bis heute auf dem Server liegt – wenngleich die Technik dahinter mehrfach überarbeitet wurde. Kurze Zeit darauf erhielt ich eine E-Mail von Nico, der mir anbot ein Tutorial über Landschafts-Rendering zu schreiben. Kaum zu glauben, aber ich habe damals (auf Grund bisheriger Erfahrungen) das ganze für einen schlechten Scherz gehalten und bin umso mehr überrascht gewesen als plötzlich wirklich ein Tutorial bei mir im Postfach lag. Bereits zu dieser Zeit war Sebo nicht mehr wirklich für DGL aktiv (deswegen findet man auch kaum etwas von ihm), allerdings wurden Lithander und Nico ins Team aufgenommen.&lt;br /&gt;
&lt;br /&gt;
Von da an wuchs DGL mit einer ziemlichen Geschwindigkeit. Ich selbst kann nur darüber schmunzeln, dass wir einst mit 10 MB Traffic am Tag Probleme hatten, ein Jahr später wurde bereits die 1,5 GB-Grenze gesprengt. Inzwischen kommt das gesamte DGL-Netz auf knapp 20 GB Traffic. Oftmals blicke ich mit einer Träne im Auge zurück auf das alte DGL, das sehr familiär gewesen ist – bei dem sich die Mitglieder fast alle mehr oder minder noch persönlich kannten. Dies ist inzwischen wohl kaum mehr möglich und der logistische Aufwand für die Community ist erheblich gestiegen. Dennoch ist es schön zu sehen, dass auch noch bei einer solch großen Seite sehr viele Leute da sind, die ebenso wie zur Gründungszeit bereit sind etwas für die Community beizutragen.&lt;br /&gt;
&lt;br /&gt;
DGL ist eine Community die aus einer Laune heraus entstanden ist, als April-Scherz abgetan wurde und dennoch etwas sinnvolles wurde ;)&lt;br /&gt;
&lt;br /&gt;
===Aprilscherze===&lt;br /&gt;
DGL selbst wurde ursprünglich selbst als Aprilscherz angesehen. Mittlerweile weiß man, dass es mehr wahr als ein Scherz.&lt;br /&gt;
Die Aprilscherze behalten aber ihren Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren]  &lt;br /&gt;
:Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] &lt;br /&gt;
:Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Die Community aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vor allem '''SDL''' als Thema in der DGL Community auf. Plattformunabhängige Programmierung wurde dadurch zunehmend häufiger ein Ziel der DGLer, was im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]] gipfelte.&lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer &amp;quot;Randgruppen-Randgruppe&amp;quot; (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welcher Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei dass DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur Zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügung. Neben diesem altruistischen Effekt hilft das Wiki auch, die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler, die von unseren Mitgliedern gefunden werden, sofort berichtigt werden können. (Sie befinden sich gerade im DGL-Wiki ;-))&lt;br /&gt;
&lt;br /&gt;
:Im DGL-Wiki findet man [[OpenGL-Funktionsübersicht|OpenGL Funktionen]], [[Hintergrundwissen]] und [[Link]]s und vieles vieles mehr.&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar, die Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Was herauskommen kann, wenn die Mitglieder von DelphiGL.com in die Tasten hauen, kann in der [[DGL Projekte|'''DGL Projekteecke''']] betrachtet werden.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl Original DGL-Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL &amp;lt;-&amp;gt; Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Kommentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan / SOS) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flooding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Ausfall der Domain&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC-Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL-Tutorials ins Wiki &amp;lt;br&amp;gt; DGL-Mitglieder starten DGL-Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland will sich von seiner IDE-Sparte trennen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2006||863|| Windows Vista soll nun doch OpenGL voll unterstützen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2006||891|| SGI beantragt Gläubigerschutz&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;br /&gt;
&lt;br /&gt;
[[DGL Projekte|Link auf die DGL Projekteecke]]&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:ZFighting&amp;diff=18000</id>
		<title>Diskussion:ZFighting</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:ZFighting&amp;diff=18000"/>
				<updated>2006-05-30T13:02:14Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Link ganz unten ist kaputt...  --[[Benutzer:Luketheduke|luketheduke]] 15:02, 30. Mai 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16882</id>
		<title>glTexEnv</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16882"/>
				<updated>2006-04-07T14:28:22Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Beschreibung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Unvollständig}}&lt;br /&gt;
= glTexEnv =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Name ==&lt;br /&gt;
'''glTexEnvf''', '''glTexEnvi''', '''glTexEnvfv''', '''glTexEnviv''' - Setzt Parameter für das Textur-Environment&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvf'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnvi'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Muss vom Typ '''GL_TEXTURE_ENV_MODE''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''param''&lt;br /&gt;
| Gibt eine einzelne symbolische Konstante an. Muss entweder vom Typ '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' oder '''GL_REPLACE'''.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvfv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnviv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Akzeptiert werden '''GL_TEXTURE_ENV_MODE''' und '''GL_TEXTURE_ENV_COLOR'''.&lt;br /&gt;
|-&lt;br /&gt;
! ''params''&lt;br /&gt;
| Gibt einen Pointer auf ein Parameter-Array an, das entweder eine einzelne symbolische Konstante oder eine Farbe im RGBA-Format enthält.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beschreibung == &lt;br /&gt;
Ein Textur-Environment legt fest, wie Texturwerte interpretiert werden, wenn ein Fragment texturiert wird. ''target'' muss vom Typ '''GL_TEXTURE_ENV''' sein. ''pname'' kann '''GL_TEXTURE_ENV_MODE''' oder '''GL_TEXTURE_ENV_COLOR''' sein.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' die Konstante '''GL_TEXTURE_ENV_MODE zugewiesen ist, dann ist ''params'' (bzw zeigt ''params'' auf) der symbolische Name einer Texturfunktion. Vier Texturfunktionen müssen angegeben werden: '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' und	'''GL_REPLACE'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Texturfunktion wird unter Verwendung des Textur-Wertes des zu behandelnden Fragments auf das zu texturierende Fragment angewendet (siehe [[glTexParameter]]) und erzeugt eine Farbe im RGBA-Format für dieses Fragment. Die folgende Tabelle zeigt, wie die RGBA-Farbe durch jede dieser wählbaren Funktionen generiert wird. C ist ein Triplet mit den Farbwerten (R,G,B) und A ist der Alpha-Wert. RGBA-Werte, die aus der Textur entnommen werden, sind in dem Bereich [0,1]. Das tiefergestellte f bezieht sich auf eingehende Fragment, das tiefergestellte c auf die Farbe des Textur-Environments und das tiefergestellte v verweist auf der Wert, den die Texturfunktion liefert.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Textur kann bis zu vier Komponenten pro Texturelement haben (siehe '''glTexImage1D''', '''glTexImage2D''', '''glCopyTexImage1D''' und '''glCopyTexImage2D'''). In einem Bild mit einer Komponente, zeigt L auf diese einzelne Komponente. Ein Bild mit zwei Komponenten nutzt L und A. Ein Bild mit drei Komponenten hat nur einen Color-Wert Ct. Ein Bild mit vier Komponenten hat einen Farbwert C und einen Alpha-Wert A. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| {{Prettytable_B1}}&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Base internal&amp;lt;br&amp;gt;format&lt;br /&gt;
|-&lt;br /&gt;
| GL_MODULATE&lt;br /&gt;
| GL_DECAL&lt;br /&gt;
| GL_BLEND&lt;br /&gt;
| GL_REPLACE&lt;br /&gt;
|-&lt;br /&gt;
! GL_ALPHA&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE&amp;lt;br&amp;gt;1&lt;br /&gt;
| [[Bild:C_v_ist_L_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-L_t)C_f-L_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_L_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE_ALPHA&amp;lt;br&amp;gt;2&lt;br /&gt;
| [[Bild:C_v_ist_L_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-L_t)C_f-L_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_L_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_INTENSITY&lt;br /&gt;
| [[Bild:C_v_ist_C_f_I_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_I_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-I_t)C_f-I_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_V_ist_(1-I_t)A_f-I_t_A_c.png]]&lt;br /&gt;
| [[Bild:C_v_ist_I_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_I_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGB&amp;lt;br&amp;gt;3&lt;br /&gt;
| [[Bild:C_v_ist_C_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-C_t)C_f-C_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGBA&amp;lt;br&amp;gt;4&lt;br /&gt;
| [[Bild:C_v_ist_C_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-A_t)C_f-A_t_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-C_t)C_f-C_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' vom Typ '''GL_TEXTURE_ENV_COLOR''' ist, ist '''params''' ein Pointer auf ein Array, das eine Farbe im RGBA-Format enhält. Farbkomponenten aus Integer-Werten werden linear interpretiert, so dass der größte positive Integer-Wert auf 1.0 und der kleinste negative Wert auf -1.0 fällt. Die Werte werden in den [0,1]-Bereich eingepasst, wenn sie spezifizert werden. Cc enthält diese vier Werte.&lt;br /&gt;
&lt;br /&gt;
Werden keine Werte zugewiesen, dann hat '''GL_TEXTURE_ENV_MODE''' den Wert '''GL_MODULATE''' und '''GL_TEXTRE_ENV_COLOR''' die Werte (0, 0, 0, 0).&lt;br /&gt;
					&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
'''GL_REPLACE''' ist nur verfügbar, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Interne Formate anders als 1, 2, 3 oder 4 dürften nur nutzbar sein, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Änderungen ==&lt;br /&gt;
Folgende Erweiterungen hat die Funktion erfahren:&lt;br /&gt;
=== Ab OpenGL Version 1.2.1 ===&lt;br /&gt;
Wenn mehrere [[Texture Stage]]s durch [[GL_ARB_multitexturing]] verwendet werden, so kann für jede [[Texture Stage]] die TexEnv-Funktion extra angegeben werden.&lt;br /&gt;
&lt;br /&gt;
=== Ab OpenGL Version 1.3 ===&lt;br /&gt;
Wenn glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE_ARB) verwendet wird, so wird die Berechnung der entsprechenden [[Texture Stage]] durch [[GL_ARB_texture_env_combine]] ersetzt.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fehlermeldungen ==&lt;br /&gt;
'''GL_INVALID_ENUM''' wird generiert, wenn ''target'' oder ''pname'' keine der akzeptablen, definierten Werte ist, oder wenn ''params'' eine definierte Konstante haben soll (abhängig vom Wert von ''pname'') und keine hat. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''GL_INVALID_OPERATION''' wird generiert, wenn glTexEnv innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Zugehörige Wertrückgaben ==&lt;br /&gt;
[[glGetTexEnv]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
[[glCopyPixels]], [[glCopyTexImage1D]], [[glCopyTexImage2D]], [[glCopyTexSubImage1D]], [[glCopyTexSubImage2D]], [[glTexImage1D]], [[glTexImage2D]], [[glTexParameter]], [[glTexSubImage1D]], [[glTexSubImage2D]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Kategorie:GL|TexEnv]]&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16881</id>
		<title>glTexEnv</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16881"/>
				<updated>2006-04-07T14:27:05Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: offline-kategorisierung entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Unvollständig}}&lt;br /&gt;
= glTexEnv =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Name ==&lt;br /&gt;
'''glTexEnvf''', '''glTexEnvi''', '''glTexEnvfv''', '''glTexEnviv''' - Setzt Parameter für das Textur-Environment&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvf'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnvi'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Muss vom Typ '''GL_TEXTURE_ENV_MODE''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''param''&lt;br /&gt;
| Gibt eine einzelne symbolische Konstante an. Muss entweder vom Typ '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' oder '''GL_REPLACE'''.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvfv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnviv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Akzeptiert werden '''GL_TEXTURE_ENV_MODE''' und '''GL_TEXTURE_ENV_COLOR'''.&lt;br /&gt;
|-&lt;br /&gt;
! ''params''&lt;br /&gt;
| Gibt einen Pointer auf ein Parameter-Array an, das entweder eine einzelne symbolische Konstante oder eine Farbe im RGBA-Format enthält.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beschreibung == &lt;br /&gt;
Ein Textur-Environment legt fest, wie Texturwerte interpretiert werden, wenn ein Fragment texturiert wird. ''target'' muss vom Typ '''GL_TEXTURE_ENV''' sein. ''pname'' kann '''GL_TEXTURE_ENV_MODE''' oder '''GL_TEXTURE_ENV_COLOR''' sein.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' die Konstante '''GL_TEXTURE_ENV_MODE zugewiesen ist, dann ist ''params'' (bzw zeigt ''params'' auf) der symbolische Name einer Texturfunktion. Vier Texturfunktionen müssen angegeben werden: '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' und	'''GL_REPLACE'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Texturfunktion wird unter Verwendung des Textur-Wertes des zu behandelnden Fragments auf das zu texturierende Fragment angewendet (siehe [[glTexParameter]]) und erzeugt eine Farbe im RGBA-Format für dieses Fragment. Die folgende Tabelle zeigt, wie die RGBA-Farbe durch jede dieser wählbaren Funktionen generiert wird. C ist ein Triplet mit den Farbwerten (R,G,B) und A ist der Alpha-Wert. RGBA-Werte, die aus der Textur entnommen werden, sind in dem Bereich [0,1]. Das tiefergestellte f bezieht sich auf eingehende Fragment, das tiefergestellte c auf die Farbe des Textur-Environments und das tiefergestellte v verweist auf der Wert, den die Texturfunktion liefert.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Textur kann bis zu vier Komponenten pro Texturelement haben (siehe '''glTexImage1D''', '''glTexImage2D''', '''glCopyTexImage1D''' und '''glCopyTexImage2D'''). In einem Bild mit einer Komponente, zeigt L auf diese einzelne Komponente. Ein Bild mit zwei Komponenten nutzt L und A. Ein Bild mit drei Komponenten hat nur einen Color-Wert Ct. Ein Bild mit vier Komponenten hat einen Farbwert C und einen Alpha-Wert A. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| {{Prettytable_B1}}&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Base internal&amp;lt;br&amp;gt;format&lt;br /&gt;
|-&lt;br /&gt;
| GL_MODULATE&lt;br /&gt;
| GL_DECAL&lt;br /&gt;
| GL_BLEND&lt;br /&gt;
| GL_REPLACE&lt;br /&gt;
|-&lt;br /&gt;
! GL_ALPHA&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE&amp;lt;br&amp;gt;1&lt;br /&gt;
| [[Bild:C_v_ist_L_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-L_t)C_f-L_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_L_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE_ALPHA&amp;lt;br&amp;gt;2&lt;br /&gt;
| [[Bild:C_v_ist_L_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-L_t)C_f-L_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_L_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_INTENSITY&lt;br /&gt;
| [[Bild:C_v_ist_C_f_I_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_I_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-I_t)C_f-I_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_V_ist_(1-I_t)A_f-I_t_A_c.png]]&lt;br /&gt;
| [[Bild:C_v_ist_I_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_I_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGB&amp;lt;br&amp;gt;3&lt;br /&gt;
| [[Bild:C_v_ist_C_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-C_t)C_f-C_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGBA&amp;lt;br&amp;gt;4&lt;br /&gt;
| [[Bild:C_v_ist_C_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-A_t)C_f+A_t_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-C_t)C_f+C_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' vom Typ '''GL_TEXTURE_ENV_COLOR''' ist, ist '''params''' ein Pointer auf ein Array, das eine Farbe im RGBA-Format enhält. Farbkomponenten aus Integer-Werten werden linear interpretiert, so dass der größte positive Integer-Wert auf 1.0 und der kleinste negative Wert auf -1.0 fällt. Die Werte werden in den [0,1]-Bereich eingepasst, wenn sie spezifizert werden. Cc enthält diese vier Werte.&lt;br /&gt;
&lt;br /&gt;
Werden keine Werte zugewiesen, dann hat '''GL_TEXTURE_ENV_MODE''' den Wert '''GL_MODULATE''' und '''GL_TEXTRE_ENV_COLOR''' die Werte (0, 0, 0, 0).&lt;br /&gt;
					&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
'''GL_REPLACE''' ist nur verfügbar, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Interne Formate anders als 1, 2, 3 oder 4 dürften nur nutzbar sein, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Änderungen ==&lt;br /&gt;
Folgende Erweiterungen hat die Funktion erfahren:&lt;br /&gt;
=== Ab OpenGL Version 1.2.1 ===&lt;br /&gt;
Wenn mehrere [[Texture Stage]]s durch [[GL_ARB_multitexturing]] verwendet werden, so kann für jede [[Texture Stage]] die TexEnv-Funktion extra angegeben werden.&lt;br /&gt;
&lt;br /&gt;
=== Ab OpenGL Version 1.3 ===&lt;br /&gt;
Wenn glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE_ARB) verwendet wird, so wird die Berechnung der entsprechenden [[Texture Stage]] durch [[GL_ARB_texture_env_combine]] ersetzt.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fehlermeldungen ==&lt;br /&gt;
'''GL_INVALID_ENUM''' wird generiert, wenn ''target'' oder ''pname'' keine der akzeptablen, definierten Werte ist, oder wenn ''params'' eine definierte Konstante haben soll (abhängig vom Wert von ''pname'') und keine hat. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''GL_INVALID_OPERATION''' wird generiert, wenn glTexEnv innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Zugehörige Wertrückgaben ==&lt;br /&gt;
[[glGetTexEnv]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
[[glCopyPixels]], [[glCopyTexImage1D]], [[glCopyTexImage2D]], [[glCopyTexSubImage1D]], [[glCopyTexSubImage2D]], [[glTexImage1D]], [[glTexImage2D]], [[glTexParameter]], [[glTexSubImage1D]], [[glTexSubImage2D]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Kategorie:GL|TexEnv]]&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16880</id>
		<title>glTexEnv</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16880"/>
				<updated>2006-04-07T14:25:06Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Tabelle bebildert */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Unvollständig}}&lt;br /&gt;
{{Offline}}&lt;br /&gt;
= glTexEnv =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Name ==&lt;br /&gt;
'''glTexEnvf''', '''glTexEnvi''', '''glTexEnvfv''', '''glTexEnviv''' - Setzt Parameter für das Textur-Environment&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvf'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnvi'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Muss vom Typ '''GL_TEXTURE_ENV_MODE''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''param''&lt;br /&gt;
| Gibt eine einzelne symbolische Konstante an. Muss entweder vom Typ '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' oder '''GL_REPLACE'''.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvfv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnviv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Akzeptiert werden '''GL_TEXTURE_ENV_MODE''' und '''GL_TEXTURE_ENV_COLOR'''.&lt;br /&gt;
|-&lt;br /&gt;
! ''params''&lt;br /&gt;
| Gibt einen Pointer auf ein Parameter-Array an, das entweder eine einzelne symbolische Konstante oder eine Farbe im RGBA-Format enthält.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beschreibung == &lt;br /&gt;
Ein Textur-Environment legt fest, wie Texturwerte interpretiert werden, wenn ein Fragment texturiert wird. ''target'' muss vom Typ '''GL_TEXTURE_ENV''' sein. ''pname'' kann '''GL_TEXTURE_ENV_MODE''' oder '''GL_TEXTURE_ENV_COLOR''' sein.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' die Konstante '''GL_TEXTURE_ENV_MODE zugewiesen ist, dann ist ''params'' (bzw zeigt ''params'' auf) der symbolische Name einer Texturfunktion. Vier Texturfunktionen müssen angegeben werden: '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' und	'''GL_REPLACE'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Texturfunktion wird unter Verwendung des Textur-Wertes des zu behandelnden Fragments auf das zu texturierende Fragment angewendet (siehe [[glTexParameter]]) und erzeugt eine Farbe im RGBA-Format für dieses Fragment. Die folgende Tabelle zeigt, wie die RGBA-Farbe durch jede dieser wählbaren Funktionen generiert wird. C ist ein Triplet mit den Farbwerten (R,G,B) und A ist der Alpha-Wert. RGBA-Werte, die aus der Textur entnommen werden, sind in dem Bereich [0,1]. Das tiefergestellte f bezieht sich auf eingehende Fragment, das tiefergestellte c auf die Farbe des Textur-Environments und das tiefergestellte v verweist auf der Wert, den die Texturfunktion liefert.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Textur kann bis zu vier Komponenten pro Texturelement haben (siehe '''glTexImage1D''', '''glTexImage2D''', '''glCopyTexImage1D''' und '''glCopyTexImage2D'''). In einem Bild mit einer Komponente, zeigt L auf diese einzelne Komponente. Ein Bild mit zwei Komponenten nutzt L und A. Ein Bild mit drei Komponenten hat nur einen Color-Wert Ct. Ein Bild mit vier Komponenten hat einen Farbwert C und einen Alpha-Wert A. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| {{Prettytable_B1}}&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Base internal&amp;lt;br&amp;gt;format&lt;br /&gt;
|-&lt;br /&gt;
| GL_MODULATE&lt;br /&gt;
| GL_DECAL&lt;br /&gt;
| GL_BLEND&lt;br /&gt;
| GL_REPLACE&lt;br /&gt;
|-&lt;br /&gt;
! GL_ALPHA&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE&amp;lt;br&amp;gt;1&lt;br /&gt;
| [[Bild:C_v_ist_L_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-L_t)C_f-L_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_L_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE_ALPHA&amp;lt;br&amp;gt;2&lt;br /&gt;
| [[Bild:C_v_ist_L_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-L_t)C_f-L_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_L_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_INTENSITY&lt;br /&gt;
| [[Bild:C_v_ist_C_f_I_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_I_t.png]]&lt;br /&gt;
| undefined&lt;br /&gt;
| [[Bild:C_v_ist_(1-I_t)C_f-I_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_V_ist_(1-I_t)A_f-I_t_A_c.png]]&lt;br /&gt;
| [[Bild:C_v_ist_I_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_I_t.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGB&amp;lt;br&amp;gt;3&lt;br /&gt;
| [[Bild:C_v_ist_C_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-C_t)C_f-C_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGBA&amp;lt;br&amp;gt;4&lt;br /&gt;
| [[Bild:C_v_ist_C_t_C_f.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-A_t)C_f+A_t_C_t.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f.png]]&lt;br /&gt;
| [[Bild:C_v_ist_(1-C_t)C_f+C_t_C_c.png]]&amp;lt;br&amp;gt;[[Bild:A_v_ist_A_f_A_t.png]]&lt;br /&gt;
| [[Bild:C_v_ist_C_t.png]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' vom Typ '''GL_TEXTURE_ENV_COLOR''' ist, ist '''params''' ein Pointer auf ein Array, das eine Farbe im RGBA-Format enhält. Farbkomponenten aus Integer-Werten werden linear interpretiert, so dass der größte positive Integer-Wert auf 1.0 und der kleinste negative Wert auf -1.0 fällt. Die Werte werden in den [0,1]-Bereich eingepasst, wenn sie spezifizert werden. Cc enthält diese vier Werte.&lt;br /&gt;
&lt;br /&gt;
Werden keine Werte zugewiesen, dann hat '''GL_TEXTURE_ENV_MODE''' den Wert '''GL_MODULATE''' und '''GL_TEXTRE_ENV_COLOR''' die Werte (0, 0, 0, 0).&lt;br /&gt;
					&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
'''GL_REPLACE''' ist nur verfügbar, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Interne Formate anders als 1, 2, 3 oder 4 dürften nur nutzbar sein, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Änderungen ==&lt;br /&gt;
Folgende Erweiterungen hat die Funktion erfahren:&lt;br /&gt;
=== Ab OpenGL Version 1.2.1 ===&lt;br /&gt;
Wenn mehrere [[Texture Stage]]s durch [[GL_ARB_multitexturing]] verwendet werden, so kann für jede [[Texture Stage]] die TexEnv-Funktion extra angegeben werden.&lt;br /&gt;
&lt;br /&gt;
=== Ab OpenGL Version 1.3 ===&lt;br /&gt;
Wenn glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE_ARB) verwendet wird, so wird die Berechnung der entsprechenden [[Texture Stage]] durch [[GL_ARB_texture_env_combine]] ersetzt.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fehlermeldungen ==&lt;br /&gt;
'''GL_INVALID_ENUM''' wird generiert, wenn ''target'' oder ''pname'' keine der akzeptablen, definierten Werte ist, oder wenn ''params'' eine definierte Konstante haben soll (abhängig vom Wert von ''pname'') und keine hat. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''GL_INVALID_OPERATION''' wird generiert, wenn glTexEnv innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Zugehörige Wertrückgaben ==&lt;br /&gt;
[[glGetTexEnv]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
[[glCopyPixels]], [[glCopyTexImage1D]], [[glCopyTexImage2D]], [[glCopyTexSubImage1D]], [[glCopyTexSubImage2D]], [[glTexImage1D]], [[glTexImage2D]], [[glTexParameter]], [[glTexSubImage1D]], [[glTexSubImage2D]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Kategorie:GL|TexEnv]]&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_f_I_t.png&amp;diff=16879</id>
		<title>Datei:C v ist C f I t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_f_I_t.png&amp;diff=16879"/>
				<updated>2006-04-07T14:09:48Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-I_t)C_f-I_t_C_c.png&amp;diff=16878</id>
		<title>Datei:C v ist (1-I t)C f-I t C c.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-I_t)C_f-I_t_C_c.png&amp;diff=16878"/>
				<updated>2006-04-07T14:00:53Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-L_t)C_f-L_t_C_c.png&amp;diff=16877</id>
		<title>Datei:C v ist (1-L t)C f-L t C c.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-L_t)C_f-L_t_C_c.png&amp;diff=16877"/>
				<updated>2006-04-07T14:00:24Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_(1-I_t)A_f-I_t_A_c.png&amp;diff=16876</id>
		<title>Datei:A v ist (1-I t)A f-I t A c.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_(1-I_t)A_f-I_t_A_c.png&amp;diff=16876"/>
				<updated>2006-04-07T13:58:44Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_f.png&amp;diff=16875</id>
		<title>Datei:A v ist A f.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_f.png&amp;diff=16875"/>
				<updated>2006-04-07T13:58:29Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_t.png&amp;diff=16874</id>
		<title>Datei:A v ist A t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_t.png&amp;diff=16874"/>
				<updated>2006-04-07T13:57:55Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_L_t.png&amp;diff=16873</id>
		<title>Datei:C v ist L t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_L_t.png&amp;diff=16873"/>
				<updated>2006-04-07T13:37:24Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_L_t_C_f.png&amp;diff=16872</id>
		<title>Datei:C v ist L t C f.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_L_t_C_f.png&amp;diff=16872"/>
				<updated>2006-04-07T13:37:02Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_I_t.png&amp;diff=16871</id>
		<title>Datei:C v ist I t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_I_t.png&amp;diff=16871"/>
				<updated>2006-04-07T13:36:44Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_t.png&amp;diff=16870</id>
		<title>Datei:C v ist C t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_t.png&amp;diff=16870"/>
				<updated>2006-04-07T13:36:30Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_t_C_f.png&amp;diff=16869</id>
		<title>Datei:C v ist C t C f.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_t_C_f.png&amp;diff=16869"/>
				<updated>2006-04-07T13:36:08Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_f.png&amp;diff=16868</id>
		<title>Datei:C v ist C f.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_C_f.png&amp;diff=16868"/>
				<updated>2006-04-07T13:35:48Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_V_ist_(1-L_t)C_f-L_t_C_c.png&amp;diff=16867</id>
		<title>Datei:C V ist (1-L t)C f-L t C c.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_V_ist_(1-L_t)C_f-L_t_C_c.png&amp;diff=16867"/>
				<updated>2006-04-07T13:35:26Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_V_ist_(1-I_t)C_f-I_t_C_c.png&amp;diff=16866</id>
		<title>Datei:C V ist (1-I t)C f-I t C c.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_V_ist_(1-I_t)C_f-I_t_C_c.png&amp;diff=16866"/>
				<updated>2006-04-07T13:34:03Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-C_t)C_f-C_t_C_c.png&amp;diff=16865</id>
		<title>Datei:C v ist (1-C t)C f-C t C c.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-C_t)C_f-C_t_C_c.png&amp;diff=16865"/>
				<updated>2006-04-07T13:33:46Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-A_t)C_f-A_t_C_t.png&amp;diff=16864</id>
		<title>Datei:C v ist (1-A t)C f-A t C t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:C_v_ist_(1-A_t)C_f-A_t_C_t.png&amp;diff=16864"/>
				<updated>2006-04-07T13:33:17Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_I_t.png&amp;diff=16863</id>
		<title>Datei:A v ist I t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_I_t.png&amp;diff=16863"/>
				<updated>2006-04-07T13:33:00Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_V_ist_A_t.png&amp;diff=16862</id>
		<title>Datei:A V ist A t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_V_ist_A_t.png&amp;diff=16862"/>
				<updated>2006-04-07T13:32:49Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_V_ist_A_f.png&amp;diff=16861</id>
		<title>Datei:A V ist A f.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_V_ist_A_f.png&amp;diff=16861"/>
				<updated>2006-04-07T13:32:06Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_f_I_t.png&amp;diff=16860</id>
		<title>Datei:A v ist A f I t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_f_I_t.png&amp;diff=16860"/>
				<updated>2006-04-07T13:31:54Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_f_A_t.png&amp;diff=16859</id>
		<title>Datei:A v ist A f A t.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_v_ist_A_f_A_t.png&amp;diff=16859"/>
				<updated>2006-04-07T13:31:45Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Datei:A_V_ist_(1-I_t)A_f-I_t_A_c.png&amp;diff=16857</id>
		<title>Datei:A V ist (1-I t)A f-I t A c.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Datei:A_V_ist_(1-I_t)A_f-I_t_A_c.png&amp;diff=16857"/>
				<updated>2006-04-07T13:31:17Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Formel für den glTexEnv-Artikel.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Formel für den glTexEnv-Artikel.&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16776</id>
		<title>glTexEnv</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glTexEnv&amp;diff=16776"/>
				<updated>2006-04-02T17:39:31Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: Offline genommen.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Unvollständig}}&lt;br /&gt;
{{Offline}}&lt;br /&gt;
= glTexEnv =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Name ==&lt;br /&gt;
'''glTexEnvf''', '''glTexEnvi''', '''glTexEnvfv''', '''glTexEnviv''' - Setzt Parameter für das Textur-Environment&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvf'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnvi'''(''target'' : GLenum; ''pname'' : GLenum; ''param'' : GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Muss vom Typ '''GL_TEXTURE_ENV_MODE''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''param''&lt;br /&gt;
| Gibt eine einzelne symbolische Konstante an. Muss entweder vom Typ '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' oder '''GL_REPLACE'''.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
 procedure '''glTexEnvfv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLfloat) &amp;lt;br&amp;gt;&lt;br /&gt;
 procedure '''glTexEnviv'''(''target'' : GLenum; ''pname'' : GLenum; '''const''' ''params'' : ^GLint)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&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;
! ''target'' &lt;br /&gt;
| Gibt ein Textur-Environment an. Muss vom Typ '''GL_TEXTURE_ENV''' sein.&lt;br /&gt;
|-&lt;br /&gt;
! ''pname'' &lt;br /&gt;
| Gibt den symbolischen Namen eines Parameters des Textur-Environments an. Akzeptiert werden '''GL_TEXTURE_ENV_MODE''' und '''GL_TEXTURE_ENV_COLOR'''.&lt;br /&gt;
|-&lt;br /&gt;
! ''params''&lt;br /&gt;
| Gibt einen Pointer auf ein Parameter-Array an, das entweder eine einzelne symbolische Konstante oder eine Farbe im RGBA-Format enthält.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beschreibung == &lt;br /&gt;
Ein Textur-Environment legt fest, wie Texturwerte interpretiert werden, wenn ein Fragment texturiert wird. ''target'' muss vom Typ '''GL_TEXTURE_ENV''' sein. ''pname'' kann '''GL_TEXTURE_ENV_MODE''' oder '''GL_TEXTURE_ENV_COLOR''' sein.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' die Konstante '''GL_TEXTURE_ENV_MODE zugewiesen ist, dann ist ''params'' (bzw zeigt ''params'' auf) der symbolische Name einer Texturfunktion. Vier Texturfunktionen müssen angegeben werden: '''GL_MODULATE''', '''GL_DECAL''', '''GL_BLEND''' und	'''GL_REPLACE'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Texturfunktion wird unter Verwendung des Textur-Wertes des zu behandelnden Fragments auf das zu texturierende Fragment angewendet (siehe [[glTexParameter]]) und erzeugt eine Farbe im RGBA-Format für dieses Fragment. Die folgende Tabelle zeigt, wie die RGBA-Farbe durch jede dieser wählbaren Funktionen generiert wird. C ist ein Triplet mit den Farbwerten (R,G,B) und A ist der Alpha-Wert. RGBA-Werte, die aus der Textur entnommen werden, sind in dem Bereich [0,1]. Das tiefergestellte f bezieht sich auf eingehende Fragment, das tiefergestellte c auf die Farbe des Textur-Environments und das tiefergestellte v verweist auf der Wert, den die Texturfunktion liefert.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Eine Textur kann bis zu vier Komponenten pro Texturelement haben (siehe '''glTexImage1D''', '''glTexImage2D''', '''glCopyTexImage1D''' und '''glCopyTexImage2D'''). In einem Bild mit einer Komponente, zeigt L auf diese einzelne Komponente. Ein Bild mit zwei Komponenten nutzt L und A. Ein Bild mit drei Komponenten hat nur einen Color-Wert Ct. Ein Bild mit vier Komponenten hat einen Farbwert C und einen Alpha-Wert A. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tabelle unter  [http://www.opengl.org/documentation/specs/man_pages/hardcopy/GL/html/gl/texenv.html diesem Link] so ähnlich wie folgende Tabelle gestalten:'''&lt;br /&gt;
[[Bild: http://www.mevis.de/opengl/glTexEnv.f1.gif]]&lt;br /&gt;
&lt;br /&gt;
{| {{Prettytable}}&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; | Base internal&amp;lt;br&amp;gt;format&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Texture functions&lt;br /&gt;
|-&lt;br /&gt;
| GL_MODULATE &lt;br /&gt;
| GL_DECAL&lt;br /&gt;
| GL_BLEND&lt;br /&gt;
| GL_REPLACE&lt;br /&gt;
|-&lt;br /&gt;
! GL_ALPHA&lt;br /&gt;
| C =C&amp;lt;br&amp;gt;&lt;br /&gt;
A =A A&lt;br /&gt;
| undefined&lt;br /&gt;
| C =C&amp;lt;br&amp;gt;&lt;br /&gt;
Av=Af&lt;br /&gt;
| C =C&amp;lt;br&amp;gt;&lt;br /&gt;
Av=Af&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE&amp;lt;br&amp;gt;1&lt;br /&gt;
| C =L C&amp;lt;br&amp;gt;&lt;br /&gt;
v  t f&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
A =A&lt;br /&gt;
| undefined&lt;br /&gt;
| C =(1-L )C&amp;lt;br&amp;gt;  v +L  Ct  f&amp;lt;br&amp;gt;         t c&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A&lt;br /&gt;
| C&amp;lt;sub&amp;gt;v&amp;lt;/sub&amp;gt; =L&amp;lt;sub&amp;gt;t&amp;lt;/sub&amp;gt;&amp;lt;br&amp;gt;A =A&lt;br /&gt;
|-&lt;br /&gt;
! GL_LUMINANCE_ALPHA&amp;lt;br&amp;gt;2&lt;br /&gt;
| C =L C&amp;lt;br&amp;gt;v  t f&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A A&lt;br /&gt;
| undefined&lt;br /&gt;
| C =(1-L )C&amp;lt;br&amp;gt; v  +L C  f&amp;lt;br&amp;gt;      t c&amp;lt;br&amp;gt;A =A A&lt;br /&gt;
| C =L&amp;lt;br&amp;gt; v  t&amp;lt;br&amp;gt;&amp;lt;br&amp;gt; A =A&lt;br /&gt;
|-&lt;br /&gt;
! GL_INTENSITY&lt;br /&gt;
| C =C I&amp;lt;br&amp;gt; v  f t&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A I&amp;lt;br&amp;gt; v  f t&lt;br /&gt;
| undefined&lt;br /&gt;
| C =(1-I )C&amp;lt;br&amp;gt; v +I	Ct  f&amp;lt;br&amp;gt;     t c&amp;lt;br&amp;gt;A =(1-I )A&amp;lt;br&amp;gt; v +I	At  f&lt;br /&gt;
| C =I&amp;lt;br&amp;gt; v  t&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =I&amp;lt;br&amp;gt; v  t&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGB&amp;lt;br&amp;gt;3&lt;br /&gt;
| C =C C&amp;lt;br&amp;gt; v  t f&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A&lt;br /&gt;
| C =C&amp;lt;br&amp;gt; v  t&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A&lt;br /&gt;
| C =(1-C  C&amp;lt;br&amp;gt; v  +C C) f&amp;lt;br&amp;gt;t c&amp;lt;br&amp;gt;A =A&lt;br /&gt;
| C =C&amp;lt;br&amp;gt;v  t&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A&lt;br /&gt;
|-&lt;br /&gt;
! GL_RGBA&amp;lt;br&amp;gt;4&lt;br /&gt;
| C =C C&amp;lt;br&amp;gt; v  t f&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A A&lt;br /&gt;
| C =(1-A )C&amp;lt;br&amp;gt; v +A Ct  f&amp;lt;br&amp;gt; t t&amp;lt;br&amp;gt;A =A&lt;br /&gt;
| C =(1-C  C&amp;lt;br&amp;gt; v  +C C) f&amp;lt;br&amp;gt; t c&amp;lt;br&amp;gt;A =A A&lt;br /&gt;
| C =C&amp;lt;br&amp;gt;v  t&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;A =A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Wenn ''pname'' vom Typ '''GL_TEXTURE_ENV_COLOR''' ist, ist '''params''' ein Pointer auf ein Array, das eine Farbe im RGBA-Format enhält. Farbkomponenten aus Integer-Werten werden linear interpretiert, so dass der größte positive Integer-Wert auf 1.0 und der kleinste negative Wert auf -1.0 fällt. Die Werte werden in den [0,1]-Bereich eingepasst, wenn sie spezifizert werden. Cc enthält diese vier Werte.&lt;br /&gt;
&lt;br /&gt;
Werden keine Werte zugewiesen, dann hat '''GL_TEXTURE_ENV_MODE''' den Wert '''GL_MODULATE''' und '''GL_TEXTRE_ENV_COLOR''' die Werte (0, 0, 0, 0).&lt;br /&gt;
					&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
'''GL_REPLACE''' ist nur verfügbar, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Interne Formate anders als 1, 2, 3 oder 4 dürften nur nutzbar sein, wenn die OpenGL-Version gleich oder höher als 1.1 ist.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Änderungen ==&lt;br /&gt;
Folgende Erweiterungen hat die Funktion erfahren:&lt;br /&gt;
=== Ab OpenGL Version 1.2.1 ===&lt;br /&gt;
Wenn mehrere [[Texture Stage]]s durch [[GL_ARB_multitexturing]] verwendet werden, so kann für jede [[Texture Stage]] die TexEnv-Funktion extra angegeben werden.&lt;br /&gt;
&lt;br /&gt;
=== Ab OpenGL Version 1.3 ===&lt;br /&gt;
Wenn glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE_ARB) verwendet wird, so wird die Berechnung der entsprechenden [[Texture Stage]] durch [[GL_ARB_texture_env_combine]] ersetzt.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fehlermeldungen ==&lt;br /&gt;
'''GL_INVALID_ENUM''' wird generiert, wenn ''target'' oder ''pname'' keine der akzeptablen, definierten Werte ist, oder wenn ''params'' eine definierte Konstante haben soll (abhängig vom Wert von ''pname'') und keine hat. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''GL_INVALID_OPERATION''' wird generiert, wenn glTexEnv innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Zugehörige Wertrückgaben ==&lt;br /&gt;
[[glGetTexEnv]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
[[glCopyPixels]], [[glCopyTexImage1D]], [[glCopyTexImage2D]], [[glCopyTexSubImage1D]], [[glCopyTexSubImage2D]], [[glTexImage1D]], [[glTexImage2D]], [[glTexParameter]], [[glTexSubImage1D]], [[glTexSubImage2D]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Kategorie:GL|TexEnv]]&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:Convolution&amp;diff=16775</id>
		<title>Diskussion:Convolution</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:Convolution&amp;diff=16775"/>
				<updated>2006-04-02T17:28:24Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Kantendedetektion?==&lt;br /&gt;
&lt;br /&gt;
Sollte das nicht eher KantendeTektion heissen?&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Luketheduke|luketheduke]] 19:28, 2. Apr 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16771</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16771"/>
				<updated>2006-04-02T10:21:09Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Die Community aktuell */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren] - Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Community aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vor allem '''SDL''' als Thema in der DGL Community auf. Plattformunabhängige Programmierung wurde dadurch zunehmend häufiger ein Ziel der DGLer, was im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]] gipfelte.&lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer &amp;quot;Randgruppen-Randgruppe&amp;quot; (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welcher Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei dass DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur Zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügung. Neben diesem altruistischen Effekt hilft das Wiki auch, die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler, die von unseren Mitgliedern gefunden werden, sofort berichtigt werden können. (Sie befinden sich gerade im DGL-Wiki ;-))&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar, die Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl Original DGL-Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL &amp;lt;-&amp;gt; Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Kommentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan / SOS) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flooding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Ausfall der Domain&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC-Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL-Tutorials ins Wiki &amp;lt;br&amp;gt; DGL-Mitglieder starten DGL-Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland will sich von seiner IDE-Sparte trennen&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16770</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16770"/>
				<updated>2006-04-02T10:17:53Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Die Community aktuell */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren] - Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Community aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vor allem '''SDL''' als Thema in der DGL Comunity auf. Plattformunabhängige Programmierung wurde somit zunehmend häufiger ein Ziel der DGLer. Dies gipfelte im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]]. &lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer &amp;quot;Randgruppen-Randgruppe&amp;quot; (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welcher Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei dass DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur Zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügung. Neben diesem altruistischen Effekt hilft das Wiki auch, die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler, die von unseren Mitgliedern gefunden werden, sofort berichtigt werden können. (Sie befinden sich gerade im DGL-Wiki ;-))&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar, die Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl Original DGL-Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL &amp;lt;-&amp;gt; Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Kommentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan / SOS) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flooding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Ausfall der Domain&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC-Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL-Tutorials ins Wiki &amp;lt;br&amp;gt; DGL-Mitglieder starten DGL-Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland will sich von seiner IDE-Sparte trennen&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16769</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16769"/>
				<updated>2006-04-02T10:16:45Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Die Community aktuell */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren] - Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Community aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vor allem '''SDL''' als Thema in der DGL Comunity auf. Plattformunabhängige Programmierung wurde somit zunehmend häufiger ein Ziel der DGLer. Dies gipfelte im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]]. &lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer &amp;quot;Randgruppen-Randgruppe&amp;quot; (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welcher Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei dass DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur Zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügen. Neben diesem altruistischen Effekt hilft das Wiki auch noch die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler, die von unseren Mitgliedern gefunden werden, sofort entfernt werden können. (Sie befinden sich gerade im DGL-Wiki ;-))&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar, die Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl Original DGL-Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL &amp;lt;-&amp;gt; Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Kommentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan / SOS) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flooding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Ausfall der Domain&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC-Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL-Tutorials ins Wiki &amp;lt;br&amp;gt; DGL-Mitglieder starten DGL-Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland will sich von seiner IDE-Sparte trennen&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:DelphiGL&amp;diff=16768</id>
		<title>Diskussion:DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:DelphiGL&amp;diff=16768"/>
				<updated>2006-04-02T10:11:31Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;So wie's aussieht gab's hier wohl keine &amp;quot;frühsten Anfänge&amp;quot; ;-) Die DGL war auf einmal da :P&lt;br /&gt;
&lt;br /&gt;
Ne, wäre echt schön, wenn hier einmal eine kleine Geschichtsbeschreibung ähnlich der für [[omwiki:Projektgeschichte|Projektgeschichte für Omorphia (ext)]] zu finden wäre.&lt;br /&gt;
&lt;br /&gt;
Ich kann leider zu diesem Beitrag nichts selber beisteuern, da ich erst wesentlich später zur DGLC gekommen bin.&lt;br /&gt;
&lt;br /&gt;
MfG, --[[Benutzer:BenBE|BenBE]] 21:05, 14. Dez 2005 (CET)&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
Hallo, bei der Bildunterschrift zum Diagramm &amp;quot;Mitgliederentwicklung&amp;quot; kann ich mit den Zahlen &amp;quot;18.09&amp;quot;, &amp;quot;21.83&amp;quot; und &amp;quot;25.83&amp;quot; kaum was anfangen. Trennpunkte müssten ja wohl beim Tausender-Schritt stehen (&amp;quot;1.809&amp;quot;), und Dezimalstellen kommen mir 1. unwahrscheinlich vor und 2. im Deutschen bitte ein Komma. Oder zumindest einen Hinweis.&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Luketheduke|luketheduke]] 12:11, 2. Apr 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Kategorie_Diskussion:Exzellent&amp;diff=16767</id>
		<title>Kategorie Diskussion:Exzellent</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Kategorie_Diskussion:Exzellent&amp;diff=16767"/>
				<updated>2006-04-02T10:06:14Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Kandidatenliste */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Vorraussetzungen für Exzellente Artikel=&lt;br /&gt;
Hier könnt ihr Artikel vorschlagen welche ihr als &amp;quot;exzellenten Artikel&amp;quot; einstufen würdet.&lt;br /&gt;
&lt;br /&gt;
Folgende Punkte '''müssen''' erfüllt sein:&lt;br /&gt;
* Kein Sackgassenartikel - Artikel muss auf andere Artikel direkt (nicht über Code) verlinken&lt;br /&gt;
* Kein Plain Text - Artikel muss eine einheitliche Formatierung aufweisen&lt;br /&gt;
* Bilder - Artikel muss mindestens ein Bild/Grafik besitzen&lt;br /&gt;
* Vollständig - Der Artikel muss das Thema umfassend behandeln&lt;br /&gt;
* Kein Tutorial - Der Artikel darf nicht der [[:Kategorie:Tutorial|Kategorie Tutorial]] angehören.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit ein Artikel als '''exezellent''' eingestuft wird müssen:&lt;br /&gt;
* 5 Wiki-User der Wahl zustimmen darunter mindestens ein Moderator,&lt;br /&gt;
* keine Gegenstimmen bestehen,&lt;br /&gt;
* die Vorraussetzungen von oben gelten.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=Kandidatenliste=&lt;br /&gt;
Um einen Artikel zur Kandidatenliste hinzuzufügen bitte den Nachfolgenden Code vor dem Ende (&amp;quot;&amp;lt;nowiki&amp;gt;|}&amp;lt;/nowiki&amp;gt;&amp;quot;) der Tabelle einfügen:&lt;br /&gt;
&lt;br /&gt;
 |&amp;lt;nowiki&amp;gt;[[Artikelname]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 |&lt;br /&gt;
 |&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
&lt;br /&gt;
Um eine Stimme abzugeben, kopiert ihr bitte den Wiki-Code &amp;quot;&amp;lt;nowiki&amp;gt;--~~~~&amp;lt;/nowiki&amp;gt;&amp;quot; in die entsprechende Spalte. Das Wiki generiert daraus eure Unterschrift (Signatur).&lt;br /&gt;
&lt;br /&gt;
Falls ihr eine Gegenstimme abgebt, muss eine Begründung dazu gegeben werden.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
!width=&amp;quot;15%&amp;quot;|Vorgeschlagener Artikel&lt;br /&gt;
!width=&amp;quot;20%&amp;quot;|Beführworter&lt;br /&gt;
!width=&amp;quot;20%&amp;quot;|Gegner&lt;br /&gt;
!width=&amp;quot;45%&amp;quot;|Begründung für Gegenstimme / Diskussion&lt;br /&gt;
|-&lt;br /&gt;
|[[glShadeModel]]&lt;br /&gt;
| --[[Benutzer:Flash|Flash]] 14:39, 13. Mär 2006 (CET),&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Average Idiot|Average Idiot]] 13:25, 21. Mär 2006 (CET),&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:I0n0s|I0n0s]] 15:25, 28. Mär 2006 (CEST), &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|[[glLineStipple]]&lt;br /&gt;
| --[[Benutzer:Flash|Flash]] 14:53, 20. Mär 2006 (CET),&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|[[Perlin Noise]]&lt;br /&gt;
| --[[Benutzer:Flo|Flo]] 22:43, 21. Mär 2006 (CET), &lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:I0n0s|I0n0s]] 17:54, 25. Mär 2006 (CET),&lt;br /&gt;
&lt;br /&gt;
| --[[Benutzer:Flash|Flash]] 21:54, 25. Mär 2006 (CET)&lt;br /&gt;
|Prinzipiell bin ich auch für diesen Artikel. Allerdings finde ich es blöd wenn ein Artikel wie dieser (der schon fast als Tutorial angesehen werden könnte) mit einem Codeblock endet. Falls also jemand (passenderweise Lyr) ein Schlusswort hinzufügen könnte, indem eventuell ein kleines Perlin Noise Beispielprogramm verlinkt ist, hätte der Artikel sofort meine Zustimmung. (Vorausgesetzt Lyr selbst sieht den Artikel sonst als umfassend an.) --[[Benutzer:Flash|Flash]] 21:44, 25. Mär 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
Ich muss leider noch etwas einfordern. Und zwar ist der Artikel ein Sackgassenartikel. Ich glaubte auch erst, dass das auf Grund der Länge nicht sein kann, aber der Artikel verlinkt auf 2 Artikel die dann Sackgassen sind. D.h. der Leser befindet sich in einer Blase im Wiki. Das muss noch geändert werden. Das massive verlinken auf den [[Interpolation]] Artikel hilft da leider auch nicht weiter. Das zusammen mit den ersten Punkten bringt mich dazu eine Gegenstimme abzugeben.&lt;br /&gt;
--[[Benutzer:Flash|Flash]] 21:54, 25. Mär 2006 (CET)&lt;br /&gt;
|-&lt;br /&gt;
|[[DelphiGL]]&lt;br /&gt;
| --[[Benutzer:Luketheduke|luketheduke]] 12:06, 2. Apr 2006 (CEST)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Auswahlkriterien ==&lt;br /&gt;
&lt;br /&gt;
Ich finde die Asuwahlkriterien etwas strange. Schließlich sind Tutorials auch Artikel und in den meisten Fällen noch dazu ziemlich gute. Warum sollten diese also ausgeschlossen werden? Vermitteln ja schließlich meist recht anschaulich viel Information. Also exakt das, was nen guten Artikel ausmacht.&lt;br /&gt;
--[[Benutzer:Frase|Frase]] 18:48, 18. Mär 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tutorials sind einzelarbeiten die von einer Person gemacht wurden und die eigentlich auch nur von dieser zu Verantworten/Verbessern sind. Die Auszeichnung soll gerade dafür sorgen die &amp;quot;graue Maus&amp;quot; Artikel aufzuwerten. Das unsere Tutorials alle Exzellent sind steht außer Frage. Die Auszeichnung heißt aber nicht um sonst &amp;quot;Exzellente Artikel&amp;quot; und nicht &amp;quot;Exzellente Tutorials&amp;quot;. Außerdem soll die Auzeichnung erreichen, dass die Nutzer einfach mal ins Wiki reinlesen. Tutorials sind in sich geschlossen und verlinken kaum auf andere Artikel. Sie behandeln ein Thema, und das ist gut so.&lt;br /&gt;
--[[Benutzer:Flash|Flash]] 01:11, 19. Mär 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Und es kann die Leute animieren die Artikel den Kritierie anzupassen bzw. eigene Artikel einzustellen.&lt;br /&gt;
So hat es zumindest bei mir funktioniert. Ich habe jetzt sogar Bilder! :lol:&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:I0n0s|I0n0s]] 04:35, 19. Mär 2006 (CET)&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16766</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16766"/>
				<updated>2006-04-02T10:00:42Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren] - Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Comunity aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vor allem '''SDL''' als Thema in der DGL Comunity auf. Plattformunabhängige Programmierung wurde somit zunehmend häufiger ein Ziel der DGLer. Dies gipfelte im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]]. &lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer &amp;quot;Randgruppen-Randgruppe&amp;quot; (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welcher Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei dass DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur Zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügen. Neben diesem altruistischen Effekt hilft das Wiki auch noch die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler, die von unseren Mitgliedern gefunden werden, sofort entfernt werden können. (Sie befinden sich gerade im DGL-Wiki ;-))&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar, die Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl Original DGL-Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL &amp;lt;-&amp;gt; Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Kommentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan / SOS) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flooding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Ausfall der Domain&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC-Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL-Tutorials ins Wiki &amp;lt;br&amp;gt; DGL-Mitglieder starten DGL-Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland will sich von seiner IDE-Sparte trennen&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16765</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16765"/>
				<updated>2006-04-02T09:59:36Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Historie im Überblick */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren] - Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Comunity aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vor allem '''SDL''' als Thema in der DGL Comunity auf. Plattformunabhängige Programmierung wurde somit zunehmend häufiger ein Ziel der DGLer. Dies gipfelte im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]]. &lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer &amp;quot;Randgruppen-Randgruppe&amp;quot; (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welcher Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei dass DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur Zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügen. Neben diesem altruistischen Effekt hilft das Wiki auch noch die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler, die von unseren Mitgliedern gefunden werden, sofort entfernt werden können. (Sie befinden sich gerade im DGL-Wiki ;-))&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar, die Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl Original DGL-Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL &amp;lt;-&amp;gt; Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Kommentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan / SOS) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flooding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Ausfall der Domain&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC-Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitglieder-Marke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL-Tutorials ins Wiki &amp;lt;br&amp;gt; DGL-Mitglieder starten DGL-Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland will sich von seiner IDE-Sparte trennen&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Link==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16764</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16764"/>
				<updated>2006-04-02T09:55:36Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Die Comunity aktuell */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren] - Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Comunity aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vor allem '''SDL''' als Thema in der DGL Comunity auf. Plattformunabhängige Programmierung wurde somit zunehmend häufiger ein Ziel der DGLer. Dies gipfelte im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]]. &lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer &amp;quot;Randgruppen-Randgruppe&amp;quot; (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welcher Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei dass DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur Zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügen. Neben diesem altruistischen Effekt hilft das Wiki auch noch die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler, die von unseren Mitgliedern gefunden werden, sofort entfernt werden können. (Sie befinden sich gerade im DGL-Wiki ;-))&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar, die Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl orginale DGL_Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Komentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitgliedermarke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flodding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Domain Ausfall&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitgliedermarke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL  Tutorials ins Wiki &amp;lt;br&amp;gt; DGL Mitglieder starten DGL Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland trennt sich von seiner IDE-Sparte&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Link==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16763</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16763"/>
				<updated>2006-04-02T09:52:08Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Bisherige April-News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren] - Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Comunity Aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vorallem '''SDL''' als Thema in der DGL Comunity auf. Plattformunabhängige Programmierung wurde somit zunehmend häufiger ein Ziel der DGLer. Dies gipfelte im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]]. &lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer Randgruppen-Randgruppe (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welche Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei das DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügen. Neben diesem altruistischen Effekt hilft das Wiki auch noch die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler die von unseren Mitgliedern gefunden werden, sofort entfernt werden können.&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar welche Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl orginale DGL_Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Komentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitgliedermarke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flodding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Domain Ausfall&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitgliedermarke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL  Tutorials ins Wiki &amp;lt;br&amp;gt; DGL Mitglieder starten DGL Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland trennt sich von seiner IDE-Sparte&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Link==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16762</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=16762"/>
				<updated>2006-04-02T09:51:24Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Die Frühsten Anfänge */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
|&amp;lt;div align=&amp;quot;right&amp;quot;&amp;gt;[http://delphiGL.com http://delphigl.com/gfx/banner/banner256x64.gif]&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|&lt;br /&gt;
Monatliches Wachstum der DGL Community:&amp;lt;br&amp;gt;&lt;br /&gt;
- insgesamt: 18.09 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 12 Monate: 21.83 Mitglieder.&amp;lt;br&amp;gt;&lt;br /&gt;
- letzten 6 Monate: 25.83 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für Liebhaber von Statistiken: &lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}}&lt;br /&gt;
|+Halbjährliche Mitgliederentwicklung&lt;br /&gt;
!Zeitraum&lt;br /&gt;
!durchschnittlicher Zuwachs&lt;br /&gt;
|-&lt;br /&gt;
|01.06.02 - 01.11.02&lt;br /&gt;
|13&lt;br /&gt;
|-&lt;br /&gt;
|01.12.02 - 01.05.03&lt;br /&gt;
|13.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.03 - 01.11.03&lt;br /&gt;
|17.66&lt;br /&gt;
|-&lt;br /&gt;
|01.12.03 - 01.05.04&lt;br /&gt;
|16&lt;br /&gt;
|-&lt;br /&gt;
|01.06.04 - 01.11.04&lt;br /&gt;
|18&lt;br /&gt;
|-&lt;br /&gt;
|01.12.04 - 01.05.05&lt;br /&gt;
|19.5&lt;br /&gt;
|-&lt;br /&gt;
|01.06.05 - 01.11.05&lt;br /&gt;
|19.83&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
Gerüchteweise hat alles angefangen an einem schönen 1. April 2002 mit einer knallig roten Website auf der chaoszone.de (hat inzwischen den Besitzer gewechselt) Domain. Inszeniert von Phobeus und von seinen damaligen Direct3D Kollegen als Aprilscherz verkannt. Als die Seite dann einige Zeit stand wurde die Optik der Seite von Lithander überarbeitet.&lt;br /&gt;
&lt;br /&gt;
Die Aprilscherze haben dann auch weiterhin einen hohen Stellenwert in der Community. Zwischen 0.00 und 1.00 Uhr erscheint an jedem 1. April ein erschreckender Newsbeitrag von Phobeus, der den Untergang des Abendlandes, zumindest aber sämtlicher Menschenrechte prophezeit bzw. als bereits vollzogen darstellt. Die News wird immer mit vielen Links zu echten Ereignissen und Schlagwörtern wie &amp;quot;CIA&amp;quot;, &amp;quot;NSA&amp;quot;, &amp;quot;EU-Kommission&amp;quot;, aber immer auch mit Bezug auf die OpenGL-Entwicklung (&amp;quot;GL_ARB_QAIDA&amp;quot;) gewürzt, so dass es einem zuerst beim Lesen, und dann nach der Auflösung und Präsentation der erschreckend harten Fakten kalt den Rücken herunterläuft.&lt;br /&gt;
&lt;br /&gt;
====Bisherige April-News====&lt;br /&gt;
&lt;br /&gt;
1. April 2006: [http://www.delphigl.com/forum/viewtopic.php?t=5398 Sicherheitsrichtlinie im Schnellverfahren]- Die NSA platziert Backdoors in fast allen Systemen, darunter die OpenGL-Extension &amp;quot;GL_ARB_QAIDA&amp;quot; - alle persönlichen Daten sollen im Klartext zu entsprechenden Stellen weitergeleitet werden...&lt;br /&gt;
&lt;br /&gt;
1. April 2005: [http://www.delphigl.com/forum/viewtopic.php?t=3993 Ein schwarzer Tag...] - Softwarepatente machen fast alle Internetangebote von Open-Source-Gruppen illegal. Erste Homepages gehen bereits vom Netz.&lt;br /&gt;
&lt;br /&gt;
''Dieser Teil wird, sobald die Betreffenden Personen Zeit finden, um weitere Anekdoten ergänzt.''&lt;br /&gt;
&lt;br /&gt;
===Die Comunity Aktuell===&lt;br /&gt;
Seit Mitte 2005 kam neben '''OpenGL''' vorallem '''SDL''' als Thema in der DGL Comunity auf. Plattformunabhängige Programmierung wurde somit zunehmend häufiger ein Ziel der DGLer. Dies gipfelte im Start der Übersetzung der [[SDL-Funktionsübersicht|SDL-Dokumentation im DGL-Wiki]]. &lt;br /&gt;
&lt;br /&gt;
Des weiteren entwickelte sich DGL von einer Randgruppen-Randgruppe (Zitat: Phobeus) hin zu einem OpenGL-Forum, unabhängig welche Sprache man den Vorzug gibt. Zwar sind die '''Delphi'''- bzw. '''FPC'''-Programmierer immer noch in der Überzahl, aber auch '''C++'''ler, '''C#'''- und '''Java'''-Programmierer sieht man häufiger.&lt;br /&gt;
&lt;br /&gt;
Neben diesen Veränderungen befassten sich einige Mitglieder über längere Zeit hinweg mit '''.Net''' und den Chancen die dieser neue Weg mit sich bringt. Da .Net vorallem in Linuxkreisen recht umstritten ist kam es zwangsläufig immer wieder zu recht kontroversen Diskussionen. Trotz alledem trug diese Bewegung dazu bei das DGL auch weiterhin Fragen aus einem breiten Spektrum beantworten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DGL ist aber nicht nur als Forum aktiv. Zur zeit bestreitet DelphiGL.com 3 Großprojekte:&lt;br /&gt;
*[http://quake3.delphigl.com/index.php/Main_Page '''Quake3Delphi''']&lt;br /&gt;
:Das wohl '''spektakulärste Projekt''' der DGL ist die Portierung des öffentlichen Quake3 Codes von C++ nach Delphi. Dieses Projekt stellt den Nachfolger des [http://quake2delphi.sourceforge.net/ Quake2Delphi]-Projektes dar.&lt;br /&gt;
&lt;br /&gt;
*'''[[Hauptseite|DGL-Wiki]]'''&lt;br /&gt;
:Das DGL-Wiki ist das wohl '''nützlichste Projekt''' der DGL, denn es bündelt das Wissen vieler OpenGLer und stellt es in deutscher Sprache Interessierten zur Verfügen. Neben diesem altruistischen Effekt hilft das Wiki auch noch die Wartbarkeit zu erhöhen. Folge dessen ist, dass Fehler die von unseren Mitgliedern gefunden werden, sofort entfernt werden können.&lt;br /&gt;
&lt;br /&gt;
*'''[[DGLSDK]]'''&lt;br /&gt;
:Der DGLSDK ist das '''hilfreichste Projekt''' der DGL-Comunity. Bereits 2003 war eine erste Version verfügbar, entwickelte sich aber nicht wie erhofft. Seit 2005 ist nun eine verbesserte und ständig aktualisierte Version verfügbar welche Einsteigern in die OpenGL-Programmierung mit Delphi bzw. FPC alle nötigen Werkzeuge nicht nur an die Hand gibt, sondern auch gleich noch einrichtet.&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DGL_Map.jpg|right|framed|Die [http://www.frappr.com/delphigl orginale DGL_Map] gibt euch einen Überblick, wo die DGL-Mitglieder wohnen.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Komentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&amp;lt;br&amp;gt;&lt;br /&gt;
'''''100 Mitgliedermarke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
Flodding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Domain Ausfall&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&amp;lt;br&amp;gt;&lt;br /&gt;
'''''500 Mitgliedermarke erreicht'''''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2005||729|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2006||767|| '''DGL Wiki Phasen 1 u. 2 abgeschlossen'''&amp;lt;br&amp;gt; Weihnachtsaktion: Portierung der DGL  Tutorials ins Wiki &amp;lt;br&amp;gt; DGL Mitglieder starten DGL Map bei &amp;quot;Frappr.com&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2006||797||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2006||832|| Borland trennt sich von seiner IDE-Sparte&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Link==&lt;br /&gt;
[http://www.delphiGL.com http://www.DelphiGL.com - Heimat der DGLer]&lt;br /&gt;
&lt;br /&gt;
[http://www.frappr.com/delphigl Link zur DGL_Map]&lt;br /&gt;
&lt;br /&gt;
[http://quake3.delphigl.com/index.php/Main_Page DGL-Projekt 'Quake3Delphi']&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=glPolygonMode&amp;diff=14570</id>
		<title>glPolygonMode</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=glPolygonMode&amp;diff=14570"/>
				<updated>2005-11-27T15:59:17Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Fehlermeldungen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= glPolygonMode =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Name ==&lt;br /&gt;
&lt;br /&gt;
'''glPolygonMode''' - wählt aus wie die einzelnen Polygone beim Rastern gezeichnet werden sollen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Delphi-Spezifikation ==&lt;br /&gt;
&lt;br /&gt;
procedure &amp;lt;b&amp;gt;glPolygonMode&amp;lt;/b&amp;gt;(face,mode: GLenum);&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Parameter ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=1 rules=all&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;''face''&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;Definiert auf welche Polygone mode angewendet werden soll. GL_FRONT bewirkt, dass mode nur auf nach Vorne gerichte Polygone angewandt wird. GL_BACK hingegen auf die nach hinten gerichteten. GL_FRONT_AND_BACK wirkt sich auf beide Seiten aus.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;''mode''&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;Gibt an wie die betroffenen Polygone gezeichnet werden sollen. Mögliche Werte sind GL_POINT, GL_LINE und GL_FILL. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Standardgemäß''' wird '''GL_FILL''' auf die '''Vorder- und Rückseite''' aller Polygone angewandt.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beschreibung == &lt;br /&gt;
&lt;br /&gt;
glPolygonMode beinflusst wie Polygone bei der Rasterung gezeichnet werden. Auf welche Polygone es eine Auswirkung haben soll, kann man mit face festlegen.Der Polygonmodus wirkt sich nur beim letzten Rastervorgang auf die Polygone aus. Möglicherweise wurde der Eckpunkt des Polygones bereits beleuchtet oder durch das Culling beinflusst, bevor der mit glPolygonMode gesetze Effekt einsetzt.&lt;br /&gt;
&amp;lt;table rules=all&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;GL_POINT&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;[[bild:gl_point.png]]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;Die Eckpunkte eines Polygones werden als einfache Punkte ohne Zwischenräume gezeichnet. Punktattribute wie GL_POINT_SIZE und GL_POINT_SMOOTH beinflussen die Wiedergabe der Punkte. Außer GL_POLYGONE_MODE haben andere Attribute keinerlei Auswirkung.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;GL_LINE&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;[[bild:gl_line.png]]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;Miteinander verbundene Eckpunkte werden miteinander durch eine Linie verbunden. Attribute, die die Darstellung von Linien beinflussen wie zum Beispiel GL_LINE_WIDTH und GL_LINE_SMOOTH, verändern auch hier das Aussehen der Linien. Außer GL_POLYGONE_MODE haben andere Attribute keinerlei Auswirkung. Die Darstellung eines solch gezeichneten Models wird häufig als Drahtgitter-Model bezeichnet. TODO: Habe den Part mit dem &amp;quot;Tüpfeln&amp;quot; rausgelassen. Da sollte man sich nochmal Gedanken drum machen.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;GL_FILL&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;[[bild:gl_fill.png]]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;Das gesamte Polygon mitsamt seines Inneren also z.B. mit seiner Textur wird gezeichnet. Beachtet bitte, dass andere Attribute wie GL_POLYGON_STIPPLE und GL_POLYGON_SMOOTH ebenfalls die Wiedergabe des Polygons beinflussen könen. GL_FILL ist der Wert, der als Standard beim Initalisieren gesetzt wird.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Weitere Beispiele==&lt;br /&gt;
Nachfolgend noch einige Beispiele zum PolygonMode. (Um Vorder- und Rückseite sichtbar zu machen wurde die Kugel mittels [[glClipPlane]] zerschnitten.)&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; rules=&amp;quot;all&amp;quot;&lt;br /&gt;
! GL_FILL &lt;br /&gt;
! GL_LINE&lt;br /&gt;
|-&lt;br /&gt;
|[[Bild:Kugel_FILL.jpg]]&lt;br /&gt;
|[[Bild:Kugel_LINE.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! GL_POINT&lt;br /&gt;
! Vorderseite GL_FILL &amp;lt;br&amp;gt;Rückseite GL_LINE&lt;br /&gt;
|-&lt;br /&gt;
|[[Bild:Kugel_POINT.jpg]]&lt;br /&gt;
|[[Bild:Kugel_MIX.jpg]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
Eckpunkte werden mit dem &amp;quot;Edge Flag&amp;quot; als an der Grenze anliegend markiert. Diese werden automatisch intern von OpenGL generiert, wenn die Polygone zerlegt werden. Wenn Ihr diese gezielt selbst setzen wollt, müsst ihr [[glEdgeFlag]] nutzen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fehlermeldungen ==&lt;br /&gt;
&lt;br /&gt;
GL_INVALID_ENUM wird generiert, wenn entweder face oder mode keine gültigen Werte waren.&amp;lt;br&amp;gt;&lt;br /&gt;
GL_INVALID_OPERATION wird generiert, wenn diese Funktion innerhalb eines glBegin/glEnd-Blocks aufgerufen wird.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
&lt;br /&gt;
[[glBegin]], [[glEdgeFlag]], [[glLineStipple]], [[glLineWidth]], [[glPointSize]], [[glPolygonStipple]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:GL|PolygonMode]]&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=14384</id>
		<title>DelphiGL</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=DelphiGL&amp;diff=14384"/>
				<updated>2005-11-19T19:57:32Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Historie im Überblick */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschäftigt sich mit [http://DelphiGL.com DelphiGL.com].&amp;lt;br&amp;gt; &lt;br /&gt;
DelphiGL ist die Website welche dieses Wiki betreibt und das angeschlossene Forum ist der feste Hafen für deutschsprachige OpenGL-Programmierer im sturmumtosten GrafikAPI-Ozean.&lt;br /&gt;
&lt;br /&gt;
==Mitgliederentwicklung==&lt;br /&gt;
[[Bild:DGL_Mitgliederzahlen.jpg|center|framed|Die DGL-Community wächst monatlich im Durchschnitt um 16 Mitglieder.]]&lt;br /&gt;
&lt;br /&gt;
==Geschichte von DelphiGL.com==&lt;br /&gt;
===Die Frühsten Anfänge===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Historie im Überblick===&lt;br /&gt;
Die nachfolgende Tabelle versucht, aus den Newsmeldungen die im Forum von DelphiGL.com zu finden sind, zumindest ausschnittsweise die Geschichte von DelphiGL.com zu rekonstruieren.&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
{|{{Prettytable_B1}} &lt;br /&gt;
!Datum||Mitglieder&amp;lt;br&amp;gt; bis ''Datum''||Veränderungen/Ereignisse &amp;lt;br&amp;gt; bis ''Datum''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2002||13||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2002||22||erste OpenGL Direct3D Schlammschlacht&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2002||31||Member Forum&amp;lt;br&amp;gt;&lt;br /&gt;
Erste Idee Page ins englische zu übersetzen (per McClaw)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2002||42||Erster Umzug von DGL&amp;lt;br&amp;gt;&lt;br /&gt;
Spruch des Tages&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2002||58||SchodMC wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
DGL-Upload-Center&amp;lt;br&amp;gt;&lt;br /&gt;
Poll&amp;lt;br&amp;gt;&lt;br /&gt;
Recent Uploads&amp;lt;br&amp;gt;&lt;br /&gt;
Featured Sites&amp;lt;br&amp;gt;&lt;br /&gt;
Bild der Woche&amp;lt;br&amp;gt;&lt;br /&gt;
Snippets&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2002||78||TexturenTutorial&amp;lt;br&amp;gt;&lt;br /&gt;
Foren FAQ&lt;br /&gt;
&amp;lt;br&amp;gt;Poll Archiv&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2002||87||DelphiGL.com Domain&amp;lt;br&amp;gt; &lt;br /&gt;
Komentare zu Newsmeldungen&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2003||106||Neues DGL Logo&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2003||123||Umzug auf neuen Server&amp;lt;br&amp;gt;&lt;br /&gt;
Sascha Willems (SonOfSatan) wird Mod&amp;lt;br&amp;gt;&lt;br /&gt;
Tutorials als CHM-Version&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2003||136||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2003||147||Bomberman Tutorial 2&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2003||159||Projekteforum eingerichtet&lt;br /&gt;
&amp;lt;br&amp;gt;Phobeus stellt Firefox vor (damals Firebird)&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2003||175||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2003||196||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2003||212||IE erkennt DGL als nicht vertrauensvoll&amp;lt;br&amp;gt;&lt;br /&gt;
Flodding durch MS-Bots&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2003||223||Domain Ausfall&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2003||245||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2003||265||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2003||277||Erster IRC Chat&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2004||296||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2004||308||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2004||323||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2004||347||Borland Developer Network und &lt;br /&gt;
Code Central News&amp;lt;br&amp;gt;&lt;br /&gt;
W32.Beagle.J@MM Wurm nimmt DGL-Identität an.&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2004||361||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2004||378||dglOpenGL.pas - Version 1.4&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2004||403||'''DGL Wiki gestartet'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2004||421||Atom Feed&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2004||438||dglOpenGL.pas - Version 1.4B&amp;lt;br&amp;gt;'''DGL Wiki hat 100 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2004||451||dglOpenGL.pas goes FreePascal&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2004||469||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.12.2004||493||.Net Forum&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.01.2005||512||dglOpenGL.pas - Version 1.6&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.02.2005||531||dglOpenGL.pas - Version 1.7&amp;lt;br&amp;gt;'''DGL Wiki hat 250 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.03.2005||552||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.04.2005||570||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.05.2005||586||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.06.2005||604||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.07.2005||617||DGLSDK 2005.1&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.08.2005||635||&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.09.2005||661||Quake3Delphi&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.10.2005||677||Diskussion zum Thema &amp;quot;Windows Vista &amp;amp; OpenGL&amp;quot;&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|01.11.2005||705|| '''DGL Wiki hat 500 Artikel'''&lt;br /&gt;
|- align = &amp;quot;center&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Link==&lt;br /&gt;
http://www.delphiGL.com&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14191</id>
		<title>Diskussion:glDrawArrays</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14191"/>
				<updated>2005-11-08T17:13:34Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''glEnableClientState, glDisableClientState''' Sind die Neu? Die stehn bei mir gar net in der Hilfe (und bisher auch net in der Funktionsübersicht)&lt;br /&gt;
&lt;br /&gt;
Kevin&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Nein, die gibts schon solange wie es OpenGL gibt. OpenGL war ja von Anfang an eine Client/Server-API und von daher gibt es Funktionen die clientseitig laufen und welche die serverseitig laufen. gl*ClientState benötigt man für erstere, glEnable/glDisable für letztere. Wenn man die GL nur auf einem Rechner laufen hat, dann laufen dort gleichzeitig Client UND Server ab.&lt;br /&gt;
&lt;br /&gt;
P.S. : Welche Hilfe nutzt du denn? Ich rate dir eh zu den offiziellen glManPages von 3DLabs, da die sehr viel aktueller sind als z.B. die Delphi-Hilfe.&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Sascha Willems|Sascha Willems]] 13:18, 28. Jul 2004 (CEST)&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
gldrawarray &amp;lt;&amp;gt; gldrawarray''s'' ?&lt;br /&gt;
&lt;br /&gt;
in der beschreibung treten beide wörter auf, und es wird nicht erklärt, warum...&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14190</id>
		<title>Diskussion:glDrawArrays</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14190"/>
				<updated>2005-11-08T17:13:08Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''glEnableClientState, glDisableClientState''' Sind die Neu? Die stehn bei mir gar net in der Hilfe (und bisher auch net in der Funktionsübersicht)&lt;br /&gt;
&lt;br /&gt;
Kevin&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Nein, die gibts schon solange wie es OpenGL gibt. OpenGL war ja von Anfang an eine Client/Server-API und von daher gibt es Funktionen die clientseitig laufen und welche die serverseitig laufen. gl*ClientState benötigt man für erstere, glEnable/glDisable für letztere. Wenn man die GL nur auf einem Rechner laufen hat, dann laufen dort gleichzeitig Client UND Server ab.&lt;br /&gt;
&lt;br /&gt;
P.S. : Welche Hilfe nutzt du denn? Ich rate dir eh zu den offiziellen glManPages von 3DLabs, da die sehr viel aktueller sind als z.B. die Delphi-Hilfe.&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Sascha Willems|Sascha Willems]] 13:18, 28. Jul 2004 (CEST)&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
gldrawarray &amp;lt;&amp;gt; gldrawarray''s'' ?&lt;br /&gt;
&lt;br /&gt;
in der beschreibung treten beide wörter auf, und es wird nicht erklärt, warum...&lt;br /&gt;
&lt;br /&gt;
--~&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14189</id>
		<title>Diskussion:glDrawArrays</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14189"/>
				<updated>2005-11-08T17:12:52Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''glEnableClientState, glDisableClientState''' Sind die Neu? Die stehn bei mir gar net in der Hilfe (und bisher auch net in der Funktionsübersicht)&lt;br /&gt;
&lt;br /&gt;
Kevin&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Nein, die gibts schon solange wie es OpenGL gibt. OpenGL war ja von Anfang an eine Client/Server-API und von daher gibt es Funktionen die clientseitig laufen und welche die serverseitig laufen. gl*ClientState benötigt man für erstere, glEnable/glDisable für letztere. Wenn man die GL nur auf einem Rechner laufen hat, dann laufen dort gleichzeitig Client UND Server ab.&lt;br /&gt;
&lt;br /&gt;
P.S. : Welche Hilfe nutzt du denn? Ich rate dir eh zu den offiziellen glManPages von 3DLabs, da die sehr viel aktueller sind als z.B. die Delphi-Hilfe.&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Sascha Willems|Sascha Willems]] 13:18, 28. Jul 2004 (CEST)&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
gldrawarray &amp;lt;&amp;gt; gldrawarray''s'' ?&lt;br /&gt;
&lt;br /&gt;
in der beschreibung treten beide wörter auf, und es wird nicht erklärt, warum...&lt;br /&gt;
&lt;br /&gt;
--&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14188</id>
		<title>Diskussion:glDrawArrays</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Diskussion:glDrawArrays&amp;diff=14188"/>
				<updated>2005-11-08T17:12:08Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''glEnableClientState, glDisableClientState''' Sind die Neu? Die stehn bei mir gar net in der Hilfe (und bisher auch net in der Funktionsübersicht)&lt;br /&gt;
&lt;br /&gt;
Kevin&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Nein, die gibts schon solange wie es OpenGL gibt. OpenGL war ja von Anfang an eine Client/Server-API und von daher gibt es Funktionen die clientseitig laufen und welche die serverseitig laufen. gl*ClientState benötigt man für erstere, glEnable/glDisable für letztere. Wenn man die GL nur auf einem Rechner laufen hat, dann laufen dort gleichzeitig Client UND Server ab.&lt;br /&gt;
&lt;br /&gt;
P.S. : Welche Hilfe nutzt du denn? Ich rate dir eh zu den offiziellen glManPages von 3DLabs, da die sehr viel aktueller sind als z.B. die Delphi-Hilfe.&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Sascha Willems|Sascha Willems]] 13:18, 28. Jul 2004 (CEST)&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
gldrawarray &amp;lt;&amp;gt; gldrawarray''s'' ?&lt;br /&gt;
&lt;br /&gt;
in der beschreibung treten beide wörter auf, und es wird nicht erklärt, warum...&lt;br /&gt;
&lt;br /&gt;
~~&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	<entry>
		<id>https://wiki.delphigl.com/index.php?title=Blenderscript&amp;diff=12954</id>
		<title>Blenderscript</title>
		<link rel="alternate" type="text/html" href="https://wiki.delphigl.com/index.php?title=Blenderscript&amp;diff=12954"/>
				<updated>2005-10-01T20:59:03Z</updated>
		
		<summary type="html">&lt;p&gt;Luketheduke: /* Blender exporter Script */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Blender exporter Script==&lt;br /&gt;
&lt;br /&gt;
Folgendes Blenderscript, welches in Python geschrieben ist, exportiert Mesh, Texturkoordinaten und Normalen. Es wurde von [[Benutzer:TAK2004|TAK2004]] geschrieben welcher es euch hiermit freistellt dieses zu erweitern, anzupassen oder einfach zu kopieren.&lt;br /&gt;
Zur Bedienung ist folgendes zu sagen:&lt;br /&gt;
*es ist auf korrekte Einrückung zu achten, da dadurch Codeblöcke, Funktionen und Einsprungspunkte erkannt werden&lt;br /&gt;
*die Datei wird an dem am Ende eingetragen Punkt gespeichert&lt;br /&gt;
*bevor das Script im File-&amp;gt;Export Menü erscheint muss das Script einmal interpretiert werden&lt;br /&gt;
*ein Script kann über ein Textfenster in Blender angezeigt und gestartet werden&lt;br /&gt;
*das Script achtet nicht auf die Rotation der Objekte, deswegen ist anzuraten durch folgende Tastenkombinationen die Objekte neu auszurichten : &amp;quot;a&amp;quot;(wählt alle Objekte aus/ab),&amp;quot;strg+s&amp;quot;(tranformiert Objektrotation mit dem Mesh und setz dann die rotation auf 0)&lt;br /&gt;
*es müssen Lichter,Empty und Kameras entfernt werden da diese sonst als Objekte interpretiert und falsch behandelt werden&lt;br /&gt;
&lt;br /&gt;
 #!BPY&lt;br /&gt;
 &lt;br /&gt;
 &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
 Name: '... Meshformat (.meshf)...'&lt;br /&gt;
 Blender: 234&lt;br /&gt;
 Group: 'Export'&lt;br /&gt;
 Tooltip: 'Exportiert die aktuelle Szene in das ... Format'&lt;br /&gt;
 &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 import struct&lt;br /&gt;
 import Blender&lt;br /&gt;
 import sys&lt;br /&gt;
 &lt;br /&gt;
 from Blender import NMesh&lt;br /&gt;
 from Blender import Image&lt;br /&gt;
 from Blender.NMesh import *&lt;br /&gt;
 from Blender.Image import *&lt;br /&gt;
 &lt;br /&gt;
 class TFace:&lt;br /&gt;
 	vertstart=0&lt;br /&gt;
 	vertcount=0&lt;br /&gt;
 &lt;br /&gt;
 class TObject:&lt;br /&gt;
 	posx=0&lt;br /&gt;
 	posy=0&lt;br /&gt;
 	posz=0&lt;br /&gt;
 	facestart=0&lt;br /&gt;
 	facecount=0&lt;br /&gt;
 &lt;br /&gt;
 class meshf:&lt;br /&gt;
 #header&lt;br /&gt;
 	Version=&amp;quot;meshf1&amp;quot;&lt;br /&gt;
  	NumOfVert=0&lt;br /&gt;
 	NumOfFace=0&lt;br /&gt;
  	NumOfObj=0&lt;br /&gt;
 #data&lt;br /&gt;
 &lt;br /&gt;
 	Verts=[]&lt;br /&gt;
 	Faces=[]&lt;br /&gt;
 	Meshs=[]&lt;br /&gt;
 	Texcoords=[]&lt;br /&gt;
 &lt;br /&gt;
 	size=0&lt;br /&gt;
 &lt;br /&gt;
 file=meshf&lt;br /&gt;
 &lt;br /&gt;
 #Funktion zum schreiben des Headers&lt;br /&gt;
 def writeheader():&lt;br /&gt;
 	iof.write(file.Version)&lt;br /&gt;
 	data=struct.pack(&amp;quot;iii&amp;quot;,file.NumOfVert,&lt;br /&gt;
  		                        file.NumOfFace,&lt;br /&gt;
  		                        file.NumOfObj)&lt;br /&gt;
 	iof.write(data)&lt;br /&gt;
 &lt;br /&gt;
 #Funktion zum schreiben des Datenteils&lt;br /&gt;
 def writedata():&lt;br /&gt;
 &lt;br /&gt;
 	#Verticekoordinaten&lt;br /&gt;
 	for v in file.Verts:&lt;br /&gt;
 		data=struct.pack(&amp;quot;fff&amp;quot;,v.co[0],v.co[1],v.co[2])&lt;br /&gt;
 		file.size=file.size+12&lt;br /&gt;
 		iof.write(data)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 	#Normalen&lt;br /&gt;
 	for v in file.Verts:&lt;br /&gt;
 		data=struct.pack(&amp;quot;fff&amp;quot;,v.no[0],v.no[1],v.no[2])&lt;br /&gt;
 		file.size=file.size+12&lt;br /&gt;
 		iof.write(data)&lt;br /&gt;
 &lt;br /&gt;
 	#Texkoordinaten&lt;br /&gt;
 	for t in file.Texcoords:&lt;br /&gt;
 		data=struct.pack(&amp;quot;ff&amp;quot;,t[0],t[1])&lt;br /&gt;
 		file.size=file.size+8&lt;br /&gt;
 		iof.write(data)&lt;br /&gt;
 &lt;br /&gt;
 	#Flächen&lt;br /&gt;
 	for f in file.Faces:&lt;br /&gt;
 		#vertstart,vertcount&lt;br /&gt;
 		data=struct.pack(&amp;quot;ii&amp;quot;,f.vertstart,f.vertcount)&lt;br /&gt;
 		iof.write(data)&lt;br /&gt;
 		file.size=file.size+8&lt;br /&gt;
 &lt;br /&gt;
 	#Objekte&lt;br /&gt;
 	for o in file.Meshs:&lt;br /&gt;
 		data=struct.pack(&amp;quot;fff&amp;quot;,o.posx,o.posy,o.posz)&lt;br /&gt;
 		iof.write(data)&lt;br /&gt;
 		data=struct.pack(&amp;quot;ii&amp;quot;,o.facestart,o.facecount)&lt;br /&gt;
 		iof.write(data)&lt;br /&gt;
 &lt;br /&gt;
 #Funktion zum lesen der Blender Daten&lt;br /&gt;
 def readblenderdata():&lt;br /&gt;
 	#lade alle Objekte in objs&lt;br /&gt;
 	objs=Blender.Object.Get()&lt;br /&gt;
 	#geht alle Objekte in objs durch&lt;br /&gt;
 	for obj in objs:&lt;br /&gt;
 			#holt sich die Meshdaten und speichert sie&lt;br /&gt;
 			mesh=obj.getData()&lt;br /&gt;
 			facecount=file.NumOfFace&lt;br /&gt;
 			file.NumOfFace=file.NumOfFace+len(mesh.faces)&lt;br /&gt;
 &lt;br /&gt;
 			for f in mesh.faces:&lt;br /&gt;
 				if len(f.v)==4:#wenn die Fläche aus 4 Vertice besteht&lt;br /&gt;
 					file.Verts.append(f.v[0])&lt;br /&gt;
 					file.Verts.append(f.v[1])&lt;br /&gt;
 					file.Verts.append(f.v[2])&lt;br /&gt;
 					fa=TFace()&lt;br /&gt;
 					fa.vertstart=len(file.Verts)-3&lt;br /&gt;
 					fa.vertcount=3&lt;br /&gt;
 					file.Faces.append(fa)&lt;br /&gt;
 &lt;br /&gt;
 					file.Verts.append(f.v[0])&lt;br /&gt;
 					file.Verts.append(f.v[2])&lt;br /&gt;
 					file.Verts.append(f.v[3])&lt;br /&gt;
 					fa=TFace()&lt;br /&gt;
 					fa.vertstart=len(file.Verts)-3&lt;br /&gt;
 					fa.vertcount=3&lt;br /&gt;
 					file.Faces.append(fa)&lt;br /&gt;
 &lt;br /&gt;
 					file.NumOfFace=file.NumOfFace+1&lt;br /&gt;
 					file.NumOfVert=file.NumOfVert+6&lt;br /&gt;
 &lt;br /&gt;
 					if len(f.uv)==0:&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 					else:&lt;br /&gt;
 						file.Texcoords.append((f.uv[0][0],f.uv[0][1]))&lt;br /&gt;
 						file.Texcoords.append((f.uv[1][0],f.uv[1][1]))&lt;br /&gt;
 						file.Texcoords.append((f.uv[2][0],f.uv[2][1]))&lt;br /&gt;
 						file.Texcoords.append((f.uv[0][0],f.uv[0][1]))&lt;br /&gt;
 						file.Texcoords.append((f.uv[2][0],f.uv[2][1]))&lt;br /&gt;
 						file.Texcoords.append((f.uv[3][0],f.uv[3][1]))&lt;br /&gt;
 &lt;br /&gt;
 				if len(f.v)==3:#wenn die Fläche aus 3 Vertice besteht&lt;br /&gt;
 					for ve in f.v:&lt;br /&gt;
 						file.Verts.append(ve)&lt;br /&gt;
 					file.NumOfVert=file.NumOfVert+len(f.v)&lt;br /&gt;
 					fa=TFace()&lt;br /&gt;
 					fa.vertstart=len(file.Verts)-3&lt;br /&gt;
 					fa.vertcount=3&lt;br /&gt;
 					file.Faces.append(fa)&lt;br /&gt;
 &lt;br /&gt;
 					if len(f.uv)==0:&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 						file.Texcoords.append([0,0])&lt;br /&gt;
 					else:&lt;br /&gt;
 						for tc in f.uv:&lt;br /&gt;
 							file.Texcoords.append((tc[0],tc[1]))&lt;br /&gt;
 &lt;br /&gt;
 			ob=TObject()&lt;br /&gt;
 			ob.posx=obj.LocX&lt;br /&gt;
 			ob.posy=obj.LocY&lt;br /&gt;
 			ob.posz=obj.LocZ&lt;br /&gt;
 			ob.facestart=facecount&lt;br /&gt;
 			ob.facecount=file.NumOfFace-facecount&lt;br /&gt;
 			file.Meshs.append(ob)&lt;br /&gt;
 &lt;br /&gt;
 			#Objektanzahl erhoehen&lt;br /&gt;
 			file.NumOfObj=file.NumOfObj+1&lt;br /&gt;
 &lt;br /&gt;
 print &amp;quot;start&amp;quot;&lt;br /&gt;
 #Open File&lt;br /&gt;
 iof=open(&amp;quot;C:/Medien/player.xdp&amp;quot;,&amp;quot;wb&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
 #holt die Szenendaten&lt;br /&gt;
 readblenderdata()&lt;br /&gt;
 &lt;br /&gt;
 #schreibt den Header der Datei&lt;br /&gt;
 writeheader()&lt;br /&gt;
 &lt;br /&gt;
 #schreibt den Datenteil der Datei&lt;br /&gt;
 writedata()&lt;br /&gt;
 &lt;br /&gt;
 #Datei schliessen&lt;br /&gt;
 iof.close()&lt;br /&gt;
 &lt;br /&gt;
 print &amp;quot;Flaechen:&amp;quot;+str(file.NumOfFace)&lt;br /&gt;
 print &amp;quot;Vertice:&amp;quot;+str(file.NumOfVert)&lt;br /&gt;
 print &amp;quot;ready Size:&amp;quot;+str(file.size)&lt;/div&gt;</summary>
		<author><name>Luketheduke</name></author>	</entry>

	</feed>