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 !

MOTEUR 3D


Information sur la source

Catégorie :3D Niveau : Débutant Date de création : 09/03/2004 Date de mise à jour : 17/03/2004 13:01:29 Vu / téléchargé: 17 915 / 4 997

Note :
9,8 / 10 - par 15 personnes
9,80 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (46)
Ajouter un commentaire et/ou une note

Description

Voici un énième moteur 3D, avec comme particularité de pouvoir associer à tout objet de la scene un comportement propre à lui-meme.
En fouillant un peu, vous verrez que créer un environnement 3D interactif est trés simple, même sans connaitre un poil de 3D.
La source d'origine (en anglais) se trouve sur le site www.illogicz.com.
Celle-ci, je vais essayer de l'uploader souvent (rajout de primitives, gestion des couleurs, y a pas mal de boulot encore à faire...)
J'ai rajouté un Pong en 3D, si vous cliquez sur le rectangle...
 

Conclusion

Tout est en classe, donc, ouvrir les clips de la bibliothèque pour comprendre
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de darknessgc le 10/03/2004 03:53:38

Je l'ai downloader y'a une semaine est j'ai rajouté kelkes polygones et cherché à l'utilisé un peu , je te send mes sources si ca t'interesse.

signaler à un administrateur
Commentaire de tom le 10/03/2004 11:30:05 administrateur CS

ben en fait, je l'avais depuis pas mal de temps, mais je n'arrive plus à remettre la main sur la version dans laquelle j'avais rajouté plusieurs primitives... Ne t'en fais pas, je vais l'uploader à chaque fois que j'en rajouterais... Et je vais rajouter un tuto pour la création de scenes.
Par contre, si quelqu'un a la formule pour l'anneau de mobius, ca m'aiderais...

signaler à un administrateur
Commentaire de tom le 10/03/2004 13:55:24 administrateur CS

Upload:

Rajout de la primitive Cylindre, et  de la fonction déformerModele(x,y,z)

signaler à un administrateur
Commentaire de top30 le 10/03/2004 17:00:55

EHH Ca te dirait pas de la reprogrmmer en AS2... Voir mème si mettre à plusieurs... J y ai jeté un oeil et vu la super bomme organisation de la source je ne penses pas que cela soit difficile !

Puisque l'AS2 et le lecteur 7 sont 30% plus rapide ca faut pas le coup pour de la 3D...

10/10 !

signaler à un administrateur
Commentaire de darknessgc le 10/03/2004 20:03:55

vu ke tout mes données sont un peu en fouilli j'ai uppé tout ce que j'avait fait sur le net a l'adresse :
http://www.n-o-i-r.fr.st/laboratoire/moteur3d

voila, y'a les fla, les swf pour avoir un apercu des fla avant de les telecharger et pis quelques un des fichiers sur lekels je bosse en ce moment. bon dl et merci pour la class cylindre.

PS: c'est le fouilli alors n'hésitez mais téléchargez conscentieusement.
A bon entendeur Salut.

signaler à un administrateur
Commentaire de tom le 11/03/2004 11:55:57 administrateur CS

Eh darknessgc! Avant de t'emballer, est-ce que tu as au moins ouvert ma source? Tu sais, elle n'a rien à voir avec celle que tu as téléchargé sur illogicz. J'ai dit que c'etait l'originale, pas le clone...
Top30, ouais, pourquoi pas, faut juste que je voyes la syntaxe...

signaler à un administrateur
Commentaire de tom le 11/03/2004 14:17:24 administrateur CS

upload:
rajout de la primitive Cone
rajout de l'objet InterpolationModele()
et de la fonction commencerInterpolationModele()

signaler à un administrateur
Commentaire de top30 le 12/03/2004 02:40:22

Ca me plait ta facon de voir ! J aime comment  tu penses tes lignes.

Tu sais ou l'on peu "trouver" ce qui fait les "couleurs" des objects... voir si L'on pourrait pas jouer sur les couleurs ou les ombrages ? Je pourrais essayer d'ajouter des "contraste" au objects... Pour pour faire des couleurs pleines.. Pour voir que la forme de l'object ?? Suis -ja clair ?huummm ?

= )

signaler à un administrateur
Commentaire de darknessgc le 12/03/2004 04:02:38

certes, et je m'en excuse si je t'ai offensé. mais loin de là mon intention. J'ai utilisé le moteur de illogicz c'est vrai , mais faut 'til que je reprenne tout et l'insère par au dessu du tiens, choix difficile. J'ai bien le fait ke ton moteur dérivé soit en francais , plus facile pour comprendre pour moi, mais je pense que les poly que j'ai créer et je le souhaite puisse aussi s'adapter à ta configuration de moteur. Je te consède ke j'ai cru que le moteur présenté n'était que la transcription francaise du moteur de illogicz ce qui déjà aurait été pas mal. Mais à mon grand plaisir je vois que bon nombre de d'idée et créations dans ce .fla se détachent de l'origine et dénotent un aspect très interessant. pour cela merci.

signaler à un administrateur
Commentaire de tom le 12/03/2004 11:59:54 administrateur CS

Top30, la fonction pour la couleur se trouve dans le moteur (composant principal >> fonction "render()"). C'est un casse-tete: le rendu se fait poly par poly (ca c'est bien), mais il faudrait voir la couleur par rapport à la distance camera/poly (ca y est, en version simpliste), mais aussi (et ca n'y est pas) l'inclinaison par rapport à la camera, et la je nage encore un peu. Mais à ce moment, ca voudrait dire rajout de source lumineuse, et la, ca devient plus complexe encore, mais j'y crois (ca te vas comme défi?).
Darkness, non, je ne me sens pas faché, il fallait juste que tu ouvres ma source pour comprendre comment je pensais ca... J'ai vu ce que tu as fait (tout tes travaux), et j'ai l'impression que tu as avancé un peu à taton (ne le prend pas mal).
Je prefere penser des fonctions comme dans 3DSMAX: un modele de primitive, sur lequel on va associer des déformations.
Bon, je n'en suis pas encore au calcul booleen entre deux primitives, mais j'y pense... peut etre au moins grouper des modeles ensemble...
Pour l'instant, je m'arrache la tete pour une primitive Tore(grandrayon, petitrayon, segmentsperipheriques, segmentsinterieur).
Voilaaaa, si quelqu'un a une formule toute faite(lol)...

signaler à un administrateur
Commentaire de afad le 12/03/2004 13:38:01

J'ai pas encore regardé la source, mais si je peux filer un coup de main en Math !!!

Pour faire un Tore il te faut 2 variables, t et u,  La variation de u produit un cercle, tandis que la variation de t fait pivoter le cercle autour de l'axe  pour former le tore.

function [x,y,z] = tore(theta, phi)
  // paramétrisation classique d'un tore de rayons R et r et d'axe Oz
  R = 1; r = 0.2
  x = (R + r*cos(u)).*cos(t)
  y = (R + r*cos(u)).*sin(t)
  z = r*sin(u)

C'est la paramétrisation classique de la fonction TORE dans l'espace (x,y,z) par contre j'ai pas regardé la façon dont tu traçais tes primitives......

A+
aFaD

signaler à un administrateur
Commentaire de afad le 12/03/2004 13:52:44

Oups ya une erreur dans le passage des paramêtres, ce ne sont pas les bonnes variables :

function [x,y,z] = tore(t, u)
  // paramétrisation classique d'un tore de rayons R et r et d'axe Oz
  R = 1; r = 0.2
  x = (R + r*cos(u)).*cos(t)
  y = (R + r*cos(u)).*sin(t)
  z = r*sin(u)

Pout t et u, normalement il faut les faire varier de 0 à 2pi.

signaler à un administrateur
Commentaire de tom le 12/03/2004 14:55:36 administrateur CS

Merci Afad,
OK, t et u correspondraient à  grandrayon et petitrayon, mais dans un modele 3D, il faut rajouter segmentperipherique, et segmentinterieur qui correspond aux nombres de polygones, ou d'arretes, que l'on va produire .
Pour la creation d'une primitve: on commence par la création des points coordonnées(x,y,z). Une fois qu'on les a tous définis, il faut creer les polygones, qui sont des associations de 3 coordonnées definies precedemment, sachant que ce polygone n'est visible que si les points s'associent dans un sens trigonométriques (un poly n'a qu'une face visible, pour eviter le calcul des faces cachées).
Mais je vais garder ta base...

signaler à un administrateur
Commentaire de tom le 12/03/2004 15:03:33 administrateur CS

euh.. grandrayon et petitrayon correspondrait plutot à R et r, ouais... Et t et u varierait de 0 à 2PI selon l'enchantillonage de segmentperipherique et segmentinterieur dans des boucles for... c'est ca... Mmmm j'y vois déja plus clair...
Merci encore Afad...

signaler à un administrateur
Commentaire de afad le 12/03/2004 15:59:44

Oui c'est ça, R: grand rayon; r: petit rayon..... Il te faut deux boucles imbriquées, u de 0 à 2pi( 2pi radians = 360 degrés) pour la création d'un cercle puis une boucle parente t de 0 à 2pi pour faire translater le cercle autour de l'axe Oz créant le TORE (ça s'appelle une extrusion circulaire).

signaler à un administrateur
Commentaire de tom le 12/03/2004 16:08:57 administrateur CS

ouais, no problem, c'est ce que j'avais en tete

signaler à un administrateur
Commentaire de darknessgc le 12/03/2004 22:01:12

Tom , Oui j'ai procédé par taton, n'étant encore que débutant en flash , 2 mois d'ancienneté environs. Il est assez difficile de Comprendre tout ca et vu k'en math j'suis pas fort non plus ca rajoute un petit plus très interessant. Sinon pour dessiner une sphère je me suis laissée entendre par un pote prof de math k'y avait une formule toute faite. Je vais lui redemander.

signaler à un administrateur
Commentaire de tom le 13/03/2004 23:20:54 administrateur CS

et hop!
upload:
ajout de la primitive Tore(grand rayon, petit rayon, nbr de segments peripheriques, nbr de segments interieurs): un tore parametrable
et aussi de la primitive Quadricube(longueur) : un gadget...

Darkness: le code de la sphere est deja donnée dans la source originale...

signaler à un administrateur
Commentaire de tom le 14/03/2004 12:56:38 administrateur CS

Au fait pour ceux que ca interresse, j'ai trouvé un site pour les paramétrisations cartésiennes d'objets 3D:
http://www.mathcurve.com/surfaces/surfaces.shtml

signaler à un administrateur
Commentaire de tom le 15/03/2004 16:03:18 administrateur CS

upload:
Pong 3D , en cliquant sur le cube allongé.
J'y explique comment manipuler les modeles créés.

signaler à un administrateur
Commentaire de afad le 15/03/2004 16:16:35

Excellent ce site :)

Bien vu pour le Tore mais dés que tu passes à des modêles un peu plus complexe au niveau du calcul des points, Flash a vraiment du mal......

signaler à un administrateur
Commentaire de tom le 15/03/2004 17:10:34 administrateur CS

Eh oui, on doit jouer avec les lois du minimum...

signaler à un administrateur
Commentaire de darknessgc le 16/03/2004 12:30:00

liens pour la Liste des sommets, faces et arêtes d'un icosaèdre inscrit à une sphère de rayon 1

http://www.alain.be/icosaedre.html

ainsi que plusieurs autre polyedres , ce qui permettrai d'utiliser autre chose que la sphere pour representer le ballon, genre un icosaedre tronqué , a+

signaler à un administrateur
Commentaire de tom le 16/03/2004 14:24:55 administrateur CS

Les icosaedres, dodecaedres, et autres polyedres archimediens ne peuvent pas etre optimisés. Ils ont un nombre fini de polygones... Il n'y a pas de formules (ou du moins, je n'en vois pas) pour en créer sans entrer tous les points à la main. C'est un travail que je te laisse, si tu veux le faire.
Le prochain que je me tape, c'est soit le coquillage (avec des exponentiels, je vais me marrer...), soit les courbes de bezier 2D 3D (et à ce moment, je retablit les vertex) qui me permettront en suite de creer des surfaces developpables...
Mais ce n'est pas pour tout de suite...

signaler à un administrateur
Commentaire de darknessgc le 16/03/2004 22:38:58

ca a l'air cool ca :-D

signaler à un administrateur
Commentaire de darknessgc le 17/03/2004 03:57:11

Petite  question : comment faire pour faire interagir un clip exterieur (bouton) avec un mouvement de camera ou de modèle ?

signaler à un administrateur
Commentaire de darknessgc le 17/03/2004 04:06:31

Comme je l'ai dit plutôt , je ne suis pas très fort en mathématiques

mais comme tu à l'air d'être toi de bien t'amuser avec , c'est fou ce que je peux envier les gens qui manipulent les maths avec une telle facilité déconcertante. je te poste ces quelques liens qui pourront, si tu y vois interet m'aider :-D

http://www.ac-noumea.nc/maths/amc/polyhedr/convex4.htm
et
http://hypo.ge-dip.etat-ge.ch/www/math/html/node45.html
woila bonne journée et merci pour ton travail comme toujours. Ainsi k'a afad pour les nombreuses sources très interessantes que j'ai pu voir sur flashkod... a bon entendeur Salut.

PS: et top30 aussi paske j'aime bien ce k'il fait aussi... MERCI

signaler à un administrateur
Commentaire de tom le 17/03/2004 13:13:41 administrateur CS

Upload:
Les vertexes sont actifs, les primitives ont été modifiées, pour afficher soit les vertexes, soit les polygones, soit les deux...
J'ai rajouté un exemple de controle grace à des boutons pour toi, darkness...

Celui qui maitrises les maths, ce n'est pas moi, c'est Afad. Moi, je maitrise juste le rapport entre les maths et la programmation (l'ordinateur est un calculateur, rien de plus, rien de moins)... Et je rage de ne pas avoir suivi les cours de math quand j'étais en IUT. Je me rends compte que ca me manque...
Les maths, c'est comme la musculation: si tu t'entraines tous les jours, tu developpes tes muscles...

signaler à un administrateur
Commentaire de darknessgc le 17/03/2004 17:00:33

merci Tom pour les contrôles à partir de clip. Pour ce ki est du dévelloppement de mes muscles, ils sont autant en végétation que mes mathématiques, du moins uniquement pour ceux qui se paralysent. mais merci kan même. a+

signaler à un administrateur
Commentaire de darknessgc le 18/03/2004 04:27:03

serait-il possible d'adjoindre une texture plutôt qu'une valeur RGB aux différents éléments, je me doute que cela devrait ralentir le flash mais cela pourrait dénoter d'une certaine utilité.

signaler à un administrateur
Commentaire de tom le 18/03/2004 11:06:31 administrateur CS

Heu alors la tu pousses un peu loin, oui, il y a moyen de le faire, (regarde les source de blackwizard pour voir comment), mais ca demande de rajouter une fonction particuliere pour les bitmap dans le moteur, et aussi le fait que ce n'est plus les memes moyens pour arriver au résultat: il faudra utiliser _rotation, en fonction de rotX et rotY, en plus de l'inclinaison à calculer...
Bref, c'est compliqué mais c'est faisable... Mais ca m'etonnerait que je le rajoute (j'essaierai quand meme quand j'aurai  le temps)
Je te conseille de regarder aussi la source intitulée "raycasting" qui impressionne toujours...

signaler à un administrateur
Commentaire de darknessgc le 18/03/2004 16:20:01

J'ai regardé les sources de blackwizzard et c'est magnifique en effet ,
j'ai aussi trouve aux aléa d'un tour sur flashkit un petit moteur qui intègres quelques textures. Je l'ai Uppé sur
http://www.n-o-i-r.fr.st/laboratoire/raycasting f5.zip

comme ca tu pourras jeter un coup d'oeil, j'ai l'impression qu'il quelques petits principes interessants pour eviter des calculs.

signaler à un administrateur
Commentaire de tom le 18/03/2004 17:49:46 administrateur CS

...
Si je t'en ai parlé, c'est que je les ai DEJA vu...

signaler à un administrateur
Commentaire de darknessgc le 18/03/2004 18:11:22

la source ke j'ai uppé n'est pas de blackwizzard.

signaler à un administrateur
Commentaire de righton le 18/03/2004 20:25:54

Ouah y'a de la maitrise ! bravo tom !

signaler à un administrateur
Commentaire de tom le 18/03/2004 20:36:04 administrateur CS

Merci Righton :D
Darkness: sans ouvrir ta source, je sais qu'elle vient de Strille, j'ai deja decortiqué toutes ses sources... Blackwizard a fait de meme avant de poster les siennes... Et la source de raycasting a étée postée par top30 en disant qu'elle venait de strille... comme ta source si tu avais lu le commentaire sur flashkit... De toute facon ce sont toujours les memes methodes, que ce soit Strille, Blackwizard, Top30, ou moi...

signaler à un administrateur
Commentaire de darknessgc le 19/03/2004 02:35:01

gomene

signaler à un administrateur
Commentaire de tom le 22/03/2004 14:25:46 administrateur CS

Je la telecharge... je l'ouvre... et pan! copyright STRILLE! comme par hasard!

signaler à un administrateur
Commentaire de AtomPouce le 23/03/2004 12:25:25

bravo C classe ! j en ai marre , lorsque G une idee un minimum originale , ya quelqu un ki sort un truc genial sur ce sujet avant ke G fini ... bou ... enfin bravo kan meme !

signaler à un administrateur
Commentaire de tom le 24/03/2004 14:45:46 administrateur CS

:p

signaler à un administrateur
Commentaire de Marvin le 23/04/2004 18:56:47

le .fla marche pas chez moi..
<:( moi qui voulait me mettre a la 3d...

signaler à un administrateur
Commentaire de tom le 06/05/2004 15:03:47 administrateur CS

Arf, la source est en flashMX2004

signaler à un administrateur
Commentaire de Blacknight91titi le 28/11/2004 19:27:30

Génial !!!

signaler à un administrateur
Commentaire de Cracking_Cow le 27/09/2005 20:49:11

Vraiment du très bon boulot. Je connaissais ce moteur dans sa version d'origine, j'avoue être surpris en voyant la tienne... ça rivalise presque avec les scripts raycasting, j'adore :P

Pour gérer les textures, j'avais trouvé un site sympa (je me souviens plus de l'url, flûte...), bourré de tutoriels flash sur la 3d, dont les textures vectorielles et les textures bitmap. L'inconvénient est simple, les textures se gèrent par poly, et je vois pas vraiment comment découper la texture d'un tore en quelques dizaines de triangles ^^. Enfin, oui, c'est possible, mais très long pour être mis en place... Imagine, découper une image dans Flash avec des traits, créer un MC pour chaque petit triangle... J'en transpire déjà ^^.

Sinon, pour revenir au moteur, j'ai un problème avec la création de modèles ; j'ai créé un lecteur xml afin de pouvoir importer sans trop de souci des modèles de 3dsmax (3dsmax vers xml : j'ai repris le programme du moteur 3DFS, superbissime ^^).

Bref, j'ai ajouté mon code en tant que modèle (comme le tore, par ex.), la lecture du fichier marche bien, super. Par contre, j'vois pas comment intégrer mon modèle dans le moteur... j'ai cherché la trace du cube, tore, etc, je ne trouve que le MC du cube dans le composant 'moteur'...... Donc, où se trouvent ces satanés MC-modèles, ou plutôt, comment intégrer mon modèle ?

Voilà, désolé pour la petite tartine, et encore félicitations pour tes modifications ! ;-)

signaler à un administrateur
Commentaire de tom le 28/09/2005 10:23:44 administrateur CS

Ils sont rangés dans le dossier modeles Chaque modele est un mc contenant le code de création (si je me souviens bien). Il faut créer ton modélé de la meme facon que les autres MC de la bibliotheque.

signaler à un administrateur
Commentaire de damned13 le 28/02/2006 09:03:25

Salut TOM,
bravo pour la magnifique adaptation de ce moteur 3D. 10/10 !
Néanmoins, le seul reproche (minime) est que toutes les équations de Penner (http://www.robertpenner.com/easing/) ne sont pas incluses. Et en essayant d'en rajouter une (EaseOutElastic) en rajoutant l'équation  et en l'incluant dans le tableau 'méthode', le déplacement n'a rien à voir avec un elastique : il disparait puis revient à sa place initiale. J'ai évidemment modifier le "si nombre>19" par "si nombre>20".
Je sais que cela fais déjà un petit moment que tu as créé ce moteur 3D mais si toi - ou un autre- pouvait m'éclairer ce serait sympa.

Ajouter un commentaire



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,062 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é.