Présentation de Rapier
- Rapier est un ensemble de moteurs physiques 2D et 3D écrits dans le langage de programmation Rust.
- Il cible des applications nécessitant une physique en temps réel, comme les jeux vidéo, l’animation et la robotique.
- Il est rapide, stable et prend en charge, de façon optionnelle, un comportement déterministe multiplateforme.
- Il offre des fonctionnalités comme les collisions et forces de corps rigides, les contraintes d’articulation, les événements de contact et capteurs, les fonctions de snapshot, le comportement déterministe multiplateforme optionnel et des bindings JavaScript.
- Rapier est disponible gratuitement sous licence Apache 2.0 et est développé par Dimforge, une entreprise open source.
- Il est possible de le soutenir en le finançant via GitHub Sponsors.
L’avis de GN⁺
- Rapier peut constituer une solution adaptée à divers domaines nécessitant des simulations physiques en temps réel, en tirant parti de la sûreté et des performances de Rust. Son usage est particulièrement prometteur pour le développement de jeux ou la simulation robotique.
- Comme il est proposé en open source, il peut continuer à s’améliorer grâce au soutien de la communauté, et cela facilite aussi l’ajout de fonctionnalités ou les optimisations directement par les utilisateurs.
- Un moteur physique basé sur Rust offre des avantages en matière de sûreté mémoire et de gestion de la concurrence, mais la courbe d’apprentissage du langage Rust reste assez élevée, ce que les développeurs ou équipes envisageant son adoption doivent prendre en compte.
- Parmi les autres moteurs physiques offrant des fonctionnalités similaires à Rapier, on peut citer Bullet, PhysX et Havok. Il est important de comparer leurs caractéristiques et performances respectives afin de choisir le moteur adapté aux besoins du projet.
- Choisir un moteur physique basé sur Rust peut apporter des gains en performances et en stabilité, mais le support communautaire et la documentation peuvent rester relativement plus limités que pour les moteurs physiques en C++ largement adoptés.
1 commentaires
Commentaires Hacker News
Un utilisateur a développé un jeu multijoueur en ligne avec le moteur physique Rapier. Il n’y a pas encore de mode solo, mais l’API implémentée en Rust est jugée très solide.
Un utilisateur a étudié en profondeur l’algèbre géométrique (Geometric Algebra) pendant plusieurs mois et pense qu’elle peut offrir une manière intuitive et concise de travailler dans diverses géométries.
Un utilisateur a rédigé un guide sur le plugin Bevy et a aussi écrit au sujet de Bevy XPBD.
Un utilisateur espère que Dimforge, avec nalgebra et Rust, pourra remplacer Eigen et C++ dans le domaine de la robotique.
Un utilisateur ayant l’expérience de la création d’un moteur physique de corps rigides il y a plusieurs décennies se souvient que l’utilisation d’un DAG était la meilleure solution pour empêcher les objets de s’enfoncer dans le sol.
Un utilisateur y voit la confirmation du stéréotype selon lequel beaucoup de moteurs de jeu ont été créés en Rust, mais que seuls quelques véritables jeux ont été développés.
Un utilisateur a créé une démo web avec Rapier et apprécie le fait qu’elle puisse fonctionner côté serveur comme côté client, tout en permettant d’implémenter la prédiction côté client et la correction.
Un utilisateur estime que l’interopérabilité JavaScript de Rapier est excellente.
Un utilisateur a créé un petit jeu web avec Rapier, où le serveur calcule la physique et l’état de victoire ou de défaite afin d’empêcher la triche.