Corps souple
Contrairement aux corps rigides, les corps souples peuvent être déformés. Un Corps Rigide se compose d'un corps polygonal dur qui ne réagit aux collisions que comme un ensemble; un Corps souple se compose de nombreux petits points masse (points objets) qui sont connectés entre eux via de nombreux ressorts. Si une force affecte un Corps Souple, son effet se propagera aux autres points aux alentours à partir d'un point d'impact local, se traduisant par une réaction flexible (organique) vers la force. Les Corps souples sont utilisés essentiellement pour les objets déformables tels que les balles, les tissus (n'oubliez pas d'utiliser la Tissu pour tissu/vêtements de MOCCA), métal léger, etc.
Les Splines peuvent aussi être utilisées comme des corps souples. Cependant, elles sont mieux adaptées pour des objets simples. Elles ne fonctionnent pas bien avec les Connecteurs et ne peuvent être utilisées que de façon limitée, comme une corde par exemple. Toutefois, il est possible d'utiliser une Spline conjointement avec une collision pour la faire tomber et rester sur un autre objet.
Les Splines fonctionnent très bien dans les circonstances suivantes:
- Si vous leur attribuez une masse qui se trouve dans l'intervalle de masse avec lequel la Spline Corps Souple s'effondre. Sinon, la masse de la Spline est extrêmement petite puisqu'elles n'ont aucun volume.
- Si la Spline possède une subdivision avec un nombre suffisant de points intermédiaires (Interpolation Uniforme).
Lorsque vous utilisez la primitive Sphère, assurez-vous que l'option Icosaèdre est sélectionnée. L'option Rendu parfait doit aussi être désactivée.
Nous définissons ici les options suivantes:
- Désactivé : l'objet est un corps rigide, pas un corps souple.
- Constitué de polygones/lignes : l'objet est un corps souple normal.
- Constitué de clones : Groupes de clones (par exemple, comme ils sont générés par un objet cloneur) peuvent être reliés avec des ressorts exactement comme un corps souple.
Notez que Éléments individuels de l'objet cloneur doit être réglé sur Tous. Vous pouvez fixer des clones individuels dans un conglomérat de clones en utilisant une sélection MoGraph (voir Dynamique).
L'état au repos est normalement l'état du ressort à sa longueur normale sans aucune modification.
Des états au repos supplémentaires peuvent être ajoutés à ce champ (copies des corps souples dans le gestionnaire d'objets ; nombre égal de points nécessaires) ou même animés. Cela signifie qu'un corps souple peut être conçu pour assumer successivement différents états.
L'objet (sa position, son orientation, sa visibilité) dans ce champ peut, par exemple, être déformé à l'aide d'un Déformateur et transférera immédiatement cet état au repos au corps souple, qui convertira en ce nouvel état avec un mouvement d'oscillation.
Un "morphing dynamique" si vous voulez.
La vitesse à laquelle le corps souple assume cette nouvelle forme/nouvel état dépend de sa rigidité. Plus les ressorts sont souples, plus cela prendra de temps. Si l'on utilise des ressorts rigides, il "explosera" plus ou moins dans son nouvel état. Ce paramètre peut être utilisé pour créer de nombreux effets spectaculaires!
Normalement, la masse entière d'un corps souple sera propagée aux points de cet objet de façon égale. Si ce n'est pas ce que vous souhaitez, vous pouvez utiliser la propriété Sélection de points ou carte d'Influence pour influencer l'objet.
Notez que les points de l'objet qui ont une masse de 0 seront fixés à leur position actuelle (cela peut être fait avec la Sélection MoGraph pour les corps souples qui sont constitués de clones).
Différentes dispersions de masse se traduisent par un comportement d'oscillation différent et par des centres de masse différents.
S’il est activé, un algoritme plus stable mais aussi avec une mémoire plus intensive peut être utilisé. Vous pouvez désactiver cette option et voir si votre simulation reste stable. Vous pouvez aussi augmenter la valeur Etapes par image si êtes confronté à un comportement instable.
En général, ce paramètre amortit l'oscillation des corps souples, ce qui signifie que les corps souples atteindront leur état de repos plus rapidement.
Ressorts
Disposition typique de plusieurs types de ressorts. Seuls les Ressorts entiers de points visibles sont représentés.
Pour transformer un objet normal en un corps souple, tous les points de l'objet seront considérés comme de petites masses qui sont connectées via 3 types de ressorts (on y fait aussi référence par la suite comme "type de ressort standard). Chaque type de ressort peut être ajusté séparément et ajusté au niveau des points via la carte Propriété de sélection de points ou la carte d'Influence.
Normalement, tous les ressorts sont à leur état au repos à l'image 0, c'est-à-dire tous les ressorts exercent une force de 0 dans l'état du corps souple (bien sûr la Longueur au repos doit être réglée sur 100%). Dès que la simulation est commencée, la gravité affectera les points de masse et les ressorts commenceront à osciller.
Nous allons vous démontrer cela en utilisant le corps souple suivant, qui est attaché aux connecteurs à une extrémité (gauche) et tombe en dessous de la barre qui se trouve en dessous. Quand les trois types de ressorts sont appliqués, voici ce qu'il devrait se produire (si l'objet a une sudivision plus grande, la force du ressort doit être augmentée en fonction pour arriver au même résultat) :
Un ressort sera attaché à chaque point de l'objet qui le connecte aux points voisins le long de l'arête du polygone. La valeur définit la rigidité du ressort. Plus le ressort est dur, plus la rigidité est importante. Vous pouvez mieux voir comment fonctionne ce ressort si Structurel est réglé sur 0:
La fonction première du ressort Structurel est de soutenir la forme extérieure du corps souple. À droite de l'image ci-dessus, l'effet de soutien du ressort a été réglé sur 0, les polygones s'effondrent sur le sol.
L'Amortissement définit le degré d'oscillation du ressort structurel. Plus la valeur est élevée, plus l'oscillation se terminera vite.
Le réglage Carte (Carte de Propriété de sélection de points ou carte d'Influence) permet d'ajuster cela au niveau des points. Voici ce qui s'applique pour les sélections de points :
- non sélectionné = 0%
- sélectionné = 100%
...et pour les cartes d'influence selon le poids individuel.
Les Ressorts d’un corps souple peuvent être déformés plastiquement de la même façon que les Ressorts individuels (voir aussi Limite étirement élastique) dès qu’un étirement ou une compression spécifique a été atteint. Une valeur de 0 désactivera la déformation plastique.
Notez que selon le projet, la Limite élastique pour les ressorts devra également être ajustée pour assurer une déformation plastique du corps souple.
La fonction Carte est décrite ici.
Ce type de ressort connecte en diagonal les points opposés des polygones à quatre côtés et assure que le polygone ne se plie pas. La valeur définit la rigidité du ressort. Plus la valeur est élevée, plus le ressort est dur/rigide.
Vous pouvez voir comment fonctionne le ressort lorsque la valeur Cisaillement est réglée sur 0 :
Notez comment les polygones de droite ont été déformés pour former des losanges. Les valeurs Ressorts (valeur = 0) n'ont pas pu empêcher que les rangées de points d'être altérées.
L'Amortissement définit le degré d'oscillation du ressort Structurel. Plus la valeur est élevée, plus l'oscillation se terminera vite. La fonction Carte est décrite ici.
Contrairement aux autres ressorts, les ressorts Flexion ne sont pas des ressorts linéaires. Ce sont des ressorts torsion qui se trouvent sur les points de chaque objet et qui essayent de garder une continuité angulaire - en fonction de la force Ressort - le long des arêtes voisines. Cela permet d'ajuster la flexion indépendamment du comportement étirement de l'objet (c'était différent dans les versions Dynamiques antérieures à R11.5 où des Ressorts linéaires étaient utilisés et étaient affectés par le comportement étirement de l'objet). La valeur définit la rigidité du Ressort. Plus la valeur est élevée, plus le ressort est dur/rigide.
Vous pouvez voir comment fonctionne le ressort lorsque la valeur Flexion est réglée sur 0 :
Comme vous pouvez le voir, les polygones peuvent être pliés ensemble lorsque les ressorts Flexion ne maintiennent plus la continuité angulaire le long des polygones voisins. Avec l'option Carte, vous pouvez définir des régions spécifiques où les corps souples doivent être autorisés à se plier.
L'Amortissement définit le degré d'oscillation du ressort Structurel. Plus la valeur est élevée, plus l'oscillation se terminera vite. Le réglage Carte (cartes de propriété de sélection de point ou carte d'influence) permet d'ajuster cela au niveau des points. La fonction Carte est décrite ici).
Les Ressorts d’un Corps souple peuvent être déformés plastiquement de la même façon que les Ressorts individuels (voir aussi Limite étirement élastique) dès qu’un étirement ou une compression spécifique a été atteint. Une valeur de 0 désactivera la déformation plastique.
La fonction Carte est décrite ici.
Une carte d'influence en Etat au repos (plus le rouge est intense, moins le ressort pèse et moins de temps dure le repos)
Dans son état au repos, la forme du corps souple ne change pas. Tous les ressorts qui sont liés entre les points de l'objet sont à leur état au repos, ce qui signifie qu'ils n'exercent aucun force. Dès que la simulation a commencé, la gravité affectera les points de l'objet, suivie par les collisions. Cela déplace les points de l'objet voisin et les forces du ressorts commenceront à prendre effet (plus le ressort est déplacé loin par rapport à son état de repos, plus de force il doit exercer pour revenir à son état au repos). La valeur Longueur au repos vous permet de définir une déviance de la longueur allant jusqu'à 100%. Les valeurs inférieures à 100% feront se contracter les ressorts et vice-versa. La fonction Carte est décrite ici).
Le clone construit tombe en ruine sous son propre poids.
Ces réglages seront disponibles si le Corps souple est réglé sur Consititué de clones. La longueur de déchirement définit à quel pourcentage de l'état au repos le ressort se brisera.
Le réglage Carte ne s'applique qu'Mode Objet de l'objet Cloneur . Il affecte l'objet sur lesquels les points des clones sont placés.
Si Corps souple est réglé sur Constitué de clones, vous pouvez définir comment les clones doivent se comporter concernant la rotation. Des valeurs faibles (qui représentent des valeurs de ressort plus petites) autorisent les rotations et les valeurs plus grandes donnent des ressorts plus durs.
Pour la Carte cette description s’applique.
Préservation de la forme
La Préservation de la forme maintient la quasi-totalité de la forme des Corps souples dans son ensemble en fonction de la valeur Rigidité (à l'exception de quelques déformations brèves et mineures par des collisions locales).
Cette fonction conserve intérieurement une image de l'objet non-modifié et, selon la rigidité définie, essaye de maintenir (conserver) cette forme. La variation classique du corps souple avec les 3 types de ressort mentionnés ci-dessus tend à perdre sa forme d'ensemble initiale car le ressort de chaque point d'objet ne "voit" que son voisin direct. La valeur rigidité peut être augmentée considérablement mais cela se traduirait par une simulation devenant instable, ce qui devrait être compensé en retour par une augmentation de la valeur Etapes par image, se traduisant par des besoins de mémoire plus grandes.
D'un autre côté, la Préservation de la forme, est rapide et stable. Donc quand vous avez besoin de maintenir la forme de départ (ou des régions spécifiques via une carte), appliquez ces réglages. Bien souvent, ils fonctionnent mieux lorsqu'ils sont combinés avec 3 types de ressort (si ils ne sont pas réglés initialement sur 0 mais que leur valeur peut être réduite).
Cette fonction est mieux adaptée pour conserver la forme de l'objet entier avec peu voir aucune rigidité tel qu'un vêtement.
Flabio belly-flops sur le sol. A gauche, une rigidité moins importante qu'à droite. Vous avez ici l'état au repos (très court) avant qu'il ne se relève.
La Rigidité définit le degré auquel les points du Corps souple sont autorisés à diverger de la forme de départ (enregistrée intérieurement). Il s'agit d'une force Ressort, c'est-à-dire, moins la rigidité est grande, plus les ressorts sont souples et moins il y aura de déformations à cause des collisions.
Ce réglage peut aussi être utilisé pour créer une animation ressort (commençant à 0), par exemple pour catapulter un corps souple qui est tombé sur un objet donné. Le corps souple reprendra rapidement sa forme initiale.
La fonction Carte est décrite ici).
Cela vous permet de donner de la consistance à des zones spécifiques d'un corps souple, comme dans l'exemple ci-dessous. Le pneu devrait se déformer lorsqu'il perd de la pression. Les points sur le pneu ont été alourdis, avec le poids maximum au niveau de la jante (jaune). C'est là que la préservation de la forme est à son niveau le plus élevé. Le pneu ne se déformera donc pas près de la roue et ne rentrera pas dans la roue (qui n'est pas un corps souple).
Valeurs par défaut pour les 3 types de ressort; à droite avec la Carte pour la rigidité ajoutée.
Si les 3 types de ressort n'ont qu'un effet minimal et que la majorité du calcul est prise par la conservation de la forme, un effet "pulsatoire" (variation de volume) peut résulter. Augmenter la valeur Volume peut éliminer cet effet.
Cette valeur définit le degré d'amortissement (rigidité). Plus la valeur est grande, plus vite l'oscillation se terminera. Le réglage Carte ( carte de Propriété de Sélection de points ou carte d'influence) permet d'ajuster cela au niveau des points. La fonction Carte est décrite here).
Pression
Le cube de gauche est gonflé, se traduisant par la forme du centre. A droite, une propriété de sélection de points a été ajoutée au paramètre Rigidité.
Cela ne fonctionne que sur les objets fermés. L'objet est gonflé grâce à l'ajout d'une force qui pousse les Normales de la surface vers l'extérieur. Cette méthode est bonne pour les objets gonflés qui sont tombés par exemple.
Tout comme les ressorts individuels, ceux qui sont utilisés pour maintenir les formes peuvent être déformés plastiquement quand ils atteignent une valeur définie grâce à la valeur Limite élastique, dont l’effet est lié à la Longueur au repos d’origine du ressort. Ceci peut être défini en réglant la valeur Limite élastique, dont l’effet dépend de la valeur Longueur eu repos originale du Ressort.
Des modifications définitives peuvent être effectuées sur les Corps souples avec ces réglages.
La fonction Carte est décrite ici.
Ce réglage Pression fonctionne comme la pression dans le monde réel - une force qui exerce de la pression sur toute la surface d'un objet et gonfle l'objet. Des valeurs positives augmenteront le volume d'un objet et des valeurs négatives le diminueront (créant un vide).
Le réglage suivant, Conservation du volume, peut aussi être utilisé pour exercer la pression - mais il dépend du volume de l'objet.
Préservation du volume[0.00..+∞]
Quand un corps souple est compressé, son volume reste constant si des valeurs Conservation de Volume sont appliquées.
La caractéristique Préservation du Conservation applique une force pour essayer de maintenir le volume d'un objet. Si le volume actuel est supérieur au volume de l'état au repos, la force est dirigée vers l'intérieur et vice-versa. L'intensité de cette force est définie par la valeur Préservation du volume.
Plus la valeur est élevée, moins un corps peut être compressé, c'est-à-dire que si le corps souple est compressé, il essayera de maintenir son volume de départ en s'étirant en conséquence dans différentes directions.
Sans la Préservation du Volume, des étirements ou expansions incontrôlées peuvent se produire. A droite, la sélection de points réglée Rigidité sur est représentée.
L'oscillation amortissement se produit grâce à l'application d'un effet pression. Plus la valeur est grande, plus vite l'oscillation se terminera.