www.rolandk.de
- Aktuelle Themen zu .Net -
Achtung: Hier handelt es sich um meine alte Seite.
Die aktuelle ist unter folgendem Link erreichbar: www.rolandk.de/wp/
Home Blog 3D-Grafik für WinRT Apps mit C# und DirectX




















































3D-Grafik für WinRT Apps mit C# und DirectX
Sonntag, den 14. Oktober 2012 um 11:34 Uhr

Seit einer Woche ca. habe ich mir vorgenommen, zur Einarbeitung in die neuen APIs ein kleines Game in der Art von diesem Snake hier auf Basis von WinRT und C# zu entwickeln. Zwar kommt man mit der Xaml-Oberfläche und den ähnlichen Klassenbibliotheken relativ schnell zurecht, bei der 3D Grafik kommt aber schon ein großes Aber. So wie in WPF wird in WinRT kein 3D direkt per Xaml unterstützt, man muss also den aufwändigeren Weg über die DirectX APIs gehen.

 

Damit man den Weg über DirectX überhaupt gehen kann, benötigt man eine zusätzliche Komponente wie SharpDX, um DirectX überhaupt mit C# ansprechen zu können. SharpDX funktioniert auch relativ problemlos mit Windows8 / WinRT und bringt auch ein paar gute Beispiel-Apps mit. Hier etwa ein Screenshot einer App mit 3D-Würfen und etwas Xaml-Oberfläche oben links.

 

 

Vor einer ganzen Weile habe ich schon relativ viel mit DirectX 11 gemacht und eine kleine Engine damit auf Basis von C# aufgesetzt. Mein Ansatz war jetzt, Teile eben dieser Engine auf WinRT zu portieren und auch für oben genanntes Game zu verwenden. Beim Migrieren des Quellcodes bin ich aber neben den bekannten Änderungen an der C#-Klassenbibliothek auch auf Änderungen an der DirectX-API gestoßen. So gibt es bei DirectX in der WinRT-Umgebung kein Effect-Framework mehr oder zumindest wird es von SharpDX nicht abgebildet. Da ich relativ viel mit den Effect-Klassen gemacht habe, heißt das also, dass auch hier größere Anpassungen auf mich warten.

 

Stand im Moment ist der, dass ich die 3D-Grafik initialisieren und einen blauen Hintergrund damit zeichnen kann. Mehr folgt hoffentlich in kurzer Zeit..

 

Kommentar hinzufügen

Ihr Name:
Kommentar: