PicoPixel

Qu'est-ce qu'un sprite ?

Découvrez ce que sont les sprites, comment créer des widgets animés à plusieurs états et comment les réutiliser entre les projets.

EDEd
spritepicopixel
MIS À JOUR2026-05-29
01/07

Vue d'ensemble

Découvrez les sprites de PicoPixel : leur rôle, les cas où ils sont utiles, leur création pas à pas et leur réaction aux événements de l’interface. Vous verrez aussi comment les réutiliser dans plusieurs projets.

Aucune expérience préalable en animation n'est nécessaire ; si vous pouvez glisser-déposer une image, vous pouvez créer un sprite.

02/07

C'est quoi ?

Un sprite est un widget PicoPixel qui regroupe plusieurs animations. Vous pouvez passer de l’une à l’autre à tout moment. Chaque animation correspond à un mode, aussi appelé état, comme "Idle", "Running" ou "Happy".

Imaginez un personnage de jeu vidéo. Le personnage est un seul élément à l'écran, mais il peut marcher, sauter ou faire signe selon ce qui se passe. Un sprite fonctionne de la même façon : un widget, de nombreuses apparences, et vous choisissez l’animation à lire.

L’éditeur d’événements permet de changer de mode en fonction des interactions et de donner vie au sprite.

Exemple : supposons que vous ayez un personnage animé, ou que vous souhaitiez créer votre propre visage stack-chan pour votre ESP32 ou une autre application LVGL. Vous pouvez utiliser un seul sprite et déclencher conditionnellement différents modes comme "Running", "Thinking", "Failed" et bien d'autres, sans avoir à jongler avec une multitude de widgets séparés.

TIP

LVGL ne propose pas de sprite à plusieurs états en natif. PicoPixel ajoute cette possibilité en s’appuyant sur le widget Animated Image, sans vous demander de relier les animations vous-même.

03/07

Quand dois-je utiliser un sprite ?

Choisissez le widget en fonction du comportement souhaité :

  • Une image fixe et statique ? Utilisez une Image normale. Les sprites sont trop complexes pour quelque chose qui ne bouge jamais.
  • Une animation qui tourne simplement en boucle indéfiniment (comme un indicateur de chargement) ? Utilisez une Animated Image. C'est plus simple et plus léger.
  • Quelque chose qui doit changer en fonction de ce qui se passe, un visage qui sourit quand une tâche réussit, ou un personnage qui passe du repos à la course ? C'est exactement pour cela qu'un sprite existe.

La règle générale : si votre graphique a plus d'une "humeur" ou d'un "comportement" et que vous souhaitez passer de l'un à l'autre, utilisez un sprite.

04/07

Comment créer un sprite ?

  1. Sélectionnez le widget "Sprite". Dans la barre latérale droite, vous pouvez ajouter votre premier mode pour ce sprite. Par exemple, le premier état pourrait être "Idle". Donnez à chaque état un nom clair pour le reconnaître plus tard lorsque vous configurerez les déclencheurs.
  2. Importez les images de ce mode dans l’ordre. Leur affichage successif crée le mouvement, comme les pages d’un folioscope.
    • Vous pouvez ajuster la durée pour cet état spécifique. Une durée plus longue joue l'animation plus lentement ; une plus courte l'accélère.
  3. Ajoutez un autre état. Un minimum de 2 modes est requis. (Si vous n'avez besoin que d'une seule animation, il vaut mieux utiliser le widget Animated Image, voir Quand dois-je utiliser un sprite ? ci-dessus.)
  4. Utilisez l'onglet/éditeur Events pour déclencher et basculer conditionnellement entre vos différents états. C'est ce qui donne vie au sprite ; plus de détails dans la section suivante.
WARNING

Toutes les images doivent avoir exactement les mêmes dimensions dans tous les modes d'un sprite. Si une image fait 64×64 et une autre 80×80, le sprite ne s'alignera pas correctement. Redimensionnez-les pour qu'elles correspondent avant de les importer.

NOTE

Limitez le nombre et les dimensions des images : une animation détaillée peut demander beaucoup de mémoire à un petit microcontrôleur. Si le sprite ne s’affiche pas après le flashage, consultez les problèmes courants.

05/07

Donner vie à votre sprite

Pour rendre le sprite réactif, utilisez l’éditeur d’événements et définissez quand il doit changer d’état.

L'idée est simple : quand quelque chose se produit, passer à un état. Vous choisissez le "quelque chose" (une pression de bouton, un changement de valeur, une minuterie, etc.) et PicoPixel s'occupe du reste.

Un exemple typique :

  1. Votre sprite démarre dans l'état "Idle" par défaut.
  2. Dans l'éditeur d'événements, vous ajoutez un événement : quand un bouton est pressé, faire passer le sprite à l'état "Running".
  3. Ajoutez un autre événement : quand la tâche se termine, passer à "Happy" (ou revenir à "Idle").

C'est tout ; votre sprite réagit maintenant à ce que fait l'utilisateur, sans aucun code de votre part. Vous pouvez enchaîner autant de ces événements que vous le souhaitez pour construire des widgets véritablement expressifs.

TIP

Commencez petit. Faites d'abord basculer deux états l'un vers l'autre, confirmez que cela semble correct dans l'aperçu, puis ajoutez d'autres états une fois satisfait du comportement.

06/07

Comment réutiliser un sprite ?

Enregistrez votre sprite dans une bibliothèque pour le réutiliser dans d’autres projets sans le recréer.

  1. Faites un clic droit sur votre widget sprite terminé et cliquez sur "Add Library Widget".
    • Cela crée une entrée réutilisable dans votre bibliothèque dans l'onglet Assets. Considérez-la comme votre étagère personnelle de widgets prêts à l'emploi.
  2. Pour déplacer cette bibliothèque entre des projets ou la partager avec un collègue, accédez à Library et cliquez sur Export.
  3. Désormais, lorsque vous créez un nouveau projet ou ouvrez un espace de travail existant, vous pouvez importer cette bibliothèque et insérer le sprite directement : aucune reconstruction nécessaire.
    • Toutes les images, durées et états se synchronisent parfaitement depuis la copie originale que vous avez créée, de sorte qu'il se comporte exactement pareil partout où vous l'utilisez.
07/07

Problèmes courants

Le sprite n'apparaît pas lorsqu'il est flashé sur l'appareil.

  • C'est presque toujours un problème de mémoire : votre appareil a besoin de suffisamment de RAM pour contenir les images du sprite.
  • Cela est configuré dans votre configuration LVGL et PicoPixel ne peut pas le modifier pour vous ; cela dépend de votre carte spécifique.
  • Le fichier README.md exporté le mentionne, de sorte que votre assistant IA peut vous aider à mettre à jour la configuration SDK/LVGL pour votre appareil embarqué.

Les images semblent mal alignées ou sautent.

  • Vérifiez que chaque image dans chaque état a exactement les mêmes dimensions. Même quelques pixels de différence perturberont l'alignement.

L'animation se joue trop vite ou trop lentement.

  • Ajustez la durée de l'état concerné. Rappelez-vous que chaque état a sa propre durée, vous devrez peut-être les régler individuellement.

Le sprite ne me laisse pas le sauvegarder / demande un autre état.

  • Un sprite nécessite au moins 2 états. Si vous n'en avez qu'un, ajoutez un deuxième état ou passez au widget Animated Image à la place.
À LIRE ENSUITE

Pour aller plus loin.

Comment utiliser les mascottes dans PicoPixel thumbnail
PICOPIXEL

Comment utiliser les mascottes dans PicoPixel

Les mascottes sont des sprites animés prêts à l'emploi avec plusieurs modes que vous pouvez déclencher selon n'importe quelle condition. Choisissez-en un dans le répertoire, ajoutez-le à votre projet et connectez-le pour qu'il réagisse à ce que fait votre appareil : récupération de données, surchauffe, revue de code, et bien plus encore.

pets · sprites · picopixel
Comment utiliser les modèles, kits d'interface et applications complètes PicoPixel thumbnail
PICOPIXEL

Comment utiliser les modèles, kits d'interface et applications complètes PicoPixel

Trouvez des modèles PicoPixel, des kits d'interface, des exemples, des sprites, des widgets et des fichiers d'applications complètes, puis ouvrez, téléchargez, importez, personnalisez et exportez-les en code C LVGL pour votre appareil.

templates · ui-kits · full-apps
PicoPixel LVGL MCP Server Setup Guide thumbnail
PICOPIXEL

PicoPixel LVGL MCP Server Setup Guide

Set up the PicoPixel LVGL MCP server for Claude, ChatGPT, Codex, or Cursor. Learn agent settings, reusable components, colors, fonts, and assets.

LVGL MCP · MCP server setup · AI UI design