Archiv der Kategorie: Shader

StateChanges im Effect-File

Dieser Artikel ist kein wirkliches Tutorial, sondern eher eine Art Tipp bzw. Gedächtnisstütze.

Man kann wunderbar einfach im Code die unterschiedlichsten Render-States setzen und verwenden, dies ist praktisch XNA-Tagesgeschäft und jedem sollte dies in Fleisch und Blut übergegangen sein. Den FillMode ändern, Z-Buffer ein- und ausschalten und vieles mehr sind kein Zauberwerk. Aber dies geht auch noch an einer anderen Stelle, nämlich direkt im Effect-File.
Lies den Rest dieses Beitrags

Advertisements

Shader 101: Diffuse / Directional Light

Weiter geht es mit der nächsten Art von Beleuchtung in der Reihe Shader 101. Insgesamt gibt es vier unterschiedliche Arten von Lichtern, zumindest sind dies die Arten, die wir für die 3D-Programmierung benötigen. Dies sind:

Ich werde die Erzeugung aller dieser Arten von Licht in Shadern beschreiben, wenn nicht schon geschehen, so dass Licht in Kürze keine Hürde mehr für euch darstellen wird.

In diesem Artikel geht es nun um die zweite Art von Licht, dem diffusen Licht.
Lies den Rest dieses Beitrags

Shader 101: XNA FX-Files

FX-Files oder Effect-Files sind in XNA Dateien, die den Sourcecode eines Shaders und einer Technique enthalten und von der Content-Pipeline verarbeitet werden. Die Content-Pipeline kümmert sich dabei um das kompilieren und optimieren.

In diesem kurzen Artikel möchte ich euch zeigen, wie der grundlegende Aufbau einer Effekt-Datei in XNA aussieht und was man damit so alles anstellen kann. Dies ist natürlich eine Grundvoraussetzung für alle weiteren Tutorials und Mini-Tutorials über Shader.
Lies den Rest dieses Beitrags

Shader 101: Clip Planes

Seit einigen Jahren wird die sogenannte Fixed Function Pipeline der Grafikkarten immer weiter abgebaut. Für die, die nicht wissen, was die Fixed Function Pipeline (FFP) ist: Es handelt sich dabei um mehr oder weniger fest in Silikon gebrannte Shader. Im Grunde genommen ist die FFP der Vorgänger der Shader. Früher musste alles, was mit 3D-Grafik in einer Grafikkarte passiert, in der FFP vorgenommen werden. Das ging von der Transformation bis hin zur Beleuchtung. Der Entwickler konnte dabei nur einzelne Teile der FFP ein- oder ausschalten und mit Parametern beeinflussen, nicht aber frei programmieren, was erst mit aufkommen der Shader möglich wurde.

Ein interessanter Aspekt der FFP war, daß diese 4 Clipping-Planes aufnehmen konnte und damit alles was ausserhalb dieser Planes lag clippen konnte. Dies sparte Rechenzeit in der Grafikkarte. In diesem Artikel möchte ich nun zeigen, wie man exakt dieses Feature in XNA in einem Shader nachbilden kann.

Lies den Rest dieses Beitrags

Shader 101: Umgebungslicht / Ambient Light

Am Anfang war das Licht… So steht es zwar nicht im erfolgreichsten Buch aller Zeiten, aber zumindest in der Welt der 3D-Programmierung und der Shader ist dieser Satz sehr treffend.

Ohne Licht sehen wir nichts. Dies ist nicht nur im richtigen Leben so, sondern auch in der Spieleentwicklung. Aus diesem Grund möchte ich in diesem Artikel das einfachste Licht vorstellen, dass es gibt: Das Umgebungslicht oder auch Ambient Light. Dieses wird zwar auch vom BasicEffect des XNA-Frameworks bereitgestellt, ich möchte hier aber erklären, wie dies in einem eigenen Shader erzeugt wird.
Lies den Rest dieses Beitrags

%d Bloggern gefällt das: