Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

5 commentaire(s) de AbeLeMudokon sur des sources sur tout CodeS-SourceS

Le : 29/08/2004 11:37:29
Source : PROGRAMMATION DIRECTX8 TUTORIAL 5 : CHARGEMENT, AFFICHAGE, ANIMATION D'OBJETS PRE-CREES
envoie ta source (hongueul@wanadoo.fr) avec le mesh et je verrai ce que je peux faire :)


Le : 06/05/2004 17:58:23
Source : CALCUL D'INTERSECTION DE TRIANGLES ET DE BOITE EN 3D
c'est vrai ca manque un peu de commentaires, mais le principal c'est que ca marche ... 9/10


Le : 05/04/2004 22:18:33
Source : PROGRAMMATION DIRECTX8 TUTORIAL 5 : CHARGEMENT, AFFICHAGE, ANIMATION D'OBJETS PRE-CREES
un petit détail : g mis :
D3DXMatrixTranslation MatriceTemporaire, 0, 0, 10
mais il faudrait plutot mettre :
D3DXMatrixTranslation MatriceTemporaire, objet.position.x, objet.position.y, objet.position.z
voila c'était tout


Le : 05/04/2004 22:12:58
Source : PROGRAMMATION DIRECTX8 TUTORIAL 5 : CHARGEMENT, AFFICHAGE, ANIMATION D'OBJETS PRE-CREES
Excellente source, ca mérite 9/10
J'aurai quand meme une petite remarque à faire à propos du module d'animation : essaye ton code avec la rotation d'une centaine de mesh à chaque frame, et tu verras que le programme va ralentir tres sérieusement.
donc voici la solution miracle (qui est d'ailleurs un peu plus courte) :
1) créer un type Objet3D dans le module principal :
Type ModeleObjet3D
    Mesh As D3DXMesh
    NomFichierMesh As String
    Position As D3DVECTOR
    Rotation As D3DVECTOR
    Buffer As D3DXBuffer
    Texture() As Direct3DTexture8
    Material() As D3DMATERIAL8
    NombreMaterial As Long
End Type
(je pense que les noms des variables sont assez explicites pour que je n'aie pas à détailler)
2) pour le chargement, on fait comme d'habitude, mais sans les 2 dernieres lignes (GetNumVertices...)

3) dans le module d'affichage créer une sub :
Sub Objet3D_Afficher(Objet As ModeleObjet3D)
Dim MatriceWorld As D3DMATRIX
Dim MatriceTemporaire As D3DMATRIX
Dim n As Byte
'Calculer les transformations de l'objet
D3DXMatrixIdentity MatriceWorld
D3DXMatrixRotationY MatriceTemporaire, Objet.Rotation.y
D3DXMatrixMultiply MatriceWorld, MatriceWorld, MatriceTemporaire
D3DXMatrixTranslation MatriceTemporaire, 0, 0, 10
D3DXMatrixMultiply MatriceWorld, MatriceWorld, MatriceTemporaire
DX.Device.SetTransform D3DTS_WORLD, MatriceWorld
'Afficher l'objet
For n = 0 To Objet.NombreMaterial - 1
    DX.Device.SetMaterial Objet.Material(n)
    DX.Device.SetTexture 0, Objet.Texture(n)
    Objet.Mesh.DrawSubset n
Next n
End Sub
(ici il par économie de place je n'ai mis que la rotation en y, il faudrait faire de meme avec les axes x et y)

4) dans la sub Prendu, entre le BeginScene et le EndScene :
Objet3D_Afficher Voiture  'où Voiture est un objet ModeleObjet3D
5) Pour faire une rotation de l'objet on rajoute dans la boucle principale :
Voiture.Rotation.y = Voiture.Rotation.y + 0.1

voila A+


Le : 14/03/2004 21:46:11
Source : 3D ISOMETRIQUE
au lieu de fair 2 millions de variable le mieux serai de faire un tableau :
Global Sprite(1 to 8) as DirectdrawSurface7

dans la sub CreateSurfacefromFile :
Dim n as byte
for n = 1 to 8
    Set sprite(n) = dd.CreateSurfaceFromFile(App.Path & "\textures\Herbe" & n & ".bmp", Erso)
    sprite(n).setColorKey DDCKEY_SRCBLT, Ck
next n
Pareil pour le perso, mais avec un tableau en 2 dimensions

sinon mets :
ChDir App.Path
dans le form_load et tu n'aura plus à le remettre à chaque chargement d'un sprite

derniere chose : par pitié mets un tab à l'intérieur les boucles if, on comprend rien à ton code!
4/10



1


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,172 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.