Strumenti Visual Studio per la programmazione di giochi

Riepilogo

Se si utilizza Visual Studio Ultimate per sviluppare app DirectX, sono disponibili strumenti aggiuntivi per la creazione, la modifica, l'anteprima e l'esportazione di immagini, modelli e risorse shader. Sono disponibili anche strumenti che è possibile utilizzare per convertire risorse nei tempi di compilazione ed eseguire il debug di codice grafico DirectX.

Questo argomento offre una panoramica di tali strumenti grafici.

Editor di immagini

Utilizzare l'Editor di immagini per lavorare con i tipi di formati di texture e immagini avanzati utilizzati da DirectX. L'Editor di immagini supporta i seguenti formati:

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

Creare file di personalizzazione della compilazione per convertirli in file .dds nei tempi di compilazione.

Per maggiori informazioni, vedere Lavorare con texture e immagini.

Nota L'Editor di immagini non è destinato a sostituire un'app di editing delle immagini completo, ma è appropriato per molti scenari di visualizzazione e modifica semplici.

 

Editor di modelli

È possibile utilizzare l'Editor di modelli per creare modelli 3D di base da zero o per visualizzare e modificare modelli 3D più complessi da strumenti di modellazione 3D completi. L'Editor di modelli supporta diversi formati di modelli 3D utilizzati nello sviluppo di applicazioni DirectX. È possibile creare file di personalizzazione della compilazione per convertirli in file con estensione .cmo nei tempi di compilazione.

  • .fbx
  • .dae
  • .obj

Ecco lo screenshot di un modello nell'editor con l'illuminazione applicata.

teapot

Per maggiori informazioni, vedere Lavorare con modelli 3D.

Nota L'Editor di modelli non è destinato a sostituire un'app di editing di modelli completo, ma è appropriato per molti scenari di visualizzazione e modifica semplici.

 

Shader Designer

Utilizzare lo Shader Designer per creare effetti visivi personalizzati per il gioco o l'app anche se non si conosce la programmazione HLSL.

Si crea uno shader visivamente come un grafico. Ogni nodo visualizza un'anteprima dell'output fino a tale operazione. Ecco un esempio che applica l'illuminazione Lambert con un'anteprima di sfera.

visual shader graph

Utilizzare lo Shader Editor per progettare, modificare e salvare gli shader nel formato dgsl. È possibile esportare anche i formati seguenti.

  • .hlsl (codice sorgente)
  • .cso (bytecode)
  • .h (matrice di bytecode HLSL)

Creare file di personalizzazione della compilazione per convertire uno di questi formati in file cso nei tempi di compilazione.

Ecco una parte del codice HLSL esportato dallo Shader Editor. Si tratta solo del codice per il nodo di illuminazione Lambert.

//
// 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);
}

Per maggiori informazioni, vedere Lavorare con shader.

Personalizzazioni di compilazione per asset 3D

È possibile aggiungere personalizzazioni di compilazione al progetto in modo che Visual Studio converta risorse in formati utilizzabili. In seguito è possibile caricare gli asset nell'app e usarli mediante la creazione e compilazione di risorse DirectX, come per qualsiasi altra app DirectX.

Per aggiungere una personalizzazione della compilazione, fare clic con il pulsante destro del mouse sul progetto nel Solution Explorer e scegliere Personalizzazioni di compilazione... È possibile aggiungere al progetto i seguenti tipi di personalizzazioni di compilazione:

  • Image Content Pipeline accetta file di immagine come input e restituisce DirectDraw Surface (.dds).
  • Mesh Content Pipeline accetta file mesh (ad esempio fbx) e restituisce file .cmo mesh.
  • Shader Content Pipeline accetta Visual Shader Graph (.dgsl) da Visual Studio Shader Editor e restituisce un file Compiled Shader Output (.cso).

Per maggiori informazioni, vedere Uso di asset 3D in giochi o app.

Debug della grafica DirectX

Visual Studio offre strumenti di debug specifici per grafica. Utilizzare questi strumenti per eseguire il debug di elementi come:

  • La pipeline grafica.
  • Lo stack di chiamate di eventi.
  • La tabella oggetti.
  • Lo stato del dispositivo.
  • Bug dello shader.
  • Buffer e parametri costanti non inizializzati o non corretti.
  • Compatibilità della versione DirectX.
  • Supporto Direct2D limitato.
  • Requisiti di sistema operativo e SDK.

Per maggiori informazioni, vedere Debug di grafica DirectX.