particules 3D
Le samedi 9 août 2008 à 17:49 :: Flash-AS3 :: #45 :: rss :: 4496 lectures
je me suis enregistré sur MXNA fr (Hybris quand tu nous tiens), c'est donc mon premier post. je m'excuse d'avance si ça fait doublon.
ce blog parle de ce que je fais dans ma cuisine et au boulot : des expériences graphiques SANS FLEX
.
j'espère que ça te plaira.
"Des particules 3D? on en a déja mangé à midi... pffff"
"j'veux pas l'savoir tu termines ton assiette!"
tout a commencé par un pari débile avec un collègue de bureau (mon Robin que j'ai).
en fait je lui ai montré les attracteurs étrange et il est grave tombé dedans sauf qu'au lieu de les faire en 2D, comme les honnêtes gens, il les a portés en 3D direct. ça envoie du paté autant le dire de suite.
le truc c'est qu'il a commencé par utiliseer PV3D, hors PV3D c'est nul.
ou du moins c'est pas adapté, il y avait une couche effects qui permettait entre autres de faire des 3DPixels mais elle a été remaniée dans greatWhite et donc tout le boulot de Robin est tombé à l'eau.
alors que certains font des paris sur les meufs ou l'issue des matches de foot ('match de foot' = grégarisme regréssif pour frustrés), nous, en bons geeks, on s'est dit: "vu comme c'est spécifique (afficher des nuages de points) autant se recoder un moteur maison"
c'était vendredi il y a un mois et on y a passé le week end chacun de son côté. avant de se lancer, on a regardé 2,3 trucs.
c'était il ya plus d'un an : http://temp.roxik.com/
si tu n'as pas bavé devant cette démo, tu peux sortir de table.
en regardant bien je me suis dit qu'il est vraiment fort ce roxik.
puis j'ai voulu faire pareil bien sûr, copieur, alors j'ai mieux regardé et il y a 2, 3 trucs que j'ai voulu voir si c'était vrai cette légende:
- afficher un nombre limité de particules simultanément (même si toutes sont traitées)
- stocker des bitmaps pré-floutés pour simuler la profondeur
- snapper les positions : concrètement, utiliser des int au lieu des Numbers pour rendre les positions.
- utiliser du copyPixels au lieu de créer 12.000 sprites
en faisant tout ça dans l'ordre, ça devrait rouler, donc j'ai exhumé mon "moteur" "3D", qui n'est autre que l'application d'un tuto de senocular sur les bases de la 3D( chez kirupa ). et zou.
ben ça rend pas trop mal en fait. sauf que quand je lui ai montré tout fiérot, starmonkey m'a dit "c'est nul" ce à quoi j'ai répondu "petit con" ou un truc du genre.
regarde, tu peux clicker sur le bouton en bas pour lancer / arrêter le rendu (crois moi que tu vas me remercier).
Tu peux aussi faire click bouge au milieu (la 3D c'est mieux en 3D
). le mouvement est naze mais c'est pour monntrer que ça bouge.
là il y a 20.000 10.000 particules juste pour fumer ton processeur.
enlocal je suis monté à 25.000 sans qu'il souffle trop
là il y en a 5000 mais avec un effet de ouf /*hum...*/ toujours pour fumer ton proc'
on pourrait séquencer les mouvements pour obtenir des chouettes résultats, là c'est juste pour l'exemple
là c'est 1000 particules avec un bitmap préprocessé et l'application des préceptes sus-cités. dites moi si ça tourne chez vous.
là c'est une photo de quand j'ai gagné le concours de shih-tzu

nan je déconne, j'ai pas gagné, je suis arrivé 7ème...
là c'est quand on leur dit de recomposer un truc genre une image (8900 p). oué elles font pas de mouvements sur X et Z, c'est... pour l'exemple...
là c'est quand on se rappelle qu'on a fait un typographeur avant... bon, juste 2500 p. sinon, ç'aurait vraiment brusqué le proc' mais j'ai testé avec 10000 c'est vraiment sympa
bon, si tu es encore là c'est que tu n'as touché aucune de ces animations.
prudence est mère de sûreté.
que peut-on en déduire?
que ça va vite quand on précalcule les textures.
que ça va vite quand on utilise des int au lieu des numbers.
que du coup on peut envoyer de la rondelle sur le nombre de particules.
quand ça va vite, on voit moins les artefacts, il n'y a qu'à regarder celui avec les boulettes pour s'en convaincre: le z-sorting pêche gravement.
sur la démo de Roxik, il a le bon goût de les espacer beaucoup pour diminuer cet effet.
parcontre ça rend bien le 'volume' le modelé du cône avec des ombres/lumières trop bien.
les débouchés pour ce genre de trucs sont limités mais pas nuls. au boulot je travaille sur un projet dont je n'ai pas le droit de parler mais dans lequel on va utiliser un truc de ce goût là.
sinon, je n'ai pas trop parlé des mouvements, c'est un peu comme en 2D. Roxik fait tomber ses billes à la verticale pour s'épargner du calcul. On n'est pas dans un vrai espace 3D qui nécessiterait un WOW. du coup on peut aussi faire des vieilles ruses comme un traitement 2D sur les points calculés en 3D. on peut aussi se servir de infos 3D pour rendre des relations entre des clips 2D. C'est assez ouvert en fait.
enfin, d'habitude je mets les sources mais là il y a 25 versions et ça me saoûle de ranger. si ça intéresse quelqu'un, je mettrai une base au propre (dans la limite de mes moyens).
copains
Commentaires
1. Le dimanche 10 août 2008 à 14:19, par Arthy
2. Le lundi 11 août 2008 à 10:46, par starmonkey
3. Le lundi 11 août 2008 à 14:42, par hadji
4. Le lundi 11 août 2008 à 15:37, par nicoptere
5. Le samedi 16 août 2008 à 01:44, par tlecoz
6. Le jeudi 21 août 2008 à 11:15, par ynk
7. Le jeudi 21 août 2008 à 19:39, par nicoptere
8. Le lundi 25 août 2008 à 10:35, par kiroukou
9. Le lundi 25 août 2008 à 20:03, par nicoptere
10. Le lundi 13 octobre 2008 à 21:26, par Fardeen
11. Le dimanche 14 décembre 2008 à 23:08, par dante
12. Le mardi 16 décembre 2008 à 14:07, par nicoptere
13. Le vendredi 6 mars 2009 à 01:56, par conishiwa
Ajouter un commentaire