PDA

Voir la version complète : Problème Problème de collision dans une animation simple



bengaudi
17/05/2012, 10h18
Bonjour,

Je suis confronté à un problème de collisions.
Je m'explique...

Le contexte.

J'ai créé une locomotive et une citerne, avec essieux et des roues.
Je vais prendre l'exemple de la loco, mais le problème est (presque) identique avec la citerne qui est entrainée via un connecteur.

-La loco est convertie en objet unique (toutes les parties ont été converties en poly puis tout ça regroupé dans un seul objet).
-La loco a des trous à la base dans l'objet unique, fait pour accueillir des support d'essieu, ce sont simplement des tubes rallongés.
-Dans ces trous, passent donc ces supports d' essieux. Ils ont été réalisés à base d'une spline cercle extrudée.
-Dans ces supports passent les roues avec leur essieu (objet unique par regroupement d'objets poly comme pour la loco).
-Des moteurs entrainent chaque groupe essieu+roues pour faire avancer la loco.

Tous les éléments (loco, supports essieux et roues) ont des propriétés "objet corps rigide" avec "maillage en déplacement" (marge globale du projet à 0,1 cm).

Normalement ça maintient tout ça bien ensemble et le tout doit rouler entrainé par les moteurs.

Le problème.

Lorsque je lance l'animation du roulement de la loco, j'ai un souci.

Concernant la loco :

Au bout de quelques images, Les roues sortent des porte essieux et se barrent, comme si elle ne considéraient pas les trous et les porte essieux comme quelque chose sensé les maintenir :confused1:.
Pourtant la loco avance quand même un moment, il doit donc bien y avoir une collision quelque part puisque les roues entraînent l'ensemble.

Les porte essieux sont restés sous la forme de spline extrudée. Je ne les ai pas converti en objet poly ni fusionnés avec la loco. Ils restent bien en place dans la loco. En fait ce sont les roues qui foutent le camps.

J'ai cependant quand même testé la conversion en poly des essieux et leur fusion en un seul objet avec la loco, mais ça ne change rien à mon problème.
(pour faire ça je mets tous les éléments du porte essieu en poly. J'obtiens alors plusieurs éléments. Puis je fait convertir en objet / supprimer pour grouper tout ces élément en un seul objet. Ensuite je renouvelle l'opération avec l'objet obtenu et l'objet loco. Puis j'épure mes poly inutiles - je ne sais pas si c'est la bonne méthode... Si "pas" ce serait sympa de m'enseigner la marche à suivre, j'ai en effet souvent quelques soucis avec l'utilisation, la conversion ou la fusion de mes splines extrudées :icon_sad: ).

J'ajoute que pour la citerne, j'ai le problème stricement inverse :confused1:. Là les roues semble emmener l'essieu qui visiblement se désolidarise de la citerne au bout d'un moment. Ici aussi l'essieu est une spline extrudée.

Je vous mets l'image du schéma vue de haut de la loco pour comprendre comment sont mis les éléments entre eux. La partie en surbrillance représente le porte essieu.

http://fc4d.deltazone.org/images/bengaudi_loco_pb_collision.jpg

Par avance merci pour votre aide, j'aimerais bien finaliser mon animation :001_unsure:

bengaudi
19/05/2012, 09h18
Up...
Personne n'a d'idée sur la question ? :(
Ou de suggestion ?

Gigs
23/05/2012, 18h41
Perso, jsuis noob moi aussi ... cependant quand tu fais tes manips pour avoir l'objet unique t'aurais pas l'enregistrement automatique des points clés activés ? Sur un malentendu on ne sais jamais ...

fredmartin
23/05/2012, 19h10
Ce n'est pas si simple, il ne suffit pas de mettre un moteur et de dire "roule ma poule" :icon_mrgreen:

Les tags que tu utilises ne servent qu'à gérer les collisions, pour construire un véhicule dynamique il faut utiliser
les objets connecteurs, charnières, etc...

Je te conseille ce tuto de Greyscale Gorilla qui explique bien ces principes :
http://greyscalegorilla.com/blog/2010/09/how-to-build-a-car-driven-with-a-motor-in-cinema-4d-r12/

Après il faut bien soigner les hiérarchies et les priorités, et de toute façon j'ai l'impression que ce système a ses limites
et perd un peu les pédales au delà d'un certain niveau de complexité. ( ce qui n'est pas le cas de ta loco )

Bon courage

fredmartin
24/05/2012, 18h10
J'ai fait un petit test, ça marche nickel, un moteur suffit pour entrainer les roues du milieu
et les roues Av et Ar suivent le mouvement. ( Il est effectivement plus simple d'éditer les objets et de les connecter. )

Après il faut jouer avec les différents réglages du moteurs et des tags collisions pour obtenir le mouvement désiré.


http://fredmartinlesite.free.fr/FC4D/LOCO.jpg (http://fredmartinlesite.free.fr/FC4D/LOCO.mov)