Bonjour,
Je débute en programmation graphique 3D (j'en avais déjà fait mais j'ai beaucoup oublié) avec Direct 3D 11 (même si je suis sous vista avec une carte d3d 10.1) et j'ai un petit problème avec les shaders que je n'arrive pas à corriger.
Je dois l'avouer, je ne comprend pas grand chose à l'HLSL ce qui rend mon tripatouillage difficile: les sémantics et consorts forment une bouillie bizarre dans ma tête ...
A l'éxécution le pilote me dit que la sorti du vertex shader n'est pas compatible avec l'entrée. ça je veux bien l'admettre mais je vois pas pourquoi ^^ .
Voici mon vertex shader:
et le pixel shader
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 struct PS_INPUT { float4 Pos: POSITION; float4 Color: COLOR0; }; PS_INPUT main( float4 Pos: POSITION, float4 Col : COLOR0 ) { PS_INPUT psInput; psInput.Pos = Pos; psInput.Color = Col; return psInput; }
Ces shaders ne font aucun calculs, c'est juste pour débuter, mais ça pose déjà problème .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 struct PS_INPUT { float4 Pos : SV_POSITION; float4 Color : COLOR0; }; float4 main( PS_INPUT psInput ) : SV_TARGET { return psInput.Color; }
J'implore votre aide, (et si quelqu'un pouvait m'aider à mieux comprendre ces trucs des semantics)...
Merci
Partager