| Nous allons créer dans ce tutorial des amortisseurs
pour une voiture. L'objectif est de contrôler une roue de façon
qu'elle reste fermement collée au sol aussi longtemps que le permet
la suspension. L'idée de base est de détecter à quel endroit, entre le maximum et le minimum de l'intervalle de la suspension, la roue entre en contact avec le sol. Pour ce calcul le nœud Collision de rayon est particulièrement pratique. Un neutre est utilisé en tant que suspension principale, avec deux neutres enfants, représentant les limites supérieures et inférieures de l'intervalle. Ces deux neutres sont les points de référence utilisé par le nœud collision de rayon. La collision de rayon va projeter un rayon (tracer une ligne) entre ces deux points et la première intersection avec un polygone donné est enregistrée. Le nœud va nous transmettre l'événement (valeur booléenne) et aussi la position globale du choc. |
![]() |
| Puisque nous voulons que la suspension fonctionne en relation avec le véhicule, nous devons faire les calculs en coordonnées locales, sinon la roue se déplacerait le long de l'axe global Y et non pas selon l'axe Y de la voiture. Pour simplifier cette opération j'ai inclus deux nœuds COFFEE qui permettent de convertir facilement une position locale vers une globale et vice versa. (info) | ![]() |
| Pour simplifier les contrôles nous ajoutons des données
utilisateur sur le neutre Suspension pour définir les limites de
l'intervalle et le rayon de la roue. L'objet collision et la roue sont assignés
par des champs Lien dans les caractéristiques de la propriété.
(info) En plus du contrôle de la suspension il y a une petite expression sur chaque neutre définissant les limites supérieure et inférieure qui va les placer correctement en fonction des réglages du neutre Suspension. |
|
| Pour rendre l'expression facilement transférable à d'autres objets toutes les références sont soit relatives (neutres des limites de suspension/Points de rayon) soit effectuées par des champs Lien. | ![]() |
Pour que la suspension fonctionne correctement nous devons
faire la différence entre deux états, selon qu'une collision
a été détectée ou non. |