PDA

Voir la version complète : Thinking Particles : première approche ^^



walien
14/08/2005, 17h17
Salut tout le monde.
Comme annoncé dans le titre, j'ai décidé de tenter un peu les thinkings particles, après quelques prises de têtes j'ai enfin réussi à obtenir un début de machin truc ^^. J'ai réussi à faire une collision avec les particules sur un objet (rigolez pas j'ai souffert pour y arriver).
Le problème est que j'ai un peu de mal à assimiler le systeme de groupe de particules, j'ai tenté de faire en sorte que 2 types de lumieres soient émises mais il n'acceptait pas de les emmetre, je me suis donc résolu à utiliser le noeud "P Forme" au lieu du noeud "P Groupe". Je ne sais pas quelle étape j'ai manqué, si jamais quelqu'un pouvais m'orienter cela me serais utile.
Merci d'avance.

http://walien.free.fr/tp/tpxpresso.jpg
Vidéo 2Mo .Mov (http://walien.free.fr/tp/TP1.mov)

Angeylus
14/08/2005, 17h49
Bah il y en a qui s'amuse bien pendant leur vacance :mrgreen:

Red
15/08/2005, 00h33
J'm y suis mis aussi récemment, avec comme premier objectif la reproduction d'une tablette d'aspirine qui se dissout dans l'eau. (j'me permet de poster ici pour pas multiplier les topics d'approche des TP)

La vidéo : http://ns2118.ovh.net/~deltazon/autres/red_testaspi.mp4

L'expresso expliqué (sans garantie sur la qualité et l'élégance car je débute) : http://ns2118.ovh.net/~deltazon/autres/red_aspipresso.png



Walien, pour ton prob, à ce que j'ai compris jusque là, le noeud PForme ne peut pas être remplacé par les groupes et leurs paramètres... Tu peux te servir des groupes pour définir les formes, mais tu ne peux pas échapper au noeud PForme.

walien
15/08/2005, 06h12
Mais alors un groupe sers à quoi ? je pensais qu'il permettait de rassembler plusieurs objets à emmetre. Vas falloir que je potasse encore le manuel.

Angeylus
15/08/2005, 11h24
J'avais fait un ptit truc avec les TP, et j'avais mis un tut, mais faut que je le retrouve, peut-être qu'il y a une liaison.

kiteman
15/08/2005, 16h36
Mais alors un groupe sers à quoi

bein un groupe c'est comme une selection parmis tes particulles ... tu peux appliquer des effets/parametres , qu'a une partie spécifique de tes particulles comme ça ...ici dans l'exemple de Red , il se sert de groups comme des "états" ... ( la particulle nait à l'état "group1" ..puis passe "group2" quand elle est à la surface de l'eau et au dessus ... et enfin "group3" sa mort sur la surface )

en tout cas bravo pour vos tests c'est sympa* :poucehaut: ... j'hésitais à me mettre a RFlow3 , mais je pense que l'on fait aussi bien avec TP voir meme + avec le panel de paramêtres customisables de TP .

Allez on va lancer un nouveau "challenge" : recréer des effets de dynamique de fluides ( que l'on pourrait faire avec RF3 ) !* :mrgreen: vous êtes partant ? ça cerait un bon moyen d'apprendre et de faire partager aux autres apres ?
le " SFDC " :mrgreen: ( Slow Fluid Dynamic Challenge )

Angeylus
15/08/2005, 18h18
Je suis d'accord avec monsieur Kitekat, je ne vois pas beaucoup de monde qui utilise les TP, c'est peut-être une bonne idée de s'y plonger tous, enfin ce qui veulent!

Je vais tenter quelque trucs :art:

Red
31/08/2005, 04h11
Et on continue : un simulateur de pop-corn (on arrête pas le progrès :mrgreen: )

Le concept est simple. On verse une certaine quantité de grains de maïs dans une poele. Certains tombent à côté. Ceux qui sont dans la poèle doivent "popper" (à cause du chaud), et ceux qui ne le sont pas, ne doivent pas.
On peut complexifier : si le grain touche le fond de la poele, il chauffera plus vite (et poppera aussi plus vite). Et encore : la poele peut être plus chaude par endroit (au milieu ?), les grains du milieu popperont donc statistiquement plus tôt. Il faut donc une astuce pour gérer le temps de cuisson.
On ajoute à tout ça la dose d'aléatoire qui fait que notre monde est beau et on obtient un bel Xpresso (zut, moi qui voulait faire du pop-corn...)

l'anim http://ns2118.ovh.net/~deltazon/autres/red_popcorntest.mov.ff.avi (2mo)

l'xpresso http://ns2118.ovh.net/~deltazon/autres/red_popcorn.png

L'xpresso c'est un peu le bordel... Si c'est incompréhensible et que ça intéresse du monde je le colorierai avec explications supplémentaires. Les collisions sont encore pas du tout gérées, c'est juste un test pour le temps de cuisson. Notez surtout que les grains tombés a côté ne pètent pas (c'est le plus visible).

L'astuce pour gérer le degré de cuisson (qui ne dépend pas de l'âge de la particule ni de celui du capitaine mais bien du temps qu'a passé la particule dans la poele) est d'utiliser un paramètre qui ne sert a rien. J'ai utilisé dans ce cas la masse de la particule. A la naissance de la particule, je fixe la masse à 0. Lorsque ma particule se trouve dans un certain endroit (la poele) j'incrémente la masse d'une certaine valeur à chaque frame. Cette valeur va dépendre (avec un range mapper) de la distance entre le fond de la poele et le grain. Et quand la masse est plus grande qu'une certaine valeur, je fais en sorte que mon grain poppe. (changement de forme, de groupe, injection d'une vitesse, etc...).

L'aléatoire pour le degré de cuisson que doit atteindre la particule avant de popper est fixé par un noeud "noise" qui prend en input la position du grain. On ne peut pas utiliser le noeud "random" pour ça, puisque changeant à chaque execution du noeud, la particule popperait statistiquement plus tôt que prévu.

Voilà...

Aurety
31/08/2005, 11h25
Excellent Red !! Merci les gars pour ce fabuleux topic ! :efface:

kiteman
31/08/2005, 11h59
merci Red de partager ton expresso :poucehaut:

base80
31/08/2005, 12h08
Red a trouvé des sujets qui rendent TP très attirant pour moi.
C'est une des première fois que je vois un truc de tout les jours comme des aspirines ou des pop-corns.
J'adore ce coté "normal" de la 3d.
Et je pense que tu m'as enfin convaincu de m'y mettre.

merci

Red
31/08/2005, 22h28
:D

Plus loin dans mes essais, j'commence à rencontrer des problèmes pas rigolos... En gros, j'essaie maintenant de donner une dynamique physique réaliste à mes grains qui poppent. Et là, c'est un peu la galère. Soit j'ai pas tout compris, soit les collisions inter-particules sont assez foireuses... En effet, j'arrive pas à obtenir des collisions "dures". (comme des grains de mais dans un bocal, en gros). Tout ce que j'obtiens, c'est une espèce d'interpénétration obscène de mes ptits grains !

L'idée était de faire tomber mes grains dans un cylindre, afin que seuls ceux du fond poppent et fassent gicler ceux d'au-dessus. Ca marche très grosso-modo. J'ai l'impression que les collisions inter-particules (ainsi que contre les déflecteurs) fonctionnent bien seulement quand il y en a très peu en même temps. Là mes particules se traversent et traversent même les déflecteurs (cylindre transparent).
J'ai essayé d'augmenter les valeurs de bouce (rebond?) et de repulse (repulsion) du noeud prévu à cet effet sans amélioration notable. En augmentant la valeur de repulse, j'arrive a limiter un chouia les recouvrements (pour indication, sur cette vidéo je suis à 5000 !!), par contre les grains s'agitent dans tous les sens et ne trouvent pas de position d'équilibre.

C'est assez frustrant de voir ça vu les prétentions des TP ! Surtout que selon mes souvenirs, avec fizz ça marchait très bien...

J'vais continuer à fouiner un peu, si quelqu'un connait une solution ou une scène qui gère bien ce genre de collisions, j'suis preneur ! J'ai pensé aux boules de lotto de Tengaal (http://tengaal.art.chez.tiscali.fr/fc4d/XPresso/), mais là aussi, en ralentissant l'action et en laissant tomber les boules au fond de la sphère, on voit bien qu'elles s'interpénètrent.

La vidéo : http://ns2118.ovh.net/~deltazon/autres/red_popcorntest.mov.ff.avi.e.avi

Red
01/09/2005, 00h00
J'ai retrouvé FIZZ, un ptit exemple de l'effet recherché :
http://ns2118.ovh.net/~deltazon/autres/red_fizzshow.avi

Certes, ça se stabilise pas à 100%, mais ça reste carrément incomparable (surtout au vu du nombre de particules en jeu).

(on peut trouver FIZZ là, marche de la 6 à la 9 (!!), sauf erreur http://www.bonkers.de/download2/download.html)