Vous n'êtes pas identifié(e). Pour pouvoir écrire ou répondre à un message, vous devez vous connecter ou vous créer un compte sur JAWA.

#1 07-06-2020 09:39:43

jawa
Admin

Re : Objets invariants : lesquels déclarer ? ✓

Les objets invariants permettent uniquement d'alléger les schémas de sauvegarde pour les jeux standalone, et donc de diminuer le temps de sauvegarde et chargement dans ce mode.
Ca n'impacte pas le chargement global du jeu (qui lui peut être réduit par les modèles, optimisation des images, inters de groupes etc...)

L'idée est de dire : qu'est ce qui doit être sauvegardé ou pas dans mon jeu ?
A priori un objet jamais modifié, qui reste toujours dans son état initial tel que créé dans scenarioStudio, peut toujours être mis en invariant.
Certains objets qui sont modifiés uniquement à des fins de décoration, pour rendre le jeu plus vivant, peuvent quand même être exclus de la sauvegarde si le fait de les réinitialiser à chaque lancement du jeu n'a pas d'impact sur la résolution du jeu : par exemple un nuage qui bouge,...

l'algorithme "optim save" scanne tous les objets,  et regarde si il ils sont explicitement modifiés par une interaction (effet modifier, transferer,... portant sur l'id de l'objet) et  attribue un critère d'invariabilité :
- non : l'objet est modifié donc ne doit pas (donc l'objet reste à la valeur par défaut de tout objet créé dans studio)
- détecté : a priori l'objet n'est jamais modifié et est candidat à être invariant : c'est à vous de confirmer que c'est bien le cas sur chaque candidat (peut se faire par lot dans optim save, ou au niveau e chaque éditeur d'objet)

il y a 2 cas à peaufiner :
- le coup de l'objet modifié à des fis cosmétiques  => détecté comme non invariant mais qui peut finalement le devenir
- un détecté comme invariant mais modifié par une interaction qui n'utilise pas son id mais une variable contenant (modifier:{{id_objet}}:...) => Jawa ne peut pas savoir quel(s) id(s) d'objets peut prendre la variable. C'est un cas très particulier, seul l'auteur   peut savoir et confirmer ou infirmer.

Par prudence, JAWA considère qu'un candidat invariant non confirmé est quand même inclus au schéma de sauvegarde (qui peut le plus que le moins), ce n'est pas un drame de laisser qq objets invariants dans la sauvegarde.

A titre d'exemple, sur les 3000 objets du Prisonnier quantique, environ la moitié sont invariants.

J'espère que ce sera plus clair. Encore une fois c'est une optimisation qui n'est utile que sur les gros jeux.

Z

#2 09-06-2020 12:57:00

jawa
Admin

Re : Objets invariants : lesquels déclarer ? ✓

Le poids d'un jeu dépend avant tout de la connexion à travers laquelle il est servi, donc très subjectif. Le meilleur indicateur est le délai de 1er chargement du jeu avec divers types de connexions mis en regard avec la tolérance de vos joueurs !
Néanmoins il existe un indicateur, le devscore, lui aussi un peu subjectif calculé sur le nombre d'assets et d'interactions.
Il est maintenant affiché dans "stats et avis" (vous allez pouvoir comparer vos scores ! Même si ça ne veut pas dire grand chose sur le qualité du jeu )
Disons qu'à partir d'un devscore de 1000 il faut commencer à se poser sérieusement la question de l'optimisation du jeu.
La meilleure des choses étant d'optimiser dès le début de la création.

#3 09-06-2020 13:06:29

jawa
Admin

Re : Objets invariants : lesquels déclarer ? ✓

Autres indicateurs, le poids total du jeu (hors vidéos) et le nombre de fichiers du standalone (hors vidéos) seront maintenant affichés à l'issue d'une export standalone
Au delà de 40mo il ne faut plus, je pense, utiliser le chargement complet

#4 09-06-2020 14:12:33

Catmaya
Membre
Inscription : 14-04-2020

Re : Objets invariants : lesquels déclarer ? ✓

J'en suis à un DevScore de 681 avec 47 lieux, 349 objets et 238 interactions. Mais ce n'est pas fini ...

Hors ligne

#5 09-06-2020 14:54:29

Catmaya
Membre
Inscription : 14-04-2020

Re : Objets invariants : lesquels déclarer ? ✓

C'est qu'il doit y avoir beaucoup d'objets ou beaucoup de décors ou images secondaires ?

Hors ligne

#6 09-06-2020 17:09:47

Catmaya
Membre
Inscription : 14-04-2020

Re : Objets invariants : lesquels déclarer ? ✓

Et en déclinant ces 50 images secondaires dans plusieurs livres, ça n'allégerait pas le devscore ? Après, est-ce que ce serait mieux optimisé ? Déjà, le poids total serait le même.

Hors ligne

#7 09-06-2020 18:43:37

Catmaya
Membre
Inscription : 14-04-2020

Re : Objets invariants : lesquels déclarer ? ✓

Vous avez bien raison  de vous faire plaisir !

Après, peut-être en subdivisant en éléments de couleur ? Ce qui est intéressant au niveau poids pour des couleurs unies, c'est de mettre des images principales et secondaires avec un minuscule point de couleur de quelques pixels et de remplir une forme beaucoup plus grande créée par personnalisation-> Apparence. C'est ce que je fais pour mon arc-en-ciel: 7 objets bandes de couleur, chacune avec 7 images secondaires ainsi formées. Dans Apparence, j'ai mis clip-path et la forme correspondante, en suivant le tutoriel de ce forum sur les zones de clics pour des objets irréguliers.
Ça marche très bien, et c'est très léger.

Pour un coloriage, je vois 2 possibilités: le faire sous forme de vitrail (des bordures qu'ont remplit) ou en superposant les formes, un peu comme on crée un motif en feutrine. Pour l'arc-en-ciel, je procède de cette façon.

Après, ça n'est peut-être pas transposable avec votre problématique, mais c'est une piste d'allègement.

Hors ligne

Pied de page des forums