débutant en 3D

Généralités sur la programmation 3D
djfeeler2
Messages : 65
Inscription : lun. 02/juil./2007 20:57

débutant en 3D

Message par djfeeler2 »

Salut a tous !

J'aimerais créer un jeu en 3D ! mais avant il faut commencer les bases :lol: c'est ce que j'ai fais mais je bloque sur certains points ! auriez vous des liens avec des tutoriels sur la 3D ?

J'ai commencé a étudier les tutoriaux de game creator et je bloque sur les datas du deuxieme tutoriel la création d'un cube, j'ai compris la partie 0 à 3 mais pas la suivante, quelqu'un pourrais m'expliquez comment cela fonctionne ?

merci d'avance :D
bernard13
Messages : 1221
Inscription : mer. 05/janv./2005 21:30

Message par bernard13 »

bonsoir

ici Il ya un gars super qui s'appelle Comtois et qui est specialiste de la 3D
en autre .

sinon regarde la section 3D du forum .
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

bernard13 a écrit :ici Il ya un gars super qui s'appelle Comtois et qui est specialiste de la 3D en autre .
Je ne fais que des cubes ! C'est tout ce que je sais faire en 3D.
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Re: débutant en 3D

Message par comtois »

djfeeler2 a écrit :J'ai commencé à étudier les tutoriels de game creator et je bloque sur les datas du deuxième tutoriel la création d'un cube, j'ai compris la partie 0 à 3 mais pas la suivante, quelqu'un pourrait m'expliquer comment cela fonctionne ?
Mets le bout de code qui te pose problème. Ou le texte qui n'est pas assez clair pour toi, que je comprenne de quoi tu parles exactement.

Apparemment c'est les datas ton problème , mais quoi exactement ? le fonctionnement des datas ou autre chose ?
djfeeler2
Messages : 65
Inscription : lun. 02/juil./2007 20:57

Message par djfeeler2 »

non pas le fonctionnement des datas. je ne comprend pas comment fais le programme pour chaque face du cube pour afficher chaque face avec les datas.
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Tout se tient ici

Code : Tout sélectionner

CreateMesh(#Mesh, 100)
Options = #PB_Mesh_Vertex | #PB_Mesh_Normal | #PB_Mesh_UVCoordinate | #PB_Mesh_Color
SetMeshData(#Mesh, Options      , ?Sommets, 24)
SetMeshData(#Mesh, #PB_Mesh_Face, ?Triangles, 12)
Cette ligne permet d'indiquer comment chaque vertex sera défini

Code : Tout sélectionner

Options = #PB_Mesh_Vertex | #PB_Mesh_Normal | #PB_Mesh_UVCoordinate | #PB_Mesh_Color
Pour chaque vertex , il faut :
3 données (float) pour la position du vertex
3 données (float) pour la normale au vertex
1 donnée (long) pour la couleur
2 données (float) pour les coordonnées uv de la texture.

Par exemple pour le premier vertex

Code : Tout sélectionner

;Dessus 0 à 3
Data.f -0.5,0.5,-0.5 ; x=-0.5 y=0.5 et z = -0.5
Data.f 0,1,0 ; La normale est orientée vers le haut
Data.l 0 ; Couleur noir
Data.f 0, 0  ; u=0 et v=0      
Comme je l'indique dans le tut , il y a 4 vertices par face, et 6 faces pour former un cube, soit 24 vertices. C'est la valeur que tu retrouves dans la fonction SetMeshData().

Tu as juste à mettre tes 24 vertices , les uns à la suite des autres, il n'y a pas d'ordre particulier. Pour m"y retrouver j'ai préféré les trier par face, mais c'est pas obligatoire. Ce qu'il faut retenir c'est que le premier vertex est à l'index = 0 et le dernier aura l'index=23 (l'index va de 0 à 23)

Ensuite c'est le numéro d'index que tu utilises pour former un triangle.

Par exemple pour la face du dessus , sachant que chaque face est constituée de deux triangles , tu as :

Code : Tout sélectionner

Triangles:
;Face en Haut
Data.w 2,1,0
Data.w 0,3,2
Chaque triangle a besoin de 3 index (word).
- Le premier triangle sera tracé entre les vertices 2,1 et 0.
- Le second triangle sera tracé entres les vertices 0,3 et 2.

Cette fonction permet d'indiquer au moteur 3D comment seront formés les triangles.

Code : Tout sélectionner

SetMeshData(#Mesh, #PB_Mesh_Face, ?Triangles, 12)
#PB_Mesh_Face = pour indiquer que ce qui suit concerne la formation des triangles

?Triangles = Pour indiquer à quelle adresse se trouve les données des triangles.

12 = Pour indiquer combien il y a de triangles dans le mesh.

Et ensuite le moteur 3D (Ogre) se débrouille avec tout ça pour construire le mesh.

Ceci dit, tu n'as pas besoin de maitriser tout ça pour faire de la 3D, tu peux utiliser un éditeur 3D ,ça sera quand même plus simple pour faire tes modèles 3D :)
djfeeler2
Messages : 65
Inscription : lun. 02/juil./2007 20:57

Message par djfeeler2 »

merci pour cette réponse ! j'aimerais créer un terrain modulable !
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

j'avais fait des trucs là dessus 'M3D_Matrix3D'
http://herved25.free.fr/pureindex

Le code source est disponible, c'est à l'abandon pour l'instant j'attends la mise à jour de la lib 3D pour éventuellement reprendre le code autrement.

[EDIT]
C'est pas vraiment une gestion de terrain.
Dernière modification par comtois le mer. 28/nov./2007 23:42, modifié 1 fois.
djfeeler2
Messages : 65
Inscription : lun. 02/juil./2007 20:57

Message par djfeeler2 »

moi aussi je suis bloqué ! je ne peux pas exporter mes mesh ! car l'exporteur d'ogre n'est pas compatible avec la dll de purebasic :?
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Moi je n'étais pas bloqué, je pouvais faire des petits jeux avec :)

Depuis j'ai appris d'autres choses, d'autres méthodes de calcul pour les normales (pondérées par les angles) ou la hauteur sur le terrain, et PureBasic a évolué, il y a certainement de grandes améliorations à apporter au code et pourquoi pas de nouvelles fonctionnalités.

En fait, ça a un usage assez restreint mon truc, mais c'est un bon exercice.
djfeeler2
Messages : 65
Inscription : lun. 02/juil./2007 20:57

Message par djfeeler2 »

tu ne connaitrais pas un logiciel qui puisse exporte en format mesh ? avec les materials ?
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

djfeeler2
Messages : 65
Inscription : lun. 02/juil./2007 20:57

Message par djfeeler2 »

es ce que l'exporteur gratuit est suffisant ?
Avatar de l’utilisateur
Fortix
Messages : 559
Inscription : mar. 30/mai/2006 17:03

Message par Fortix »

Salut Comtois

Je suis très interessé par un tut complet sur la création de mesh, car je croix que tu es la personne qui pourra enfin me faire comprendre ce chapitre de l'histoire PBV4

un tut zip Télechargeable serait parfait :D

si tu te decide à réaliser un tut, ne pert surtout pas de temps dans la déco :wink:

ta réponse Comtois :D ?
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Ma réponse ?
regarde ici http://purebasic.developpez.com/sources/
Dans le chapitre 3D
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Répondre