Network Instantiate - Client does not see player

I am new to Unity and trying to figure out how networking works. I have this multiplayer game, where a player can host a game and other players can join a created game. Also, I have a “Player” prefab that I use to represent a player (a spaceship).

When someone create a game, I call Network.InitializeServer(), and then Network.Instantiate(player). When a client connects to a created game, I call Network.Conect() and then Network.Instantiate(player). What happens is that the host can see both players, but the client only see his own spaceship. Is Network.Instantiate(player) supposed to instantiate the prefab on clients that connects after this call? If not, how can I work around it?

Where do you call the instantiate ? Does the server call it or do all clients call it ?

I just solved my problem. I have a Menu scene, and when a player click Create Game, I do something like this:

void CreateGameButton_OnClick()
{
          Network.InitializeServer(32, 25000, false);
}

void OnServerInitialized()
{
          Application.LoadLevel("GameScene");
}

void OnLevelWasLoaded (int level)
{
         Network.Instantiate(myPrefab, Vector3.zero, Quaternion.identity, 0);
}

The code above is the “server-side” code. The code used by the client is something like:

void ConnectButton_OnClick()
{
          Network.Connect(ipAddress, listenPort);
}

void OnServerInitialized()
{
          Application.LoadLevel("GameScene");
}

void OnLevelWasLoaded (int level)
{
         Network.Instantiate(myPrefab, Vector3.zero, Quaternion.identity, 0);
}

What happens is that Network.Instantiate() is a buffered RPC, that means that it instantiates the prefab for every client, even if the client joined the network after the call was made. So there was my server, with the GameScene loaded and it’s prefab, then a client connects and immediatelly receive the RPC to instantiate the server prefab. But unfortunatelly, the client load his own GameScene, and then it loses the server prefab. It was a silly mistake, but maybe someone else have the same issue. Here is the link for the solution: http://unity3d.com/support/documentation/Components/net-NetworkLevelLoad.html