Avec un petit effort, vous pouvez configurer manuellement MSVC2010 IDE d'une façon il mettra en évidence les fichiers HLSL et fera l'auto-complétion partielle/intelisense:
Partie 1)
- menu 'Outils' cliquez sur « options »
- Dans la boîte de dialogue « options » étendre au nœud « éditeur de texte » et sélectionnez « Extension du fichier »
- maintenant sur le côté droit, vous pouvez ajouter des extensions et configurer éditeur pour les
- Ajouter des extensions: HLSL et FX avec jeu de champ 'éditeur' à 'Microsoft Visual C++'
- Vérifiez 'extensions CARTOGRAPHIE à' et réglez-le sur Microsoft Visual C++ '
Partie 2)
Créez le fichier texte "usertype.dat" à côté de VCExpress.exe ou devenv.exe (généralement situé "c: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \"). Peupler 'usertype.dat' fichier avec les mots clés que vous souhaitez mettre en relief HLSL-à-dire:
float2
float3
float4
float4x4
matrix
cbuffer
tbuffer
Partie 3) Relancer MSVC
Partie 4) Dans 'Outils' VC Open \ boîte de dialogue 'Options de nouveau et naviguer vers 'Environnement' \ 'Polices et Couleurs' et configurez-le à votre goût. La couleur des mots-clés des utilisateurs ajoutés via 'usertype.dat' est contrôlée par l'élément d'affichage 'C/C++ User Keywords' (Personnellement, je l'ai mis en correspondance avec les paramètres 'Keyword').
Partie 4a) Dans VC 'Outils' \ 'Options' \ 'Éditeur de texte' \ 'C/C++' \ 'Avancé' sur le côté droit, vous pouvez considérer le champ 'Disable Squiggles' sur true (depuis HLSL est pas un code C++ valide VC soulignerait normalement C++ des erreurs de compilation dans votre code shader)
Le problème avec ceci est que les changements HLSL entre les versions D3D. Si vous avez développé un plug-in HLSL Intellisense, vous ne savez pas si une construction est valide ou non. – Puppy
N'est-ce pas un problème avec n'importe quelle langue? VS fait assez bien la différence entre différentes versions de C#, par exemple. Si ce n'est pas le chemin à parcourir, y a-t-il un éditeur hlsl dédié qui pourrait fournir cette fonctionnalité? –
Vous n'utilisez pas plusieurs versions de C# dans le même projet modifié par un #ifdef, ce qui est possible avec HLSL. Vous ne pouvez pas non plus modifier les fichiers C# compilés lors de l'exécution, ce que vous pouvez également faire avec HLSL. – Puppy