Comment gérer les scènes correctement ?

Questions techniques liées à l’utilisation d'Unity (et n'entrant pas dans le cadre d'une des sections suivantes)
GameTux
Messages : 37
Inscription : 11 Nov 2012 03:13

Comment gérer les scènes correctement ?

Message par GameTux » 05 Mars 2020 02:28

Salut,

je fais mon premier jeu et je me pose quelques questions assez basiques, actuellement j'ai 3 scènes.
Une scène avec le Menu et une scène du niveau 1 et une scène du niveau 2

Si j'ai besoin du même objet dans le niveau 1 et dans le niveau 2 comment je devrais faire ? Actuellement dans la section "Hierarchy" j'ai simplement copier l'objet depuis la scène du niveau 1 à la scène du niveau 2, mais je me demande si c'est "optimisé" comme ça ? Est-ce que du coup comme ça l'objet est en double dans le jeu ? Je veux dire par là que ça prendra plus de la place au niveau du stockage ?

Merci

Edit : Je me rend compte que c'est pas du code donc je ne sais pas si j'ai posté au bon endroit.

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6220
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Comment gérer les scènes correctement ?

Message par boubouk50 » 05 Mars 2020 09:18

Salut,

Si tu utilises le même objet dans plusieurs scènes, ou plusieurs fois dans la même scène, tu peux totalement le dupliquer. Ce qu'il ne faut pas faire c'est dupliquer la source.
Un gameObject est défini par ses sources (textures, mesh, etc). Si toutes les copies utilisent les mêmes sources, alors elles ne seront chargées qu'une seule fois. Si tu dupliques les sources, alors il faudra toutes les charger, et donc ce sera plus lourd.

Si tu souhaites qu'un objet "passe" d'une scène à l'autre, tu peux utiliser la fonction DontDestroyOnLoad () dans un script.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

GameTux
Messages : 37
Inscription : 11 Nov 2012 03:13

Re: Comment gérer les scènes correctement ?

Message par GameTux » 05 Mars 2020 16:58

Merci pour la réponse tres clair, j'imagine que c'est pareille pour les component, avoir des double dans "Hierarchy" ne pose pas de probleme ?

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6220
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Comment gérer les scènes correctement ?

Message par boubouk50 » 05 Mars 2020 17:26

C'est pareil.

Je ne comprends pas trop la question en soi. Je veux dire que tu utilises déjà des components dupliqués puisque TOUS les gameObjects possèdent le Component Transform (RectTransform pour les éléments d'UI). C'est fait pour. Tu ne vas pas créer 50 scripts nommés Script01, Script02, etc et qui font la même chose. Tu utilises le même pour tous ceux qui en ont besoin. Sinon ça n'a pas de sens.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

GameTux
Messages : 37
Inscription : 11 Nov 2012 03:13

Re: Comment gérer les scènes correctement ?

Message par GameTux » 05 Mars 2020 17:39

Ouais je me rend compte que ma question était un peu stupide, mais en faite j'imaginais qu'il fallait peut étre juste remplacer le minimum de choses pour pas avoir de duplication.

Par exemple si je veux faire un system de choix de voiture, je me disais qu'il fallait peut étre juste remplacer le mesh et les materials (avec du code) pour pas dupliquer les autres components qui reste les méme, c'est un peu stupide mais je voulais juste étre sure.

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6220
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Comment gérer les scènes correctement ?

Message par boubouk50 » 05 Mars 2020 18:01

C'est aussi une possibilité, mais au final, tu auras exactement le même résultat.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Répondre

Revenir vers « Unity le logiciel »