begin process at 2012 05 29 02:56:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

DirectX

 > 

DirectX 10 : Charger et afficher un fichier .dae (Collada)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

DirectX 10 : Charger et afficher un fichier .dae (Collada)

mercredi 12 août 2009 à 10:59:05 | DirectX 10 : Charger et afficher un fichier .dae (Collada)

seb2086

Membre Club

Bonjour,

Comme le dit le titre j'utilise DirectX 10 et collada-dom.

Je voudrais charger et afficher un fichier collada dans mon application avec colla-dom mais je ne sais pas trop comment m'y prendre c'est pour ça que je viens vous demander.

Merci.

jeudi 13 août 2009 à 23:25:47 | Re : DirectX 10 : Charger et afficher un fichier .dae (Collada)

seb2086

Membre Club
Réponse acceptée !

Voilà je viens de réussir à charger et à afficher mon fichier collada dans Directx.
Mon objet est un cube. (C'est pour ça que j'ai mis des valeurs statiques, pour les tableaux de coordonnées par exemple).

Je précise que je ne charge que la géométrie de l'objet depuis le fichier *.dae

Voila le code :

Code C/C++ :

DAE *Objet_Collada = new DAE();
daeInt erreur;

// Triangle Vars
struct VertexPosColorStruct
{
D3DXVECTOR3 Pos;
D3DXVECTOR4 Color;
};

bool erreur_bool = false;

Objet_Collada->load("cubeM.dae");

domFloat_array* domFloat = 0 ;
erreur = Objet_Collada -> getDatabase() -> getElement((daeElement**)&domFloat, 0, NULL, COLLADA_TYPE_FLOAT_ARRAY);
if (erreur != DAE_OK)
erreur_bool = true;

domP* verticesCollada = 0 ;
erreur = Objet_Collada -> getDatabase() -> getElement((daeElement**)&verticesCollada, 0, NULL, COLLADA_TYPE_P);
if (erreur != DAE_OK)
erreur_bool = true;

int nbPositions = domFloat -> getCount();

domListOfUInts listeVertices = verticesCollada -> getValue();
int nbVertices = listeVertices.getCount();

float xPos[8];
float yPos[8];
float zPos[8];
int pos = 0;
for(int i = 0; i < nbPositions/3; i++)
{
xPos[i] = domFloat -> getValue()[pos]*10;
yPos[i] = domFloat -> getValue()[pos+1]*10;
zPos[i] = domFloat -> getValue()[pos+2]*10;
pos += 3;
}

VertexPosColorStruct vertices[36];
int numVertex = 0;
for(int i = 0; i < nbVertices; i++)
{
numVertex = verticesCollada -> getValue()[i];
vertices[i].Pos = D3DXVECTOR3(xPos[numVertex], yPos[numVertex], zPos[numVertex]);
if(i < 6)
vertices[i].Color = D3DXVECTOR4(1.0f,0.0f,0.0f,0.0f);
else if(i < 12)
vertices[i].Color = D3DXVECTOR4(0.0f,1.0f,0.0f,0.0f);
else if(i < 18)
vertices[i].Color = D3DXVECTOR4(0.0f,0.0f,1.0f,0.0f);
else if(i < 24)
vertices[i].Color = D3DXVECTOR4(1.0f,0.5f,0.0f,0.0f);
else if(i < 30)
vertices[i].Color = D3DXVECTOR4(0.0f,1.0f,0.5f,0.0f);
else if(i >= 30)
vertices[i].Color = D3DXVECTOR4(0.5f,0.0f,1.0f,0.0f);
}


Si quelqu'un a des questions ou veut un zip du projet complet dites le moi.

dimanche 31 janvier 2010 à 18:40:42 | Re : DirectX 10 : Charger et afficher un fichier .dae (Collada)

shorzy


Salut.

N'ayant pas d'Exe, je ne peux pas jugé.
Mais en voyant que tu reponds à ton propre Post, je comprends que tu as dû bien travailler !!!

Je suis en train d'essayer de faire ça sous OpenGL
As tu utilisé des Bibliothèques ??
Quel site tu me conseils ??

Merci.

Peux tu m'envoyer le projet que j'Observé ça ?
Qu'as tu fais d'autre depuis ??

++
lundi 1 février 2010 à 13:30:20 | Re : DirectX 10 : Charger et afficher un fichier .dae (Collada)

seb2086

Membre Club
Salut,

Ca fait un moment que je n'y ai pas touché mais comme librairie j'ai utilisé colladaDOM, voici le site et la tu a direcetement un exemple avec OpenGL, je me souviens avoir galerer un moment avant d'arriver a compiler un projet avec cette librairie et VS8 mais apres ca a l'air de bien fonctionner.

Je n'ai pas les sources avec moi je pourrais les recuperer a la fin de la semaine surement et je te le ferais passer.

Voila si tu a un probleme dit le je pourrai peut être t'aider.
mercredi 3 février 2010 à 12:24:45 | Re : DirectX 10 : Charger et afficher un fichier .dae (Collada)

shorzy

MERCI !!!!


Cette discussion est classée dans : fichier, afficher, directx, charger, collada


Répondre à ce message

Sujets en rapport avec ce message

DirectX : Afficher des Jpeg ??? [ par Stoomm ] Bonjour,Je sais qu'il est possible d'afficher des jpg en DX au lieu des bmp, mais je ne sais pas comment.Si quelqu'un a un p'tit bout de code...Merci Directx 8 et DDRAW - JPEG [ par tazkeum ] J'ai utilisé DirectX 8 pour charger du JPEG par D3DXCreateTextureFromFile.Mais j'ai un systeme d'animation 2D qui utlise DirectDraw (DirectX 7 -LPDIRE [TURBO C++] charger un fichier sonore (.WAV, .VOC, MIDI...) [ par kobee12 ] JE suis actuellement en train de faire une applicatiion en mode 13h avec gestion de la souris et chargement d'image .BMP sous TURBO C++.J'aimerais pou Afficher des images sous DirectX, et faire un défilement d'images svp [ par cyberlewis ] Slt à tous, KKun pourrait-il m'aider la sur ce truc la svp ?? En faisant les tutoriels du Gritche j'arrive à initialiser une résolution de 800x600x32, fichier textedans edit box [ par rodrigos ] Bonjour, je suis nouveau dans la programmation c++, et j'aimerai savoir comment afficher un fichier texte dans un dialog box.j'utilise cette fonctionS Fichier texte dans edit box [ par revelata ] Bonjour,je cherche à afficher un fichier texte dans une editbox.En fait c'est pour une charte accepter refuser, le problème c'est que je n'arrive pas lecture d'un fichier en c [ par GazGaz ] lu allalors voila j'ai un fichier et je voudrait réaliser l'algo suivant avec ce fichier :se mettre au debut du fichiertant que c'est pas la fin de fi animation 3ds en directx [ par heidi79 ] Je cherche à lancer une animation inclue dans un fichier .x (converti à partir d'un fichier .3ds) grâce à directx.J'ai cru voir sur différents sites q Afficher un fichier PPM [ par stockley81 ] Bonjour,j'aimerai ouvrir un fichier au format PPM (Portable Pixel Map) et l'afficher a l'ecran.Comment puis-je faire? Faut-il une librairie particulie Charger et afficher une bmp en C pas en C++? [ par lazmous ] Salut je voudrais afficher une bitmap avec un code en C... Quel


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,153 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales