Freigeben über


Visual Studio-Tools für die Spieleprogrammierung

Zusammenfassung

Wenn Sie Visual Studio Ultimate zum Entwickeln von DirectX-Apps verwenden, stehen zusätzliche Tools zum Erstellen, Bearbeiten, Anzeigen und Exportieren von Bild-, Modell- und Shaderressourcen zur Verfügung. Es gibt auch Tools, mit denen Sie Ressourcen zur Erstellungszeit konvertieren und DirectX-Grafikcode debuggen können.

In diesem Thema finden Sie eine Übersicht über diese Grafiktools.

Image Editor

Verwenden Sie den Bild-Editor, um mit den Arten umfangreicher Textur- und Bildformate zu arbeiten, die DirectX verwendet. Der Bild-Editor unterstützt die folgenden Formate.

  • .png
  • .jpg, .jpeg, .jpe, .jfif
  • .dds
  • .gif
  • .bmp
  • .dib
  • .tif, .tiff
  • .tga

Erstellen Sie Buildanpassungsdateien , um diese zur Erstellungszeit in .dds Dateien zu konvertieren.

Weitere Informationen finden Sie unter Arbeiten mit Texturen und Bildern.

Hinweis : Der Bild-Editor ist nicht als Ersatz für eine App für die Bildbearbeitung mit vollem Funktionsumfang gedacht, eignet sich jedoch für viele einfache Anzeige- und Bearbeitungsszenarien.

 

Modell-Editor

Sie können den Modell-Editor verwenden, um grundlegende 3D-Modelle von Grund auf neu zu erstellen oder komplexere 3D-Modelle aus vollständigen 3D-Modellierungstools anzuzeigen und zu ändern. Der Modell-Editor unterstützt mehrere 3D-Modellformate, die bei der Entwicklung von DirectX-Apps verwendet werden. Sie können Buildanpassungsdateien erstellen, um diese zur Erstellungszeit in CMO-Dateien zu konvertieren.

  • FBX
  • DAE
  • OBJ

Hier sehen Sie einen Screenshot eines Modells im Editor mit angewendeter Beleuchtung.

Teekanne

Weitere Informationen finden Sie unter Arbeiten mit 3D-Modellen.

Beachten Sie, dass der Modell-Editor nicht als Ersatz für eine App für die Bearbeitung eines Vollfeaturemodells gedacht ist, sondern für viele einfache Anzeige- und Bearbeitungsszenarien geeignet ist.

 

Shader-Designer

Verwenden Sie den Shader-Designer, um benutzerdefinierte visuelle Effekte für Ihr Spiel oder Ihre App zu erstellen, auch wenn Sie die HLSL-Programmierung nicht kennen.

Sie erstellen einen Shader visuell als Diagramm. Jeder Knoten zeigt eine Vorschau der Ausgabe bis zu diesem Vorgang an. Hier ist ein Beispiel, das Lambert-Beleuchtung mit einer Kugelvorschau anwendet.

Visuelles Shaderdiagramm

Verwenden Sie den Shader-Editor, um Shader im DGSL-Format zu entwerfen, zu bearbeiten und zu speichern. Außerdem werden die folgenden Formate exportiert.

  • HLSL (Quellcode)
  • .cso (Bytecode)
  • H (HLSL-Bytecodearray)

Erstellen Sie Buildanpassungsdateien , um jedes dieser Formate zur Erstellungszeit in CSO-Dateien zu konvertieren.

Hier ist ein Teil von HLSL-Code, der vom Shader-Editor exportiert wird. Dies ist nur der Code für den Lambert-Beleuchtungsknoten.

//
// Lambert lighting function
//
float3 LambertLighting(
    float3 lightNormal,
    float3 surfaceNormal,
    float3 materialAmbient,
    float3 lightAmbient,
    float3 lightColor,
    float3 pixelColor
    )
{
    // Compute the amount of contribution per light.
    float diffuseAmount = saturate(dot(lightNormal, surfaceNormal));
    float3 diffuse = diffuseAmount * lightColor * pixelColor;

    // Combine ambient with diffuse.
    return saturate((materialAmbient * lightAmbient) + diffuse);
}

Weitere Informationen finden Sie unter Arbeiten mit Shadern.

Erstellen von Anpassungen für 3D-Ressourcen

Sie können Ihrem Projekt Buildanpassungen hinzufügen, sodass Visual Studio Ressourcen in verwendbare Formate konvertiert. Danach können Sie die Ressourcen in die App laden und sie verwenden. Dazu erstellen und füllen Sie DirectX-Ressourcen so, wie Sie es in jeder anderen DirectX-App tun würden.

Um eine Buildanpassung hinzuzufügen, klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie "Buildanpassungen" aus. Sie können Ihrem Projekt die folgenden Typen von Buildanpassungen hinzufügen.

  • Bildinhaltspipeline übernimmt Bilddateien als Eingabe- und Ausgabe von DirectDraw Surface-Dateien (.dds).
  • Die Gitterinhaltspipeline akzeptiert Gitterdateien (z. B. FBX) und gibt CMO-Gitterdateien aus.
  • Die Shaderinhaltspipeline verwendet Visual Shader Graph (.dgsl) aus dem Shader-Editor von Visual Studio und gibt eine kompilierte Shaderausgabedatei (.cso) aus.

Weitere Informationen finden Sie unter Verwenden von 3D-Ressourcen in Ihrem Spiel oder Ihrer App.

Debuggen von DirectX-Grafiken

Visual Studio stellt grafikspezifische Debuggingtools bereit. Verwenden Sie diese Tools zum Debuggen von Elementen wie:

  • Die Grafikpipeline.
  • Der Ereignisaufrufstapel.
  • Die Objekttabelle.
  • Der Gerätezustand.
  • Shaderfehler.
  • Nicht initialisierte oder falsche Konstantenpuffer und Parameter.
  • DirectX-Versionskompatibilität.
  • Eingeschränkte Direct2D-Unterstützung.
  • Betriebssystem- und SDK-Anforderungen.

Weitere Informationen finden Sie unter Debuggen von DirectX-Grafiken.