Simple Object.Instantiate For Loop issues

I’m almost following the example in the manual to the letter but I’m getting an error where a vector3 can’t be converted to a transform expression type.

	public GameObject ObjectG;

	// Use this for initialization
	void Start () {
		
		for (int G1 = 0; G1 < 500; G1++) 
			Instantiate(ObjectG, new Vector3(G1, 0, 0));
		

		for (int G2 = 0; G2 < 500; G2++) 
			Instantiate(ObjectG, new Vector3(0, G2, 0));
		

	}
	
	// Update is called once per frame
	void Update () {
	
	}
}

Sorry for asking about an error that I’m sure seems obvious to long time C# users, I’m still trying to understand the basics of the language.

If you could explain it to me as if I were a child I think it would help me avoid these mistakes in the future.

My guess would be that the Instantiate function needs a third parameter called Quaternion.

You could try to change your

Instantiate(ObjectG, new Vector3(G1, 0, 0));

to

Instantiate(ObjectG, new Vector3(G1, 0, 0), Quaternion.identity);