Hi,
I trying to instantiate an object on a particular position but instantiates on a different position.
What's the problem here?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Instantiator : MonoBehaviour
{
[SerializeField] GameObject cigarette;
[SerializeField] Canvas parentCanvas;
GameObject instantiatedCigarette;
Vector2 firstCigarettePos;
float startPosxCig = -946.0901f;
float startPosyCig = -534.46f;
private void Start()
{
firstCigarettePos = new Vector2(startPosxCig, startPosyCig);
firstCigarettePos = Camera.main.ScreenToWorldPoint(firstCigarettePos);
}
public void InstantiateCigarette()
{
StartCoroutine(instantiateCoroutine());
}
IEnumerator instantiateCoroutine()
{
yield return new WaitForSeconds(1f);
instantiatedCigarette = Instantiate(cigarette, firstCigarettePos, Quaternion.identity , parentCanvas.transform) as GameObject;
instantiatedCigarette.transform.SetParent(parentCanvas.transform , false);
instantiatedCigarette.transform.position = firstCigarettePos;
instantiatedCigarette.transform.localScale = cigarette.transform.localScale;
}
}