À propos du projet
Flecs est un framework ECS (Entity Component System) haute performance conçu pour les développeurs C et C++ créant des jeux et des simulations. Il fournit une solution rapide, légère et portable avec une API C99 sans dépendance et une API C++17 moderne et type-safe qui évite les conteneurs STL.
Les fonctionnalités clés incluent :
- **Relations entre entités** : Prise en charge complète des relations entre entités, une première pour un ECS open source.
- **Hiérarchies et prefabs** : Prise en charge native des graphes de scène et des modèles d'entités réutilisables.
- **Performance** : Stockage archetype/SoA optimisé pour le cache qui peut traiter des millions d'entités par frame, avec un planificateur sans verrou pour l'exécution multi-cœurs.
- **Portabilité** : Compilation en moins de 5 secondes et exécution dans le navigateur via emscripten sans modifications.
- **Réflexion** : Cadre de réflexion intégré avec sérialisation JSON et prise en charge des composants à l'exécution.
- **Langage de requête** : Système de requête puissant avec jointures et héritage.
- **Outillage** : Module de statistiques pour le profilage et une interface web (Flecs Explorer) pour la surveillance et le contrôle.
Flecs est utilisé dans plusieurs jeux commerciaux, notamment Tempest Rising et Territory Control 2, et dispose d'un hub communautaire (Flecs Hub) avec des modules pour les transformations, la physique, le rendu, et plus encore. Des liaisons de langage sont disponibles pour C#, Rust, Zig, Lua et Clojure, maintenues par des membres de la communauté.
Le projet est sous licence MIT, activement maintenu avec plus de 13 000 tests dans l'intégration continue, et soutenu par une communauté Discord.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.