Sol's dirty DX7 tutorial

Willkommen

Dieses Tutorial ist f�r die Leute gedacht, die schon mit (nicht beschleunigtem) 3D herum gespielt haben und nun einen schnellen und schmutzigen Weg suchen, diese magischen 3D Beschleuniger zu nutzen. Es w�re besser wenn schon eine Engine vorhanden ist, die ihr erweitern k�nnt, aber unbedingt notwendig ist es nicht.

Obwohl im Titel 'dx7 Tutorial' steht ist es mehr ein d3dx Kurs.. der Titel lautet auch 'dirty'. Das ganze hier ist NICHT der eigentlich korrekte Weg DX zu nutzen, da ihr nicht von (vielen) dx Treiber Optimierungen, Transformation and Lightning oder anderen netten Dingen Gebrauch macht, die alle 6 Monate erscheinen.

Obwohl es der "falsche" Weg ist funktioniert es dennoch und ihr bekommt einige Einblicke wie Dinge in der DX Welt funktionieren. Ich habe nie Glide ausprobiert und nur an der Oberfl�che von OpenGL gekratzt (mit dem Ergebnis das ich einen W�rfel in einem Fenster renderte, der an der gleichen Stelle blieb wenn man das Fenster bewegte..). Die Leute sagen das DX von den dreien am schwersten zu lernen ist, aber ich glaube das das wirklich schwere die Windows Architektur und die COM Struktur ist, aber nicht DX an sich.

Nein, ich bekomme kein Geld wenn ich das sage (wenn das der Fall w�re h�tte ich genug Geld mir jemanden zu mieten, der diesen Text f�r mich schreibt), aber wenn ihr ernsthaft mit DX anfangen wollt solltet ihr euch "Inside DirectX" kaufen. Ist ein gutes Buch. Es geht allerdings kaum auf d3d ein, erkl�rt aber die Logik hinter DirectX (Ja, glaubt es oder nicht, da gibt es eine Logik irgendwo). Es gibt auch ein "Inside DirectX", aber gelesen habe ich es noch nicht und ich habe einige schlechte Kritiken �ber die fr�heren B�cher des Autors gelesen. Also lest dort erst einmal die Rezesionen bevor ihr einsteigt.

Ich dachte daran ein kleines Tutorial zu schreiben, als ich damals DX5 auf die harte Tour lernte (nur mit dem SDK), aber nun da DX7 drau�en ist und erst recht seit es D3DX7 gibt (liebt ihr nicht auch diese Abk�rzungen?) ist dieses Tutorial eher eine Selbstverst�ndlichkeit.

Wir werden uns durch die Initialisierung arbeiten, ein paar Polys darstellen, Vertices in einen Vertex Buffer einsetzen und die Texturen hinzuf�gen. Ich w�rde euch gerne noch die Blending Modes (Transparenzen) zeigen, aber da bin ich selbst noch nicht so richtig durchgestiegen. Fast jeder Aspekt bei DirectX variiert zwischen den verschiedenen Beschleunigern (teilweise weil Microsoft eine sehr weitl�ufige Definition angegeben hat, teilweise weil die Treiber der 3D Beschleuniger mies sind) und Blending Modes sind eine Sache, die sehr variiert. Jemand hat mal berechnet das es etwa 4 Millionen Kombinationen der Blend Variablen gibt, also wundert mich das gar nicht.

Der angegebene Code ist nicht als Beispiel f�r perfekte Windows Programmierung gedacht oder sonst irgendwelcher Programmierung. Aber das solltet ihr auch so wissen.

Genug Warnungen und Hinweise. Weiter geht's