66 lines
3.4 KiB
Markdown
66 lines
3.4 KiB
Markdown
# beta.066 — cosmétiques animés sans doublon
|
|
|
|
Branche `codex/cosmetic-render-beta066`.
|
|
|
|
## Contrat
|
|
|
|
Un coffre porté n'affiche qu'un coffre : son couvercle s'ouvre et se ferme
|
|
sans laisser un second coffre fermé dessous. Une cloche portée conserve
|
|
son support et une seule cloche qui oscille. Le même correctif s'applique
|
|
aux modèles partagés avec les mobs portant un cosmétique.
|
|
|
|
Minecraft 26.3 distingue la géométrie du bloc posé de son modèle isolé.
|
|
Ce dernier peut déjà inclure un coffre fermé, une cloche fixe ou un livre.
|
|
Sanctuary dessinait ce modèle isolé puis le rendu animé de l'entité de bloc.
|
|
Le rendu avec une entité de bloc utilise désormais la géométrie native du
|
|
bloc posé pour ses parties fixes, avec les teintes et la lumière du bloc,
|
|
puis l'entité de bloc pour les parties animées.
|
|
|
|
Les panneaux conservent leur modèle isolé : Sanctuary soumet séparément
|
|
leur texte, pas une deuxième planche. Les bannières et les têtes conservent
|
|
leur rendu personnalisé ; les lits et portes gardent leurs deux moitiés.
|
|
Le feu de camp conserve sa base et les aliments synchronisés. Aucun asset
|
|
n'est remplacé. Aucun changement serveur, d'interaction, de stockage,
|
|
de sauvegarde ou de génération.
|
|
|
|
## Vérification
|
|
|
|
Le parcours `Cosmetic066ClientChecks` crée un monde plat de développement,
|
|
utilise les modèles et le collecteur de rendu natifs, et reçoit les événements
|
|
du serveur intégré. Avant correction, le test reproduit deux soumissions
|
|
`ChestModel` pour un seul cosmétique ouvert. Après correction, les
|
|
contrôles n'en comptent plus qu'une.
|
|
|
|
Le parcours client réussit en 40 secondes :
|
|
|
|
- coffres normal, piégé, de l'Ender et Shulker : une seule représentation,
|
|
ouverture et fermeture issues des événements serveur ;
|
|
- cloche : un seul modèle animé, un support fixe, oscillation puis arrêt ;
|
|
- feu de camp : base conservée et aliment reçu du serveur visible ;
|
|
- table d'enchantement : un seul livre sur sa base ; panneaux, bannière,
|
|
tête de joueur, lit complet, porte complète, four et étagère conservés ;
|
|
- douze cas de coffres/cloches sur poules, vaches et zombies adultes ou bébés.
|
|
|
|
Le test compte les soumissions réelles de modèles, pas seulement la présence
|
|
d'un état d'animation. Les captures avant/après du coffre et celle de la cloche corrigée ont
|
|
été relues dans `build/cosmetic066-evidence/`.
|
|
|
|
Journaux : `build/cosmetic066-before.log`, `build/cosmetic066-client.log`.
|
|
`./gradlew check build assemblePack assembleTestPack` réussit en 2 min 22 s
|
|
avec `-x :sanctuary:runGameTest -PsanctuaryClientTests=true
|
|
-PsanctuaryQuickTests=true`. Le parcours client dédié utilise aussi
|
|
`-PsanctuaryCosmetic066ClientTests=true -PsanctuaryClientNoVsync=true`.
|
|
Les tests avec serveur dédié restent exclus ; la validation des animations
|
|
utilise le serveur intégré du client.
|
|
|
|
Les deux archives sont vérifiées contre les 1 645 classes et les ressources
|
|
compilées. Seul `HeadCosmeticModels` change dans les sources principales
|
|
par rapport à beta.065. Les textures, JEI et les archives beta.065 restent
|
|
identiques. Le code de Demeure reste identique ; sa version suit le pack.
|
|
Reçu : `build/cosmetic066-artifact.json` ; build : `build/cosmetic066-check.log`.
|
|
|
|
[Pack normal](../build/Sanctuary-beta.066.mrpack) ·
|
|
[Monde plat rapide](../build/Sanctuary-Test-beta.066.mrpack).
|
|
Archives locales, sans publication du canal ni déploiement personnel.
|
|
Une session avec plusieurs clients distants n'a pas été relancée.
|