| [Tutoriel] Room adaptable à la fenêtre en GML | |
|
|
Auteur | Message |
---|
Caly Utilisateur confirmé: Rang ****
Messages : 1285 Localisation : Haute Normandie Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.
| Sujet: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 22:00 | |
| Bonjour, Je vais ici vous montrer et expliquer un système que j'utilise pour adapter ma room à ma fenêtre, ce système est plus utile pour un soft qu'un jeu mais il peut être utilisé dans tout les cas. je ne vous expliquerez pas les fonctions natives que j'utiliserai dans ce tutoriel, je vous laisse regarder la documentation en français où tout est assez bien expliqué, si toute fois après avoir regardé et cherché à comprendre vous ne comprenez toujours pas le fonctionnement d'une fonction n’hésitez pas à demander une explication ici même. Lien de la documentation : http://gamemaker.info/fr/manualLes objectifs:-Pouvoir agrandir et rapacité la fenêtre. -Adapter la fenêtre à l’écran du client. -Que les textes soient à la bonne proportion et net. -Que tout les sprites gardent les bonnes dimensions. -Réaliser le tout avec le moins de code possible. La réalisation:On va commencer par créer une Room. Dans les options de cette Room il va falloir la mettre en "persistant" et lui attribuer une vue. On va ensuite créer un objet qui va gérer tout le système: obj_resize_windowDans son Create on va initialiser les variables dont on auras besoin: - Code:
-
resize=0;
window_set_sizeable(1);
win_width=window_get_width(); win_height=window_get_height();
alarm[0]=1;
resize : permet de savoir si on est entrain de redimensionner la fenêtre ou pas. win_width et win_height : permet de comparer la taille assignée aux variables avec la taille actuelle de la fenêtre. On passe à l' alarm[0] qu'on appelle à un Step du Create: - Code:
-
window_set_rectangle(5,50,display_get_width()-10, display_get_height()-50); Ici on redimensionne juste la fenêtre par rapport à la résolution de l’écran du client. (je ne le place pas dans le Create car ça créer des conflits avec certains de mes autres scripts) On finit par le Step: - Code:
-
if (win_width!=window_get_width() or win_height!=window_get_height()){ win_x=window_get_x(); win_y=window_get_y(); resize=1; window_set_rectangle(window_get_x(),window_get_y(),window_get_width(),window_get_height()); view_xview[view_current]=0; view_yview[view_current]=0; view_wview[view_current]=window_get_width(); view_hview[view_current]=window_get_height(); view_xport[view_current]=0; view_yport[view_current]=0; view_wport[view_current]=window_get_width(); view_hport[view_current]=window_get_height(); room_goto(room); }
if( resize ){ window_set_rectangle( win_x,win_y,window_get_width(),window_get_height() ); resize=0; }
win_width=window_get_width(); win_height=window_get_height(); Le code reste assez clair, on gros: -si on redimensionne la fenêtre (en comparant la taille actuelle et les variables win_width et win_height) -on redimensionne tout les paramètres de la vue -on recharge la Room (d'où l'importance qu'elle soit persistante). Améliorations:Pas d'idées Mot de la fin:Merci pour votre lecture en espérant vous avoir été utile. |
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 22:14 | |
| Ouai c'est un peu la ***** a faire avec GM ça. Être obligé a chaque fois de recharger la room :/
N’empêche tu devrais faire des gm6 bien commentés, ça te prendrais moins de temps et ça serais tout aussi utile. Car la c'est pas vraiment un tuto, mais plus une démarche a suivre avec le code fournis. (je sais que ça a un nom bien spécifique mais m'en souviens pas) |
|
| |
Caly Utilisateur confirmé: Rang ****
Messages : 1285 Localisation : Haute Normandie Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 22:24 | |
| - Citation :
- Ouai c'est un peu la ***** a faire avec GM ça.
Être obligé à chaque fois de recharger la room :/ Je confirme, j'ai mis pas mal de temps à trouver une solution et c’est la seule que j'ai trouvé, je sais pas s'il y a mieux. - Citation :
- N’empêche tu devrais faire des gm6 bien commentés, ça te prendrais moins de temps et ça serais tout aussi utile.
J'ai GM 8 pro donc je ne sais pas si c'est compatible avec des versions antérieurs. Et en fait tout les bouts de codes que je met à droite et à gauche en ce moment c'est des morceaux de codes de mon éditeur de particules. Et je trouve que ne pas fournir le gm6 c’est pas mal aussi, car ça oblige les personnes à lire un peut et à non pas aller à la fin et télécharger le truc finit. Car pas mal de monde fait ça et on arrive avec des jeux qui on tous les mêmes code sources copiés collés, je trouve ça triste personnellement, mais bon c'est un autre débat. |
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 22:27 | |
| Fin moi je dit ça parce que les gens qui lisent des tutos ou marche a suivre y en a pas des masses, alors qu'un exemple c'est simple a utiliser et rapide a utiliser.
T'as qu'a aller voir mes tutos sur le gml par exemple. Y a des fois je me dit j'aurais mieux fait de faire un pong online avec des ponays... |
|
| |
Caly Utilisateur confirmé: Rang ****
Messages : 1285 Localisation : Haute Normandie Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 22:32 | |
| Tes tutos je les ai tous lus Et c'est grâce à eux entre autres que j'ai progressé si vite. Ce qui est dommage sur les forums de ce genre c'est que les gens viennent, posent une question sans avoir cherché, on leurs donne la réponse et on ne les revois jamais et bien entendu sans un seul merci... |
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 22:35 | |
| Oui c'est assez incroyable. Enfin oui j'ironisais quand je parlais de ponay plus haut, je sais que ça sert quand même un peu de faire des tutos (sinon j'en ferais pas) mais bon quand on peu éviter de s'emmerder tant qu'a faire des gm6 :p
Je sais pas si t'as vu la banque d'exemple un peu touche a tout que j'avais faite, bah s'il avais fallu que je fasse un tuto pour chaque exemple, j'en serais mort et la section déborderais x) |
|
| |
Caly Utilisateur confirmé: Rang ****
Messages : 1285 Localisation : Haute Normandie Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 22:57 | |
| - Citation :
- Je sais pas si t'as vu la banque d'exemple
J'ai vus le lien mais je ne l'ai pas téléchargé par manque de temps. Mais un jour peut être Et puis d'écrire mes scripts ça me permet de les garder quelque part avec des explications au cas où j'en aurais besoin plus tard. Car des fois quand je code des trucs et que je reviens dessus trois mois après je suis complètement perdu. Quant tu les codes ça semble logique mais quant tu te repenche dessus il y a des trucs que tu ne pige plus. Mais quand j'aurais plus de temps je mettrai des fichiers d'exemples, là tout mes codes sont dans un seul gros fichier (mon éditeur). |
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 23:04 | |
| Encore un vilain codeur qui utilise pas assez les commentaires |
|
| |
Caly Utilisateur confirmé: Rang ****
Messages : 1285 Localisation : Haute Normandie Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 27 Oct 2011 - 23:11 | |
| - Citation :
- Encore un vilain codeur qui utilise pas assez les commentaires
Bha en fait je commente des fois Mais ça me semble tellement logique ce que je fait que oui je ne commente pas beaucoup. Faudrait que je fasse des efforts sur ce point je te l'accorde. |
|
| |
red-error Utilisateur confirmé: Rang ****
Messages : 1015 Projet Actuel :
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 3 Nov 2011 - 0:46 | |
| OKAY ! J'ai toujours essayé de redimensionner mes fenêtres, parfois avec succès, mais il y avait toujours 1/2 pixel de décalage dans l'image étrangement... Donc suffit de recharger la room quand sa redimensionne... Simple. |
|
| |
Sekigo Le Magnifique Utilisateur confirmé: Rang *****
Messages : 1720
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML Jeu 3 Nov 2011 - 1:07 | |
| Hey, j'ai lu tes tutoriels moi aussi, Onilink. Bon, même si je n'utilise plus GM, mais c'est un détail ça. En fait, je regard(ais) pas mal les exemples avant, et j'aime bien les tutoriels, ça peut servir dans d'autres langages.
Il ne faut pas trop se baser sur le nombre de commentaires. Parfois, y a pas mal de visiteurs qui regardent, et des membres aussi, mais qui ne savent pas quoi dire. Personnellement, j'ai été visiteur pendant ~6 mois avant de venir m'inscrire, il y a quelques années. Bon, c'était pour voir surtout la section Privée du forum (mais j'ai été très deçu, je m'attendais à une mine d'or de code, de tutos, etc... Et non, y a que des femmes nus, des liens warez et des poneys dans cette section). |
|
| |
Contenu sponsorisé
| Sujet: Re: [Tutoriel] Room adaptable à la fenêtre en GML | |
| |
|
| |
| [Tutoriel] Room adaptable à la fenêtre en GML | |
|