Notes d'authoring de modeles pour FreeMinecraftModels
Cette page documente les details d'authoring actuellement visibles dans le code de FreeMinecraftModels. Elle reste volontairement conservative : elle se concentre sur le contrat d'import et d'execution, pas sur chaque preference de workflow Blockbench.
Formats source
FreeMinecraftModels accepte actuellement :
- les fichiers
.bbmodelpour les imports source modifiables - les fichiers
.fmmodelpour des donnees de modele epurees et pretes pour l'execution
Le flux d'import normal est :
- placer le modele dans
plugins/FreeMinecraftModels/imports - executer
/fmm reload - laisser FreeMinecraftModels importer le modele dans l'ensemble actif et reconstruire le resource pack genere
Role des dossiers
plugins/FreeMinecraftModels/imports
plugins/FreeMinecraftModels/models
plugins/FreeMinecraftModels/models_disabled
importsest le dossier d'entree pour les imports manuels de modeles et les telechargements de packages officiels avant traitementmodelscontient le contenu de modele installe et actifmodels_disabledcontient le contenu de packages telecharges ou installes qui est actuellement desactive
IDs de modele
- Les IDs de modele utilises en execution viennent du nom du fichier, sans l'extension
.bbmodelou.fmmodel - Utilise des noms de fichier stables et uniques, car ce sont ces IDs que les commandes et appels d'API resolvent
- Les references d'animation Blockbench sont basees sur les noms, donc une denomination dupliquee ou floue dans le modele risque davantage de poser probleme qu'une denomination claire et explicite
Compatibilite Blockbench
- FreeMinecraftModels detecte la version du fichier Blockbench pendant l'import
- L'importeur actuel contient encore des branches de compatibilite pour les versions anterieures a Blockbench v5
- Si les logs d'import indiquent que le format du modele n'est pas compatible avec FreeMinecraftModels, traite cela d'abord comme un probleme de format de modele, et non comme un probleme de wiki ou de commande
Conventions de bones significatives a l'execution
Le pipeline actuel de conversion et de skeleton reconnait quelques conventions de nommage :
hitbox- reserve a la generation de hitbox
- doit definir proprement la hitbox du modele au lieu d'etre utilise comme bone visuel
tag_...- traite comme des bones virtuels lies aux nametags
h_...- traite comme des bones de tete
Ce ne sont pas seulement des conventions de style ; elles affectent la conversion et le comportement en execution.
IK, null objects et locators
Le code actuel confirme le support de :
- null objects Blockbench comme controleurs IK
- blueprints de chaines IK et resolution IK en runtime
- parsing des locators
Contrainte pratique importante :
- La recherche des controleurs IK est basee sur le nom, donc le nommage du controleur doit rester stable entre la structure du modele et les donnees d'animation
Separation de sortie en 1.21.4+
Pour Minecraft 1.21.4+, FreeMinecraftModels genere les fichiers de definition d'item model sous :
plugins/FreeMinecraftModels/output/FreeMinecraftModels/assets/freeminecraftmodels/items
Les anciennes versions utilisent encore l'ancien schema de chemins d'item model. Si tu verifies la sortie generee pendant l'authoring, assure-toi de regarder la bonne forme de sortie pour la version cible de ton serveur.
Notes Bedrock et chemin de rendu
- Le support Bedrock depend de
sendCustomModelsToBedrockClientset du chemin Floodgate/Geyser/resource pack autour de ce parametre - Les clients Java sur des versions prises en charge peuvent utiliser le rendu via display entities quand
useDisplayEntitiesWhenPossibleest active - Ne pars pas du principe qu'un modele correct sur un client Java est automatiquement sur pour ton chemin Bedrock
Conseils pratiques d'authoring
- garder des noms de fichier stables, car ils deviennent des IDs de runtime
- garder des noms de controleurs et d'animations explicites, car la resolution d'animation dans Blockbench est basee sur le nom
- utiliser intentionnellement les noms reserves de virtual bones
- verifier la sortie importee apres
/fmm reload, pas seulement dans Blockbench - verifier le contenu du pack genere pour ta ligne Minecraft cible, surtout en
1.21.4+
Hors scope
Cette page n'essaie pas de garantir :
- les etapes exactes de l'interface Blockbench
- les preferences artistiques de workflow
- chaque particularite historique de
.bbmodeldecrite dans d'anciens README locaux
Ces details changent plus vite que le contrat d'execution verifie ci-dessus.