Editorial
Bienvenue sur Le CBNA!
Nous accueillons avec plaisir vos yeux sur nos pages, sur la section GameMaker du CBNA!
Si vous êtes ici, c'est en théorie car vous avez envie de créer un jeu video, ou bien vous cherchez de l'aide, ou encore vous désirez philosopher avec les membres dans la Section Spirituelle, ou vous êtes un artiste et désirez partager vos oeuvres dans la Section CBN'Art.
Bon, il est tout aussi possible nous vous l'accordons que vous soyez tombé ici par hasard, mais ce n'est pas grave nous vous accueillons!
Notre But aujourd'hui est de promouvoir la programmation en France, avec GameMaker entre autre, ou plutôt de partager nos connaissances en programmation, nos techniques, et aussi de nous enrichir, de vous enrichir et d'enrichir le contenu du site avec vos créations et vos conseils.
Nous proposons des Tutoriels, des gm6 et gmd (Codes sources), des scripts, des DLL, des Librairies... Tous créés par des utilisateurs de GameMaker prêts à vous aider.
Aussi ces utilisateurs publient leurs jeux sur le site pour se faire connaître et pour faire avancer la communauté.
Vous êtes certainement comme eux, puisque "eux" c'est vous! Oui, vous qui lisez ces mots, vous pouvez dès maintenant envoyer vos jeux, vos Scripts, vos Tutoriels, vos gm6 et gmd, vos DLL, vos Librairies ou même dans la Section Spirituelle ou dans la Section CBN'Art nous faire part de vos textes, images, états d'esprits, vos opinions sur les Evènements actuels...
Aussi Le CBNA ce n'est pas que du travail, c'est aussi un espace de détente, de rire, de plaisir... nous vous invitons donc à venir parler sur le forum, participer à sa vie, à ses activités...

Merci à vous d'avoir pris le temps de lire ces quelques lignes...

News
Mark Overmars Glog:Accélérer le Temps de Chargement
Si vous jouez régulièrement à des jeux sur YoYo Games, vous noterez que certains prennent vraiment longtemps à charger, alors que d'autres démarrent immédiatement. Et cela semble assez indépendant de la taille du jeu. Regardez par exemple un jeu comme Lost Snowmen. La taille du jeu est de 25 Mo. Mais une fois téléchargé, il démarre dans les secondes qui suivent. (Et si vous y jouez plusieurs fois via Instant Play, il n'est éléchargé qu'une fois.)

Donc, comment eux et les autres font? Si vous regardez la taille de l'executable, il ne fait que 2,6 Mo. La plupart de ce .exe est la partie opératoire. Le jeu lui-même ne contient que les bases. Tous les sprites/images/musiques/sons sont chargés pendant que le jeu tourne. Et ceci est exactement comment réussir à obtenir un chargement rapide. Gardez la taille de l'executable petite.

Vous devez peut-être vous demander pourquoi charger à la volée est plus rapide que de mettre les ressources dans le jeu en lui-même. Ceci peut sembler illogique. La raison est que les ressources incluses doivent petre extraites de l'executable, décodées, décompressées, et interprétées. Tout ceci prend beaucoup de temps.

Mais comment diminuer la taille du fichier? Bien, premièrement, vous devriez garder vos sprites et backgrounds petits. N'utilisez pas d'espace non nécessaire autour des sprites. Pensez attentivement sur le nombre de sous-images d'animation que vos sprites devraient avoir. Réalisez que la taille de l'image originelle n'est pas une bonne indication pour la taille de l'image dans el fichier. Game Maker ne stocke pas les fichiers originaux. Il les enregistre toutes dans un format sans perte. Le fait que vous ajoutiez des images Jpeg ou Bmp ne change rien. C'est la taille finale de l'image qui compte. Aussi, faites attention lorque vous avez trop et de trop grandes polices. N'incluez que le nombre requis de symboles dans vos polices. La musique et les sons sont aussi une raison. Pensez au sample rate de votre musique et réduisez-le si possible. Je vois des jeux qui incluent des fichiers mp3 de beaucoup de Mo alors que ce n'est pas forcément requis.

Si vous avez VRAIMENT besoin de gros sprites/images/musiques/sons, vous devriez les charger durant le jeu. Pour ceci, vous pouvez utiliser les fonctions:

("Code"):

sprite_replace(ind,fname,imgnumb,precise,transparent,smooth,preload,xorig,yorig)
background_replace(ind,fname,transparent,smooth,preload)
sound_replace(index,fname,kind,preload)


Vous pouvez trouver leur description dans la section Changing Resources du fichier d'aide de GM. Il y a aussi des actions pour ces fonctions. Vous ajoutez les ressources dans le jeu avec une image ou son très petit, voir même non-existant. Vous créez un objet de contrôle et le placez dans la première room. Dans un event Room Start ou Create, appelez les fonctions et urilisez les actions pour charger toutes les ressources requises via les ressources crées précedemment dans le fichier (NdT: Vous pouvez aussi tout bonnement les créer ces ressources, sans utiliser de bases mises dans le fichier, via les fonctions sound_create, background_create, etc...), mais n'oubliez pas de mettre les fichiers requis dans le jeu. Si ce chargement prend toujours un peu de temps, vous pouvez changer cette première room en une room de chargement, ou vous montrez une petite animation ou un peu d'aide et même jouer un peu de musique( que vous ne pouvez pas charger depuis un fichier externe, bien sur.)

Les polices peuvent aussi être changées à la volée durant le jeu avec cette fonction:

("Code"):

font_replace(ind,name,size,bold,italic,first,last)


Pour utiliser ceci, creez une police très petite dans le jeu (par exemple avec une seule lettre), et dans la room de chargement, remplacez-là par la nouvelle, plus grande police.

Mais bien sur il y a un problème. Quand vous utilisez des fichiers externes, les autres peuvent les voir et les ""voler"". Ceci peut toujours arriver. Il existe une facon d'éviter ceci. Vous pouvez actuellement stocker vos fichiers cryptés, et les décrypter avant de les charger. Vous aurez cependant besoin d'une DLL pour ceci, du fait que l'encodage en GML serait bien trop lent.
Mais ceci est vraiment pour les utilsateurs expérimentés, et je n'en parlerais plus.

J'éspère que vous avez appris qu'avec seulement un travail limité, vous pouvez faire charger vos jeux très vite.

22/10/2008 par Difègue
12 Commentaires

par ombre @ 22/10/2008 01:59 pm
Le truc en faite c'est eviter les sprites 640*640 avec 200 subimages gnii

par nicoulas @ 22/10/2008 02:01 pm
Bien que je connaissais déjà toutes ces techniques, je pense que ça servira bien, d'autant que c'est bien expliqué (normal gnii)

par daminetreg @ 22/10/2008 07:08 pm
Très utile et très bonne traduction Death, merci à toi! happy1

par master47 @ 23/10/2008 05:00 pm
mouais, personellement cela ne m'apprend rien.

cela peut peut-être aider d'autres, plus débutants ;)

ent tout cas merci pour la traduction :)

par Dan @ 26/10/2008 10:32 pm
Très bonne traduction difègue. Mais comme ça été dit, on a déjà quelques tutoriels sur le site à ce sujet.

par sandavid @ 28/10/2008 12:19 pm
Oui merci sa nous servira surment ! ange

par Topaze22 @ 28/10/2008 07:44 pm
Cela peu être utile pour les débutants.
Ils demandent fréquemment pourquoi leur jeu met un long moment à se lancer.

par Red-error @ 29/10/2008 10:39 pm
Bien entendu, Registered Only... happy1
Mais maintenant au moins, je comprends pourquoi mes "jeux" sont longs à charger... triste

par pedewan @ 31/10/2008 09:58 pm
c'est vraiment inutile ça, de plus on a un tuto pareil dans le site

par Olip96 @ 24/11/2008 12:27 am
Tu ne comprends pas honte

par Asheron @ 06/02/2009 09:13 am
Génial merci beaucoup ^^ (un peu de nécropost ça fait de mal a personne <.<')

par evolton @ 28/02/2009 04:01 pm
Euh qui peut m'expliquer le gml je ne trouve rien a ce sujet repongre par mail s'il vous plait...

Nom:
Mail: (optionel)
Êtes vous Humain? (Entrez oui si c'est le cas)

smile's:

fleche_dfleche_gbehgniihappy1questionrirerire2rougesupertristeangeclincoeurcoleredodofierghagniahhaphehehhontenonnon3ouhouisnif

| M'oublier
[Archives News 2005] [Archives News début 2006]
Base de données des Jeux: Opérationnelle
Base de données des logiciels: Opérationnelle
Base de données des GMD: Opérationnelle
Base de données des GM6: Opérationnelle
Base de données des Librairies: Opérationnelle
Base de données des DLL: Opérationnelle
Base de données des Moteurs: Opérationnelle
Contenu Général du CBNA: Opérationnelle
Base de données Forum: Opérationnelle