Clarification de l'organisation d'un projet Unity

Questions techniques liées à l’utilisation d'Unity (et n'entrant pas dans le cadre d'une des sections suivantes)
Dranac
Messages : 11
Inscription : 29 Déc 2016 14:47

Clarification de l'organisation d'un projet Unity

Message par Dranac » 10 Avr 2018 13:53

Salut à tous,

Je viens ici car j'ai besoin de conseils pour mon projet.

J'ai actuellement 2 "entité", une "tuile" pour la map ( que je génère) et une "invocation" que le joueur peut invoquer sur la carte.
Je ne sais pas si ma façon de faire actuel est la bonne pour faire le lien entre le GameObject et mon script.

Pour l'instant les tuiles sont gérées par le "MapManager" (un objet vide avec un script) qui génère la carte avec ces tuiles. Ils ont une propriété GameObject.

Pour l'entité "Invocation" c'est l'inverse, j'ai un GameObject avec un script.

Alors je me demande quelle est la meilleure façon de faire?

Il y a une convention pour ça?

Mon plus gros blocage avec mon "découpage" actuel est lorsque je veux récupérer la tuile où se trouve l'invocation sélectionnée. Ce qui amène à une autre question sur quelle "entité" je mets le "lien".

Dois je mettre une propriété Invocation sur Tiile ou une propriété Tile sur Invocation? ou les deux?

Il y a t-il un "découpage" de mes entités qui me permettrai de faire ce lui simplement.


Merci d'avance!

Dranak

ps: Demandez moi n'importe quel documents qui vous semble utile à comprendre mon problème et/ou à le "résoudre".

Avatar de l’utilisateur
DevAmat
Messages : 435
Inscription : 23 Nov 2016 11:50

Re: Clarification de l'organisation d'un projet Unity

Message par DevAmat » 10 Avr 2018 15:22

Je ne pense pas qu'il y ait une "convention", chaque solution doit répondre a tes besoins.
Demande toi ce que tu veux faire avec ta map etc.
Moi je mettrais un ENUM sur mes Tile, pour lui donner son état (occupé, libre, inaccessible etc.).
Tes invocs ont elles besoin d'une information précise qui influencerait leurs actions? (sont ils sur une Tile d'eau de terre etc.) Si oui alors surement que tes invocs devront avoir une référence sur la Tile. Dans tous les cas tes invocs ont besoin de connaitre le numéro/coordonné de la Tile par exemple pour lancer un pathfinding si il y a un déplacement ou si il y a une attaque...
C'est très ouvert ce genre de système et surtout très dépendant de tes features.
Je sais pas si je t'ai aidé...

ps: Dans ma vision, ton objet doit connaitre le numéro/coordonné de ta Tile ce qui implique un système de recherche de Tile dans ton MapManager en fonction d'une position par exemple.
Ou tu lui donnes la ref de la Tile directement (surement moins souple ce système).

Répondre

Revenir vers « Unity le logiciel »