Précédent   Forum des professionnels en informatique > Applications > Développement 2D, 3D et Jeux > API graphiques > DirectX
DirectX Forum d'entraide sur le développement avec DirectX. Avant de poster -> FAQ DirectX
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/05/2011, 10h10   #1
Invité régulier
 
fred be
Inscription : juin 2010
Messages : 37
Détails du profil
Informations personnelles :
Nom : fred be

Informations forums :
Inscription : juin 2010
Messages : 37
Points : 9
Points : 9
Par défaut structure pour les shaders

Bonjour,

Je commence a travailler sur les shader en C++/Directx9 avec le langage HLSL. J'ai suivi ce tuto en c# http://msdn.microsoft.com/fr-fr/library/bb469909.aspx et j'ai relativement bien suivi l'utilisation et l'écriture des vertex et pixel shader.

Cependant je me pose la question suivante : la structure déclarer dans mon code C++ doit elle être semblable a la structure déclaré dans le shader ?

Comment se fait t'il que j'arrive a dessiner mon objet mais qu'il ne prenne pas sa couleur et que le vertex shader ne fasse aucun effet, alors qu'ils marche sur une CreateBox ?

Dans mon code C++ j'ai la structure suivante :

Code :
1
2
3
4
5
struct CUSTOMVERTEXFULL
{
   D3DXVECTOR3 pos;
   D3DXCOLOR color;
};
Dans mon shader la structure suivante :

Code :
1
2
3
4
5
6
struct VS_OUTPUT
{
   float4 Position     : POSITION;
   float4 Diffuse      : COLOR0;
   float2 TextureUV : TEXTCOORD0;
}
Mon programme a juste pour but de dessiner un cube dans la couleur est donné a l'exterieur du shader, lors du renseignement de la structure CUSTOMVERTEXFULL.

LA fonction render de mon objet est entre les instructions

g_pEffect->BeginPass(iPass); et

g_pEffect->EndPass();

ou g_pEffect est de type ID3DXEffect*.
hohenheim37 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h58.


 
 
 
 
Partenaires

Hébergement Web