Physique
La physique fait tomber, s'entrechoquer et rebondir les objets. Voici ce qui est solide, d'où viennent les formes de collision, et comment déplacer un objet physique.
L'essentiel fonctionne tout seul. Le sol est solide sans aucun réglage, et les objets que vous rendez dynamiques tombent.
Ce qui compte comme solide
Un objet est solide si vous lui avez donné un corps rigide. Il est aussi solide s'il a une forme et ne fait pas déjà partie d'un corps situé plus haut dans l'arbre. Le sol vous arrête donc parce que c'est un sol. Vous n'avez pas besoin de le marquer.
Pour savoir si un objet est solide :
| L'objet a… | Résultat |
|---|---|
| un corps rigide | il forme son propre corps |
| un corps rigide réglé sur None | rien n'est solide ici, y compris ses enfants |
| un collider, même invisible | solide |
| une géométrie, et il est visible | solide |
| une géométrie, mais il est masqué | pas solide |
| rien de tout cela (un groupe, une lumière) | pas solide |
Il en découle deux règles utiles :
- Un collider reste solide quand il est invisible. C'est ainsi qu'on construit un mur invisible : ajoutez un collider et aucune géométrie. Les visiteurs s'y heurtent sans rien voir.
- Une géométrie n'est solide que tant qu'elle est visible. Masquez une forme décorative, et elle cesse aussi de bloquer quoi que ce soit.
Une fois qu'une forme a rejoint un corps plus grand, elle y reste, même masquée. Pour l'en retirer, supprimez l'objet ou réglez son corps rigide sur None.
Formes de collision
Si un objet a un collider, la physique l'utilise. Sinon, le moteur crée une forme à partir de la géométrie :
| Géométrie | Forme de collision |
|---|---|
| boîte, sphère, cylindre, capsule, cône | la forme correspondante |
| les trois polyèdres | une forme extérieure exacte |
| plan, cercle, anneau, triangle | une plaque fine, solide des deux côtés |
| tore | un anneau approximatif |
| extrusion, révolution | une forme qui suit exactement le maillage |
| un modèle 3D importé | aucune — voir ci-dessous |
C'est la surprise la plus fréquente avec la physique. Déposez un modèle GLB dans une scène, rendez-le dynamique, et il traverse le monde en tombant. Ajoutez un collider, et il se comporte normalement. Une boîte ou une capsule est presque toujours le bon choix.
Une forme de maillage (issue d'une extrusion, d'une révolution ou d'une géométrie importée) convient à un sol ou à un mur statique. Sur un objet en mouvement, elle traverse les autres objets et tremble. Utilisez plutôt une boîte, une sphère, une capsule ou un cylindre. Les formes simples sont aussi bien plus rapides.
Mettre un objet à l'échelle met aussi à l'échelle sa forme de collision.
Déplacer un objet physique
C'est la physique qui décide où se trouve un corps dynamique. Elle écrase votre changement à l'étape suivante : on a l'impression qu'il a été ignoré.
- Pour pousser le corps, utilisez une impulsion ou une force.
- Pour le placer quelque part, utilisez une téléportation : pour une réapparition, un point de passage ou un retour au départ.
Dans un script, utilisez ctx.physics.teleport(...) et ctx.physics.applyImpulse(...). Voir la
référence ctx. Pour un personnage
qui marche, utilisez les contrôles de jeu.
Ils s'occupent de tout cela pour vous.
Lire la vitesse d'un objet ne coûte presque rien, mais la valeur a environ une image de retard. Elle suffit pour savoir « est-ce qu'il bouge ? », pas pour des calculs précis.
Réglages du monde
La gravité, le frottement par défaut, le rebond et la qualité du solveur se règlent pour le projet. Vous pouvez les remplacer pour chaque espace. Les changements s'appliquent tout de suite, sans redémarrage.
Chaque corps peut avoir son propre frottement et son propre rebond. Si vous n'y touchez pas, le corps utilise les réglages du monde.
Collisions
Quand deux objets se touchent, chacun reçoit un événement on-collide et apprend ce qu'il a
heurté. Dans l'événement, vous pouvez le limiter à certains objets ou le laisser ouvert à
n'importe quel objet.
Un appui sur un objet remonte jusqu'à ses parents, mais pas une collision. Elle ne se déclenche que sur les objets qui se sont réellement touchés. Placez l'événement sur l'objet qui entre en collision.
Où la physique fonctionne
- Dans le navigateur : oui.
- Dans l'application AR Clip (mobile) : oui.
- Dans l'éditeur : non. Rien ne tombe pendant que vous travaillez.
Quand votre projet tourne, la physique ne démarre que si une scène en a besoin. C'est le cas quand elle contient un objet dynamique ou kinematic, des contrôles de jeu, ou un corps accompagné d'un script. Une scène qui ne contient que des objets statiques n'a pas besoin de la physique : elle s'ouvre donc plus vite.
Si un script crée une balle en cours de session, la physique démarre à ce moment-là.
Suivant : Lumières — les types de lumière et ce qui change en douceur pendant les transitions.