❤ 3Nemau Cactus Mohat Résoudre le problème de frame disparaissant pour un changement de charset ou image
Niveau : très facile
Logiciel : RPG Maker MV. Peut-être MZ ?
Cela vous est sans doute déjà arrivé, mais pour diversifier les poses de vos personnages ou pour les besoins d'une petite animation à base de sprites, vous êtes parfois amené à changer de charset. L'option immédiate qui vient en tête est donc de changer cela via Set Move Route et Change Graphic.
Cependant, au moment du test, il se passe ceci :
Screen par Pulsial.
L'animation a une micro frame de coupure pendant laquelle le personnage disparaît, ce qui n'est pas très esthétique.
Mais pourquoi ?
Souvent, ce problème survient lorsqu'il y a beaucoup de ressources sur une même carte. MV preoladant les ressources, on peut supposer qu'il existe des erreurs. Cette disparition ne survient que lors du premier lancement de l'événement, mais c'est quand même pas très joli (sauf si vous souhaitez hachurer l'animation).
Mais je fais quoi alors ?
Fort heureusement, il existe une solution très simple pour y pallier : charger les images utilisées vous-mêmes.
1 - Faire un événement en processus parallèle ou automatique.
2 - Faire disparaître l'écran. Deux options : soit vous choisissez de de faire disparaître l'écran avant la téléportation, soit vous le faites disparaître directement au début de l'événement. A noter que dans les deux cas, il vous faudra faire disparaître l'écran ET changer la teinte, ce dernier évitant de voir un bout de la map suivante.
Citation: - Teinter l'écran (-255, -255, -255, 0), 1 frame
- Effacer progressivement l'écran |
3 - On attend, soit 60 frames une fois au début (méthode 1), soit on intègre un attendre 1 frame après le chargement de chaque image à l'étape 4 (méthode 2). Ces attendre servent à éviter l'affichage d'images avant que l'écran ne disparaisse.
4 - Afficher toutes les ressources graphiques utilisées sur la map. A noter qu'il faut afficher toutes les frames dont vous aurez besoin pour les charset. Par exemple, si votre bonhomme commence de face et va en haut avant de changer de charset pour faire du jardinage, il vous faudra afficher tous ses déplacements (la direction, les frames d'animation et le changement de charset).
3 - Effacer celles dont vous ne vous servez pas lorsque vous arrivez sur la carte.
4 - On attend, soit 60 frames si vous utilisez la méthode a, soit le nombre de frames équivalent au nombre de ressources utilisées + 1 frame si vous utilisez la méthode 2.
5 - Afficher l'écran.
Citation: - Teinter l'écran (0, 0, 0, 0), 1 frame
- Afficher progressivement l'écran |
6 - Effacer cet événement.
La méthode peut sembler barbare, mais elle devrait vous permettre d'avoir un affichage fluide, au détriment d'un petit chargement lorsque vous arrivez sur la map.
Merci à Pulsial pour avoir autorisé la publication du gif animé, et Rosemonde pour avoir soulevé ce problème et expliqué certains aspects.
|