Page 1 sur 1

Instancier un prefab à une position précise

Publié : 11 Août 2020 15:34
par skyfyx
Bonjour,

J'ai commencer Unity il y à peu et j'essaye en vain d'instancier un Prefab à un endroit précis de la hiérarchie.
Je m'explique:
- J'ai créer un panel qui contient un scrollView, dedans je veux insérer une liste de tâches, qui serait récupérer d'une liste depuis un système de sauvegarde (php , fichier etc ).
- Je créer mon script qui à une fonction load et qui instancie mon Prefab, seulement mon prefab s'instancie mais à la racine de ma scéne et non dans le panel -> scrollView -> content .

J'ai beau chercher je n'ai aucune idée de comment instancier le Prefab à cet endroit. ( mon script et sur le content du scrollview et pour moi la fonction instantiate prenait en compte l'emplacement du script)

Si vous avez une piste, un tuto ou une début de réponse, je suis preneur. Merci :)

Re: Instancier un prefab à une position précise

Publié : 11 Août 2020 15:38
par Max
Bonjour,

tu peux fournir un parent à l'objet que tu instancies: public static Object Instantiate(Object original, Transform parent); (par exemple)

Re: Instancier un prefab à une position précise

Publié : 11 Août 2020 15:50
par skyfyx
Ah oui effectivement ...

Il vaut mieux selon vous Déclarer le parent avec :
1/ public Transform parent; (utiliser parent)
2/ public GameObject parent; (utiliser parent.transform )

Ou les deux sont identiques ?

Merci pour la réponse ;)

Re: Instancier un prefab à une position précise

Publié : 11 Août 2020 15:53
par Max
skyfyx a écrit :
11 Août 2020 15:50
Il vaut mieux selon vous Déclarer le parent avec :
1/ public Transform parent; (utiliser parent)
2/ public GameObject parent; (utiliser parent.transform )
ben si tu le fais par le biais de l'instanciate, cela suffit.
Sinon, c'est Transform.parent, GameObject.parent n'existe pas (les liens parent/enfants se faisant via le transform).

Re: Instancier un prefab à une position précise

Publié : 11 Août 2020 16:00
par skyfyx
Ok d'accord, explication plus que clair ! Merci beaucoup