Hallo les gens.
Même si de toute évidence, le mode plein écran a été nettement amélioré dans les dernières versions de GDevelop, il manque encore certains éléments pour permettre une bonne gestion de l’affichage. Pour moi, une est essentielle : la création d’une condition liée à l’affichage actuel.
Cela donnerait la création de 2 conditions :
“Le jeu est en plein écran”
“Le jeu est en fenêtré”
Il serait bon de pouvoir permettre d’introduire ces conditions dans les évènements.
Euh perso j’utilise des variables et du xml : fullscreen = 1 ou pas… le fichier xml “options.xml” de mes jeux conserve la valeur pour le prochain lancement du jeu.
Je suis pas contre de nouvelles de conditions, mais gare à ne pas en créer trop au risque de voir GD devenir illisible !
Justement, ThomasCVB et moi-même utilisons les variables globales et le XML.
Mais le problème, c’est qu’il faut une condition pour éviter que l’évènement se répète.
Admettons, dans le menu principal, on peut changer le mode plein écran/fenêtre. Mais si l’on retourne dans ce même menu, l’action se fait à nouveau et cela réactive le plein écran déjà en place (d’où le problème).
Hum… Perso je vois pas le problème, surtout depuis l’ajout de l’action qui permet de charger une scene au sein d’une autre : j’ai une scene menu d’options dans lequel on passe en fullscreen/fenetré et si fenetré choix de la taille de fenetre/résolution. De là, ça marche très bien, quand on quitte la scène des options ça mets à jour la valeur du fichier options.xml, et et les paramètres sont donc sauvés pour le prochain lancement du jeu.
La seule difficulté technique que j’ai rencontré c’est sur l’affichage adaptatif/reponsive design : le changement de taille de fenetre fait qu’au retour à la scene de jeu les objets gardent leurs anciennes places, l’interface, les items etc, bref tous les objets… la solution ? quand on quitte le menu je fais une sauvegarde du jeu des éléments à conserver en lieu et place + recalcule relatif de leur position sur la scène, et au retour à la scène jeu je regénère la scène par rapport à la sauvegarde.
Je sais pas si je suis clair, ça induit plusieurs fichiers xml (ou section au sein d’un meme fichier, ça dépend de l’architecture du moteur de jeu), mais là où j’entrevoyais un boulot de plusieurs heures auparavant, depuis la maj avec cette action d’appel de scène ça m’a meme pas pris une heure à mettre en place… Après j’avais déjà le systeme de sauvegardes des données du jeu et l’affichage adapatatif en place avant de me lancer, je n’ai eu qu’à faire le système qui sauvegarde les options de la fenetre dans lequel je ne stocke aujourd’hui que la valeur de la variable globale “fullscreen”.