Que fait Open Physics ?
Quand l'utiliser
- Un agent a besoin de créer, faire avancer, interroger ou rejouer un monde physique déterministe.
- Un testeur de jeu a besoin de contacts, de raycasts ou de diagnostics de solveur plutôt que de suppositions visuelles.
Garde-fou de disponibilité — stade actuel
Ce dépôt est un squelette pré-alpha. Aucun outil physics_* n'est encore enregistré.
Ne prétendez pas qu'un monde a été simulé, qu'un rejeu a correspondu ou qu'une construction est
physiquement correcte. Si les outils prévus sont indisponibles, signalez que le cœur natif
n'est pas implémenté et arrêtez-vous au lieu de substituer un autre moteur ou une sortie fabriquée.
Workflow M0 prévu
Utilisez cette boucle uniquement après que les outils correspondants existent réellement :
physics_world_create
→ physics_body_add (pour chaque corps)
→ physics_step (nombre de pas fixe)
→ physics_contacts_report / physics_raycast
→ physics_replay (même journal d'entrée ; exiger des résultats identiques)
Règles pour l'implémentation future :
- Gardez la description initiale du monde explicite et sérialisable.
- Ne déduisez jamais le succès de la simulation de l'absence d'erreur ; inspectez l'état résultant.
- Traitez le déterminisme comme un contrat testable : les mêmes entrées et le même journal de pas doivent produire des sorties identiques.
- Rapportez la contrainte maximale violée et les impulsions brisées avec les résultats de la simulation.
- Ne présentez pas le moteur comme Havok ou comme contenant du code Havok. Il s'agit d'une implémentation originale en environnement vierge.