2014-04-25 1 views
1

Est-ce que quelqu'un sait comment compiler un seul fichier contenant différents shaders (PixelShader, VertexShader, GeometryShader) en utilisant l'outil fxc.exe fourni par le SDK DirectX 11?Création d'un fichier shader .fxo à l'aide de fxc.exe

Le shader est utilisé pour créer un tesselation effet dans un C++ programmé Enviroment:

The Shader!!!!

La ligne de commande doit être quelque chose simular à ceci:

snippet

Le résultat devrait être un fichier .fxo shader.

Thx à l'avance :)

+0

Pourriez-vous pas courir juste le temps multiple pour chaque type de shaders? – Caesar

+0

Mhh peut-être, je n'ai pas pensé à cela ... Mais la question est combien de fois dois-je réexécuter ...:/ – luQ

+1

Normalement j'aime mettre chaque shader dans son propre fichier, le rend plus facile à trouver quand vous devez le trouver. Mais vous avez seulement besoin de l'exécuter 3 fois pour chaque shader (PS, VS, GS) – Caesar

Répondre

1

Vous exécutez le compilateur séparément pour chaque fichier source d'effet (un fichier source par effet, y compris les divers shaders et routines d'aide). Il y aura un fichier objet Shader distinct pour chaque effet, de la même manière. La ligne de commande dépend de ce que vous voulez réellement compiler, mais quelque chose comme ceci:

fxc.exe /T ps_2_0 /nologo /E main /Fo"Effect.fxo" "Effect.fx" 

ou

fxc.exe /T fx_4_0 /nologo /Fo"Effect.fxo" "Effect.fx" 
Questions connexes