CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

DX9 (EmptyProject)

Ruffi
Ruffi
Niveau 9
06 décembre 2004 à 17:16:01

Salut a tous

Trouvant tres joli l´interface de dx9.0c, j´ai voulu voir ce que donnait l´ensemble des fonctionalite des differents DXUTIL. Pour tester, je veux juste creer un mesh ( avec la classe CDXMeshFromFile -il me semble- et un ficher sphere.x), et de l´afficher: Impossible de le voir meme en manipulant la camera.

Pour l´instant, je continue de faire mes differents projet sur un base dx faite par moi meme, mais j´aimerai bien savoir comment manipuler le emptyproject pour faire des aplication windows simple mais jolie ( c´est bien plus beau que l´api win32 ou les MFC)

Donc si quelqu´un sait comment faire des truc basic, ou connais un lien expliquant comment sa marche, ce serai simpa qu´il me reponde.

gollumkawder
gollumkawder
Niveau 10
06 décembre 2004 à 17:24:55

Salut Ruffi, comme toi j´apprends aussi a me servir de la technologie DirectX, je me base sur le support très complet du SDK ( october update si tu veux tout savoir), je crains malheureusement que ce soit un tant soit peu orienté win32 dev...
m´enfin l´idée est là, je pense que si tu bricoles tes empty project et que ça colle, tu réussiras bien a te faire ça en lisant du source du SDK

la MSDN http://www.msdn.microsoft.com
ou tu trouveras ça http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/anch_directx.asp

et plus spécialement ça http://www.microsoft.com/downloads/details.aspx?familyid=b7bc31fa-2df1-44fd-95a4-c2555446aed4&languageid=f49e8428-7071-4979-8a67-3cffcb0c2524&displaylang=en

et puis ya ça aussi mais...
http://walljv.free.fr/index.php?to=view&id=52
:)

goude lukke

gollumkawder
gollumkawder
Niveau 10
06 décembre 2004 à 17:27:02

http://navilinux.free.fr/download/dev/test.zip

tu peux essayer ça aussi, ça load une texture et un mesh d´un fichier . x à la manière SDK
c´est juste histoire de dire, parceque c´est un peu maladroit ça marche une fois sur deux :-p

Ruffi
Ruffi
Niveau 9
06 décembre 2004 à 18:14:53

Merci a toi :)

Je regarderai ton truc ce soir ( la je sui a l´universite et pas de sdk directx sur ce PC :( )

LGV
LGV
Niveau 28
06 décembre 2004 à 20:23:59

" ca n´affiche rien" c´est trop générique pour qu´on puisse t´aider :/ Compare ton code avec un qui marche, ou alors utilise les outils de debugage pour savoir où ça foire ( la mesh elle meme, l´éclairage, le positionnement, les buffers, etc.)

gollumkawder
gollumkawder
Niveau 10
06 décembre 2004 à 21:18:51

pour verifier si la mesh est viable dans le SDK de microsoft il y a un outil appellé Mesh Viewer, tu ouvres ton sphere.x après avec et si tu vois quelque chose c´est que c´est bon ( inversement ce n´est pas parceque tu vois correctement le mesh que ça fonctionnera sous ton programme, la réciproque fonctionne pas, ça dépend du code)

Ruffi
Ruffi
Niveau 9
07 décembre 2004 à 15:12:56

Le truc, c´est que je sais pas comment manipuler le sample framework. La sphere a ete cree avec le Mesh Viewer, et le seul truc que j´ai rajoute dans le code c´est :

D3DXMATRIX matTranslation;
D3DXMatrixTranslation(&, 5 , 5 , 5);
CDXUTMeshFile mesh;
mesh.Create(DXUTGetD3DDevice(), L"sphere.x");
mesh.Render(pd3dDevice, &);
mesh.Destroy();

Que j´ai ajoute dans la fonction de rendu.
J´ai bien regarder avec le debugueur, il passe bien dans la fonction, et fait bien les differentes action de CDXUTMeshFile::Render.

Pour le comparer a un qui marche, il me faudrai un code utilisant le sample framwork. Mais pour l´instant tout ce que je faisait en directX etait faite dans une base " faite maison" dont je comprenais chaque ligne de code. Ici c´est pas le cas...

Je sais que c´est dur de dire pourquoi sa marche pas, c´est parceque j´utilise des truc sencer simplifier la vie, made in microsoft. Comme les MFC, tant qu´on a pas compris le concept, impossible de faire quoi que ce soit.

En fait, tout ce que je voudrai savoir, c´est si quelqu´un manipule le sample framework de dx9.0c ( c´est a dire le EmptyProject), et s´il pouvait m´indiquer coment il marche.

kufa
kufa
Niveau 9
07 décembre 2004 à 15:15:54

( private joke) je pense qu un grand truc vert qui fait des blagues pas droles sur les ecossais devrait eventuellement pouvoir t aider si il a le temps/l´envie ; )

Ruffi
Ruffi
Niveau 9
07 décembre 2004 à 15:44:05

Y a un raport sur le fait que je fasse mes etudes en ecosse ? :question:

kufa
kufa
Niveau 9
07 décembre 2004 à 15:57:04

nononon pas du tout

gollumkawder
gollumkawder
Niveau 10
07 décembre 2004 à 18:45:31

< HS> le truc grand et vert qui raconte des blagues pas drole sur les écossais ( qui sont pas preteurs je le rappelle), c´est pas un ravioli moisi, non, c´est notre sympathique LGV ( qui en connait un rayon sur DX)
< /HS>

Pour référencer ton programme a un truc existant
regarde ça :d) http://walljv.free.fr/index.php?to=view&id=52
( c´est pas une référence je sais mais voilà...)
tu peux supprimer ce qu´il y a de la ligne 196 a 233, je l´ai mis en comm parceque c´était un truc heu...a part

A mon avis il manque quelques trucs dans ton programme :s

Je sais pas a quoi ressemble ton framework de base ( si c´est le meme que celui du SDK) mais il doit y avoir un truc qui foire dans ton renderer... enfin j´sais po

Pour le emptyproject du SDK DX 9.0c moi je m´en sers, mais je saurais pas t´expliquer efficacement comment il fonctionne ( je ´bosse´ toujours dessus a l´heure actuelle)

LGV te fournira plus d´infos

LGV
LGV
Niveau 28
07 décembre 2004 à 20:32:06

hmmmm... alors...

c´est pas qu´on manque d´information, mais presque :/

vu qu´on nage en plein brouillard, voilà les qq trucs que j´essayerai en premier :

- commencer par charger la mesh dans l´init et la detruire dans le clean, histoire de ne faire que le render, dans le render ( ce qui parait en fait assez logique)
- vérifier ton systeme d´axe : une translation de 5/5/5 c´est louche... ou truc style 0/0/x ou 0/0/-x selon que t´es left hand/right hand me parait plus logique pour avoir l´objet centré. De plus si ton viewport est assez restreint, il y a de fortes chances que l´objets soit hors du frustrum ( si tu sais du frustrum clipping, un petit test te montrera si l´objet est clippé ou pas)
- faire le rendu sur fond coloré ; il y a des chances que la mesh ait des normales, si tu ne mets pas de lumiere ben tout ressort noir ; et noir sur noir... Si tu vois la silhouette sur fond coloré, cherche pas plus loin
- vérifier les différentes matrices
- assurer l´état du device, en spécifiant explicitement tous les parametres dont du as besoin juste avec le rendu

Si rien de tout ça ne marche, il va falloir jouer plus finement. Commence par virer tout ce que ne sert à rien pour lancer ton appli, ne garde que l´init/clean de base. Rajoute des éléments que tu maitrises, pour voir ce qui se passe : un bete vertex buffer pour afficher un triangle en D3D_FVF_XYZ | D3D_FVF_DIFFUSE, c´est bien pour tester si on le voit ou pas

voilà, expérimente un peu et dis nous en plus, qu´on puisse t´aider plus spécifiquement.

A noter que le debugeur fourni plein d´infos pour des problemes " avancés" ( buffers corrompus, shaders, textures, etc.) Verifie que utilise bien la version debug du runtime, mets les parametres de " debug infos" au max, et voit si les informations affichées peuvent t´aider à detecter le pb.

Sinon, à propos du empty project, ben... il est empty justement, donc il n´y a pas grand chose à faire avec, si ce n´est comprendre comment il marche. L´init va de pair avec le delete, et le restore va de pair avec le invalidate ( au niveau des méthodes). Si on respecte cette structure assez simple pour les objets qu´on crée, ça roule assez bien

Ruffi
Ruffi
Niveau 9
10 décembre 2004 à 17:51:11

Desole de pas avoir repondu plus vite.

Bon, finalement j´ai reutilise la base directX que j´ai faite cet ete. http://membres.lycos.fr/davidu/ ( TrickShot) . C´est un petit jeu qui me permet de tester mes fonction de collision, calculer les collision response, la rolling friction... bref, pour tester des truc de physic.

L´affichage est juste la pour avoir un rendu visuel de mes calculs. C´est pour sa que je voulais utiliser l´empty project, pour avoir tres rapidement un rendu propres sans avoir a me plonger dans toutes les initialisation de DirectX.

Ruffi
Ruffi
Niveau 9
10 décembre 2004 à 18:18:45

chtit precision : le jeu tourne sous dx9.0c summer update

Sous forums
  • Aide à l'achat Mac
  • Internet
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment