Aller au contenu
galdurdocs

Sprites

Galdur UI dessine panneaux, boutons et champs avec des sprites 9-slice en niveaux de gris, teintés par le thème. Change les couleurs dans theme.json sans toucher une image, ou redessine les formes dans un pack de ressources.

⏱ 4 minGaldur UI 0.1.0Client

En niveaux de gris, teintés au rendu

Les sprites de assets/galdurui/textures/gui/sprites/ sont en niveaux de gris. Leur couleur vient du thème et est appliquée au rendu : un pixel blanc prend exactement la couleur du thème. Modifier les couleurs de theme.json ne demande donc aucune nouvelle image ; seule la forme (coins, relief) est dans le sprite.

Les sprites

SpriteTaille, bordureReliefUtilisé par (teinte)
panel256, 4bombéGaldurPanelLayout (background)
button, button_hover, button_pressed, button_disabled64, 4bombé (pressed en creux)GaldurButton, GaldurIconButton (accent selon l’état, surface désactivé)
field64, 4creuxchamp de recherche, cadre de liste, case à cocher (surface), rail de barre de progression (background)
slot64, 4creuxGaldurItemSlot, GaldurItemGrid (background)
tab, tab_selected64, 4bombé, ouvert en basGaldurTabs (surface, accent pour l’onglet actif)
scrollbar_track, scrollbar_thumb32, 2creux / bombébarres de défilement de GaldurScrollList et GaldurItemGrid (background, text_muted)

Les sprites aux mêmes pixels (button / button_hover / button_disabled, field / slot, tab / tab_selected) restent séparés exprès, pour qu’un pack de ressources puisse redessiner chaque état indépendamment.

Les redessiner dans un pack de ressources

Mets des PNG aux mêmes noms dans assets/galdurui/textures/gui/sprites/ de ton pack. Garde-les en niveaux de gris si tu veux que les couleurs du thème s’appliquent.

Comment Minecraft 1.21.1 dessine un 9-slice

Minecraft 1.21.1 n’étire pas les bords et le centre d’un 9-slice : il les répète par tuiles (sprite − 2 × bordure). Bords et centre doivent rester uniformes, sinon la répétition se voit. Des sprites grands limitent le nombre de tuiles ; Galdur UI envoie de toute façon toutes les tuiles d’un sprite en un seul appel de dessin.

Régénérer les sprites intégrés

Les sprites intégrés sont produits par un générateur qui décrit leur forme :

Terminal
.\gradlew.bat generateSprites

Le générateur (tools/GenerateSprites.java) est compilé dans un source set à part : il ne tourne pas au build et n’est pas dans le jar du mod. La CI le relance et échoue si les PNG commités ne correspondent plus à ce qu’il produit.

Des sprites comme icônes de bouton

addIconButton accepte aussi un sprite ResourceLocation à la place d’un objet. Il est teinté avec la couleur text du thème : fournis-le aussi en niveaux de gris.

© 2026 Galdur Studio · galdurstudio.com · Discord · LGPL-3.0-onlyProduit non officiel. Non approuvé par Mojang ou Microsoft, ni associé à eux.