Page 1 sur 1

Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 15:43
par Thomas_mrqs
Bonjour à tous,

Je test un peu de mettre en place mes idées pour un jeux mobile.
Je précise que je suis débutant sur unity mais pas en programmation.

Mon idée est d'avoir une map de 11x11 cubes (le cube sera mon unité de mesure pour le post :-D ) affiché à l'écran comme ceci :
Image
Image

Une fois que le player (bleu) ce déplace (de cube en cube), j'aimerais que la tranche opposé de la map au déplacement du player disparaisse et que réciproquement la tranche opposé apparaisse.

En clair peut importe le mouvement du player sur la map, ce qui est affiché à l'écran reste une map de 11x11 cubes.

J'ai besoin qu'on m'aiguille un peu, moi j'ai une map de 30x30, il faudrait que je gère l'affichage des objets ou bien que j'instancie la map au fur et a mesure ?

La map de 30x30 : Image

Merci par avance.
Thomas

Re: Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 15:55
par djulio74
Salut.
Si jamais ta map est composée de cubes distincts, et donc un gameobject par cube ( unité de mesure) tu pourrais :
Solution 1 :
- définir un Rect de taille 11x11 centré sur ton player.
- a chaque fois ton player arrive sur un cube (pour pas le faire en udpdate continuellement)
- checker tes cubes si leur position est dans le Rect.
- n'afficher que ces cube là, masquer les autres.

Solution 2 :
- avoir tout tes cubes de ta map dans un tableau bien ordonné, genre premiere ligne cube de 0 a 29, deuxiemede 30 a 59 ..etc.
- en connaissant sur quel cube est ton player, tu dois pouvoir afficher ceux qui sont autour :
- tout ceux sur les ligne -5 a +5 par rapport au player et colone de -5 a +5.
- avec des condition de maximum situ est en bord de map ( a - de 5 cases d'un bord)

Re: Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 16:40
par Thomas_mrqs
Salut,
J'avais déjà pensé à la 2eme solution mais si je veux faire des maps de différentes tailles ça peut vite devenir galère.

La 1ere solution me plait et elle s'applique pour n'importe quelle map. Je vais me renseigner sur le rect j'aime beaucoup l'idée.

Petite question cependant, comment détecter que mon player arrive sur un nouveau cube ? Je dois jouer avec les coordonnées ou il existe des composants type trigger pour simplifier ?

Re: Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 18:22
par Alesk
C'est plus simple/propre de bosser avec les coordonnées.

Pour que le code soit clair, garde 1 unité de la scène unity comme unité de mesure.
Il te suffit alors de comparer la valeur entière de la position de ton cube sur les deux axes à ces mêmes valeurs dans l'update d'avant pour savoir si tu viens de changer de case ou non.

Re: Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 19:07
par Thomas_mrqs
Ok super j'ai réussi à obtenir ce que je voulais merci.

Maintenant j'aimerais pas seulement me limiter à masquer mes cubes mais également le décor qui s'y trouve.

Serait-il possible de faire quelques chose qui serait en mode "puisque ce cube doit être masqué, masque moi tout ce qui se trouve dans l'axe vertical de ce cube" ?

Re: Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 20:23
par Alesk
le plus simple est de parenter au cube les objets qui se trouvent au dessus de lui, ainsi tu désactiveras tout le monde en désactivant juste le cube.

Re: Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 21:16
par Thomas_mrqs
Ça marche parfaitement, merci beaucoup !

Si je veux donner une animation pour ce qui disparait et ce qui apparait, il faut que je me renseigne sur quoi ?

Re: Apparition d'une map uniquement sur une portion défini

Publié : 29 Déc 2019 21:45
par Alesk
ça dépend du type d'animation...

Regarde du côté du composant animator... Des infos par là : https://www.youtube.com/watch?v=1cEsAXxszAs