© best_vector/Shutterstock.com
Teil 3: Mit Modellen arbeiten

3-D-Objekte auf der Xbox One erstellen


Im zweiten Teil der Artikelserie hatten wir die 3-D-Renderingpipeline im Großen und Ganzen besprochen. Wer diesen Aufwand aber für jedes einzelne Spielobjekt betreiben möchte, dreht bald durch. Zur Lösung dieses Problems bietet sich die Einführung von Modellklassen an, die die für die Bewegung, Skalierung etc. eines Modells notwendige Intelligenz abstrahieren.

Artikelserie

Teil 1: Xbox One im UWP-Modus

Teil 2: Mit DirectX Apps und Spiele für die Xbox One entwickeln

Teil 3: Mit Modellen arbeiten

Teil 4: Grundlegende künstliche Intelligenz und Leveldesign

Teil 5: Zurück zu DirectX – Shader I

Teil 6: Shader trifft Material – Shader II

Beim Einführen von Modellklassen empfiehlt es sich, auch die Generierung von Modellen zu automatisieren. Das manuelle Errechnen von Koordinaten mag für die Realisierung eines Würfels ausreichen: Einzelne Modelle können schon mal einige Tausend Punkte umfassen; auch einfachere Android-Spiele brauchen zumindest einige Dutzend verschiedene. Selbst wenn der eine oder andere Modelle von Hand erstellen kann, zeigen die Konstrukte spätestens bei (immer notwendigen) Änderungen ihre Zähne.

Modelle aus Coderhand?

Die Erstellung dreidimensionaler Modelle ist ein eigener Job: 3-D-Designer nutzen Programme wie Blender oder 3ds Max, und extrahieren die entstandenen Dateien in einem oder mehreren Industriestandard-Austauschformaten. Diese müssen sodann auf die Konsole gebracht werden, wo sie vom Spiel geladen werden.

In klassischen DirectX-Tutorials wird gerne die Nutzung der unter [1] bereitstehenden Assimp-Bibliothek gezeigt. Sie lässt sich zum Zeitpunkt der Drucklegung nur schwer in Universal-Windows-Programme einbinden. Das ist allerdings auch gar nicht nötig, arbeitet man ja meist mit einer Contentpipeline. Das bedeutet, dass die Workstation des Entwicklers während der Erzeugung des Spiels Ressourcen transpiliert und in ein für die Engine leicht verständliches Format bringt. Visual Studio bringt sogar einen solchen Transpiler mit, zu dessen Nutzung allerdings ein wenig Zusatzlogik erforderlich ist.

DirectX-Toolkit erleichtert Entwicklern das Leben

Das unter [2] bereitstehende DirectX-Toolkit enthält eine Vielzahl von Bibliotheken, die Entwicklern das tägliche Leben leichter machen. Fürs Erste wollen wir das darin enthaltene Modellsubsystem verwenden, das die im von Visual Studio generierten Intermediärformat vorliegenden Modelle lädt und auf den Bildschirm bringt.

Öffnen Sie dann den NuGet-Package-Manager und suchen Sie nach dem String...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang