VectObjFrameAnimControl est un JME Control (anime des Mesh au runtime via
controlUpdate), donc il était mal placé dans com.ab3d2.tools. Déplacé vers
com.ab3d2.world où il rejoint les autres systèmes runtime du monde de jeu
(DoorSystem, LiftControl, AlienControlSystem, etc.).
Modifications
- Move
tools/VectObjFrameAnimControl.java→world/VectObjFrameAnimControl.java - Package interne :
com.ab3d2.tools→com.ab3d2.world - Import dans
weapon/WeaponViewAppState.javamis à jour - Imports ajoutés dans
tools/VectObjConverter.javaettools/VectObjViewer.java
(ces deux classes étaient dans le même package queVectObjFrameAnimControl,
donc n’avaient pas besoin d’import explicite ; maintenant si)
Direction des dépendances
tools/VectObjConverter et tools/VectObjViewer importent maintenant
world/VectObjFrameAnimControl. C’est conforme à la règle architecturale
adoptée : tools peut importer runtime, jamais l’inverse.
État des utilisateurs identifiés
tools.VectObjConverter: utiliseVectObjFrameAnimControl.storeFrames()
à la conversion (stocke les frames d’animation en UserData sur les Geometry)tools.VectObjViewer: utiliseattachIfAnimated()au chargement et
getControl(VectObjFrameAnimControl.class)pour piloter l’anim (play/pause,
fps, step frame)weapon.WeaponViewAppState: utiliseattachIfAnimated()au chargement de
l’arme du joueur
À vérifier au compile
gradlew compileJava
Si d’autres fichiers utilisent encore com.ab3d2.tools.VectObjFrameAnimControl,
le compilateur les listera. À ce stade aucun n’est connu.
Plan de migration (rappel)
- ✅ Nettoyage des artefacts
- ✅ Anomalie
VectObjFrameAnimControl(tools → world) - ⏳
core/level/full/*→tools/extract/level/ - Sous-classer
tools/enconvert/,inspect/,dump/,diagnose/ - Créer
runtime/, déplacerapp, combat, hud, menu, render, weapon, world - Dissoudre
core/ - Dissoudre
assets/ - Bouger
LevelManager→runtime/level/