Question about Instantiate (420930)

I found in manual most of the time it is require to pass Tansform object to the first parameter of Instantiate.

i.e. in the manual

var cube : Transform;
function Start () {
  for (var y = 0; y < 5; y++) {
    for (var x = 0; x < 5; x++) {
        var cube = Instantiate(cube, Vector3 (x, y, 0), Quaternion.identity);
    }
  }
}

Why I need to define the cube variable as Transform not GameObject?

You don’t. Use a GameObject if it’s more convenient for you.

–Eric