Prob directx 9

cs_LuckyLuck Messages postés 59 Date d'inscription dimanche 4 mai 2003 Statut Membre Dernière intervention 5 juillet 2005 - 1 août 2003 à 01:19
Kalimeroc5 Messages postés 1 Date d'inscription lundi 1 septembre 2003 Statut Membre Dernière intervention 20 décembre 2004 - 20 déc. 2004 à 16:05
En fait, en C#, lorsque j'inclus les références directx( ce sont les 9), la plupart des classes fonctionnent, mais les classes relatives aux Mesh ne sont pas présentes ds les références... Savez-vous comment je dois faire pour récupérer ces classes plz?

2 réponses

cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
1 août 2003 à 05:12
non j'en ai aucune id ... mais je te conseille pas vraiment de faire du directx avec c# ... ca rame trop, va plutot sur C++ ..
0
Kalimeroc5 Messages postés 1 Date d'inscription lundi 1 septembre 2003 Statut Membre Dernière intervention 20 décembre 2004
20 déc. 2004 à 16:05
Bonjour,

Je me suis moi aussi initié cet été tant bien que mal à l'affichage 3D avec DirectX en C#.

Si tu as intallé le SKD Directx 9 developper kit
Toutes les classes sont incluses à l'intérieur.
Tu peux télécharger la nouvelle version ici: http://www.microsoft.com/downloads/details.aspx?FamilyID=9226a611-62fe-4f61-aba1-914185249413&displaylang=fr

Il ne te reste plus qu'à déclarer les classes si mes souvenirs sont exacts:
using Microsoft.DirectX;
using Microsoft.DirectX.Direct3D;

Tiens moi au courant si cela a marché ;)
Joyeux Noel et Bonnes fêtes de fin d'années à tout le monde :clown)

PS:
Comme j'ai galéré pour utiliser les meshes
1. Créer une meshe basique
//On déclare et initialise les paramètres du rendu
private PresentParameters pres = new PresentParameters();
//On déclare et initialise le device
//Moi je fais un rendu dans un Panel car g des textbox et plains de //choses dans la fenetre de rendu mais tu peux remplacer df.panel1 //par ta fenetre de rendu
Device device = new Device(0, DeviceType.Hardware, df.panel1 ,CreateFlags.SoftwareVertexProcessing, pres);
Mesh newMesh = new Mesh();
Mesh = Mesh.Sphere(device, s.getRadius(),nb,nb);
//Affichage de la mesh
Mesh.Render();

2. Astuce pour sauver une meshes dans un fichier directX facilement
foreach (Mesh newMesh in newMeshList)

int []adj = new int[newMesh.NumberFaces*3];
newMesh.GenerateAdjacency(0.01f,adj); Microsoft.DirectX.Direct3D.ExtendedMaterial []Materials = new Microsoft.DirectX.Direct3D.ExtendedMaterial[0];
Microsoft.DirectX.Direct3D.EffectInstance eff = new Microsoft.DirectX.Direct3D.EffectInstance();

/*Save the Mesh in the X File */ newMesh.Save(filename,adj,Materials,eff,Microsoft.DirectX.Direct3D.XFileFormat.Text);
0
Rejoignez-nous