CMake 3.25+, C++20, avertissements stricts, règles de déterminisme (pas de fast-math ni de contraction FMA), sanitizers et clang-tidy optionnels, doctest. Presets Windows/Linux/macOS, scripts build.ps1, build.sh et check.ps1 (pas de CI serveur). README de core, 3d et schema.
SEQUA Core
SEQUA Engine en bref
SEQUA : Simulate Environments, Quantify Uncertainty, Adapt. SEQUA Engine est un environnement de création et d'exécution de mondes virtuels, d'abord pour le jeu vidéo, où l'auteur dirige un monde par l'intention, le ressenti et les règles plutôt que par des paramètres. Il est composé de quatre couches : Studio (outil de création web), Core (source de vérité), SEQUA 3D (seule porte vers un moteur 3D) et des moteurs 3D interchangeables (Godot, puis Unreal, puis un moteur maison).
Référence : docs/SEQUA_Engine_resume_complet_v2.md
Rôle de Core dans l'engine
Core est la source de vérité du projet. Il possède :
- le format de projet et la scène de référence (§5.1) ;
- la représentation du monde en quatre niveaux, de L0 structurel à L3 génératif (§5.2) ;
- la simulation déterministe à pas fixe, l'enregistrement des entrées et le rejeu bit à bit (§5.3) ;
- la couche d'intention ;
- l'orchestrateur de rendu adaptatif (§5.4) et la mesure de la confiance (§5.5).
Core ne connaît aucun moteur 3D : il ne dépend que du contrat de données (schema/). Les modèles neuronaux et génératifs sont exclus de la boucle de simulation.
État
Phase 0. Seule la bibliothèque sequa::core minimale (version) et son test existent. Prochaine étape : simulation déterministe et test de rejeu.
Construire et tester
Depuis la racine du dépôt :
.\scripts\build.ps1 # Windows, preset windows-msvc-debug
.\scripts\build.ps1 -Preset windows-msvc-asan # AddressSanitizer
.\scripts\check.ps1 # tous les presets Windows + Studio
./scripts/build.sh # Linux / macOS
Règles de déterminisme appliquées à la compilation (§10.1) : pas de fast-math, pas de contraction multiplication-addition (/fp:precise sous MSVC, -ffp-contract=off ailleurs).
Licences
- SEQUA Core : MPL 2.0.
- Dépendances :
| Dépendance | Usage | Licence |
|---|---|---|
| doctest 2.4.12 | Tests uniquement | MIT |
Politique (§10.2) : le cœur n'utilise que des dépendances permissives (MIT, BSD, Apache 2.0, zlib).