PDA

Voir la version complète : Résolu effecteur+simulation (dynamique) - 1 problème (bug?) + 1 question.



AleXXi
23/01/2014, 18h29
Bonjour tout le monde,

Voici un étrange problème auquel j'ai été confronté pas mal de fois...

J'ai réduit mon problème en une scène toute simple:

http://gyazo.com/871e75f81edf6a681fbf36f466a38b11.png

-Des objets avec le tag "corps rigides" prêts a être déclenché au pic de vélocité...

-Un effecteur simple avec une atténuation de forme sphérique qui traverse ces objets et qui effectue un simple déplacement horizontal.

http://gyazo.com/133d0490431df696ec6c405877c51029.gif

Jusque là ça fonctionne :icon_mrgreen:, mes objets se déplacent vers le haut, "dynamique" prend le relais et mes objets tombent, pile ce que je veux sauf que:

Si je conforme ma simulation ça fonctionne toujours dans la fenetre openGL ainsi lorsque je fais un rendu dans la fenêtre de préview mais pas lors du rendu (lors du rendu, seul l'effecteur agit et dynamique ne prend pas le relais).

Si je ne conforme pas ma simulation, pas de problème, le rendu fonctionne mais ma scène d'origine à réellement besoin d'être conformé puis je trouve ça pas logique.

http://gyazo.com/1262286dfa7f82f6fa2671e892cd4a9a.png
http://gyazo.com/cf5975a527afe8df417955958f05c749.png

2ème problème :

Disons que cela fonctionne (donc sans conformer la simul :crying:), j'essaye maintenant de placer un 2eme effecteur simple avec une atténuation linéaire et placé de tel sorte que mes objets soient réduits en échelle (jusqu'à disparaitre) lorsqu'ils tombent.

http://gyazo.com/43ff4171d4a21517700ab60cdb27f73b.png

Le problème c'est que comme dynamique a pris le relais à la place des effecteurs, ces derniers n'agissent plus... (uniquement sur les objets affectés par dynamique, si je déplace cet effecteur sur les autres objets qui sont restés statiques, ils sont bien affectés.)


Comment faire pour que cet effecteur agisse sur les objets dont "dynamique" a prit le contrôle?

Merci beaucoup à celles et ceux qui vont passer par ici :thumbup1:

Pour info, j'ai essayé de baker l'ensemble de ma simulation avec un outil de nitro4D présent dans nitroblast et celui-ci ne bake que les déplacements provoqués par l'effecteur sans prendre en compte la simulation (soit-dit en passant exactement comme quand je fais un rendu en ayant conformé la simulation) :icon_pleure:.

Dommage car cela aurait résolu mes deux soucis...

voici la scène :10471

A+
Alexis.

valkaari
23/01/2014, 20h25
- remplace ton objet neutre qui contient tes objets par un objet fracture.
- mets l'effecteur déplacement dans l'onglet effecteur et désactive son option de déformation. (il passera donc par le fracture pour faire bouger les objets)
- mets le tag sur ton objet fracture, désactive l'option pour appliquer le tag aux enfants et utilise l'option des éléments individuels.
- Conforme la simulation dynamique.
- laisse l'effecteur échelle en mode de déformation d'objet qu'il puisse changer la taille des cubes qui tombent.

On dirait que c'est bon.

Les dynamiques ne bougent pas vraiment les objets, les effecteurs voient toujours les cubes en haut, ils n'ont pas bougé. C'est pour ça qu'il faut conformer la simulation.

AleXXi
23/01/2014, 20h37
Ouahhhh! Merci beaucoup Valkaari et quelle belle découverte que cet objet fracture!!!

Bon, il ne me reste plus qu'à terminer ma scène originale avec plusieurs milliers d'objets :icon_mrgreen:.

Je suis en train de détruire un mur en plusieurs milliers de morceaux qui partent au loin dans l'espace en état d’apesanteur...
Pour faire ça, j'ai retourné ma scène à 90° pour que mes pièces tombent vers la bas.

L'histoire d’échelle, c'est pour que les morceaux disparaissent plus rapidement...

Merci encore!!!!

A+