3. Como conectar vários usuários3. Connecting multiple users

Neste tutorial, você aprenderá a conectar vários usuários como parte de uma experiência compartilhada ao vivo.In this tutorial, you will learn how to connect multiple users as part of a live shared experience. Ao final do tutorial, você estará apto a executar o aplicativo em vários dispositivos e fazer com que cada usuário veja o avatar dos outros usuários se mover em tempo real.By the end of the tutorial, you will be able to run the app on multiple devices and have each user see the avatar of other users move in real-time.

ObjetivosObjectives

  • Saiba como conectar vários usuários em uma experiência compartilhadaLearn how to connect multiple users in a shared experience

Preparando a cenaPreparing the scene

Nesta seção, você vai preparar a cena adicionando alguns pré-fabricados do tutorial.In this section, you will prepare the scene by adding some of the tutorial prefabs.

Na janela Projeto, navegue até a pasta Ativos > MRTK.Tutorials.MultiUserCapabilities > Pré-fabricados e clique e arraste os seguintes pré-fabricados para a janela Hierarquia para adicioná-los à sua cena:In the Project window, navigate to the Assets > MRTK.Tutorials.MultiUserCapabilities > Prefabs folder, then click-and-drag the following prefabs into the Hierarchy window to add them to your scene:

  • Pré-fabricado NetworkLobbyNetworkLobby prefab
  • Pré-fabricado SharedPlaygroundSharedPlayground prefab

Unity com os pré-fabricados NetworkLobby e SharedPlayground recém-adicionados selecionados

Na janela Projeto, navegue até a pasta Ativos > MRTK.Tutorials.AzureSpatialAnchors > Pré-fabricados e clique e arraste os seguintes pré-fabricados para a janela Hierarquia para adicioná-los à sua cena:In the Project window, navigate to the Assets > MRTK.Tutorials.AzureSpatialAnchors > Prefabs folder, then click-and-drag the following prefab into the Hierarchy window to add it to your scene:

  • DebugWindow pré-fabricadoDebugWindow prefab

Unity com o pré-fabricado DebugWindow recém-adicionado selecionado

Como criar o pré-fabricado do usuárioCreating the user prefab

Nesta seção, você criará um pré-fabricado que será usado para representar os usuários na experiência compartilhada.In this section, you will create a prefab that will be used to represent the users in the shared experience.

1. Criar e configurar o usuário1. Create and configure the user

Na janela Hierarquia, clique com o botão direito do mouse em uma área vazia e selecione Criar Vazio para adicionar um objeto vazio à cena, nomeie o objeto PhotonUser e configure-o da seguinte maneira:In the Hierarchy window, right-click on an empty area and select Create Empty to add an empty object to your scene, name the object PhotonUser, and configure it as follows:

  • Verifique se a Posição da transformação está definida como X = 0, Y = 0 e Z = 0:Ensure the Transform Position is set to X = 0, Y = 0, Z = 0:

Unity com o objeto PhotonUser recém-criado selecionado

Na janela Hierarquia, selecione o objeto PhotonUser, então, na janela Inspetor, use o botão Adicionar Componente para adicionar o componente Usuário do Photon (Script) ao objeto PhotonUser:In the Hierarchy window, select the PhotonUser object, then in the Inspector window, use the Add Component button to add the Photon User (Script) component to the PhotonUser object:

Unity com o componente Usuário do Photon adicionado

Na janela Inspetor, use o botão Adicionar Componente para adicionar o componente Sincronização de Rede Genérica (Script) ao objeto PhotonUser e configure-o da seguinte maneira:In the Inspector window, use the Add Component button to add the Generic Net Sync (Script) component to the PhotonUser object and configure it as follows:

  • Marque a caixa de seleção É um UsuárioCheck the Is User checkbox

Unity com o componente Sincronização de Rede Genérica adicionado e configurado

Na janela Inspetor, use o botão Adicionar Componente para adicionar o componente Exibição do Photon (Script) ao objeto PhotonUser e configure-o da seguinte maneira:In the Inspector window, use the Add Component button to add the Photon View (Script) component to the PhotonUser object and configure it as follows:

  • Ao campo Componentes Observados, atribua o componente Sincronização de Rede Genérica (Script)To the Observed Components field, assign the Generic Net Sync (Script) component

Unity com o componente Exibição do Photon adicionado e configurado

2. Criar o avatar2. Create the avatar

Na janela do projeto, navegue até a pasta Ativos > MRTK > SDK > StandardAssets > Materiais para localizar os materiais do MRTK.In the Project window, navigate to the Assets > MRTK > SDK > StandardAssets > Materials folder to locate the MRTK materials.

Em seguida, na janela Hierarquia, clique com o botão direito do mouse no objeto PhotonUser e selecione Objeto 3D > Esfera para criar um objeto de esfera como um filho do objeto PhotonUser e configure-o da seguinte maneira:Then, in the Hierarchy window, right-click on the PhotonUser object and select 3D Object > Sphere to create a sphere object as a child of the PhotonUser object and configure it as follows:

  • Verifique se a Posição da transformação está definida como X = 0, Y = 0 e Z = 0Ensure the Transform Position is set to X = 0, Y = 0, Z = 0
  • Altere a Escala da transformação para um tamanho adequado, por exemplo, X = 0,15, Y = 0,15 e Z = 0,15Change the Transform Scale to a suitable size, for example, X = 0.15, Y = 0.15, Z = 0.15
  • Para o campo MeshRenderer > Materiais > Elemento 0, atribua o material MRTK_Standard_WhiteTo the MeshRenderer > Materials > Element 0 field, assign the MRTK_Standard_White material

Unity com a esfera de avatar recém-criada e configurada

3. Criar o pré-fabricado3. Create the prefab

Na janela Projeto, navegue até a pasta Ativos > MRTK.Tutorials.MultiUserCapabilities > Recursos:In the Project window, navigate to the Assets > MRTK.Tutorials.MultiUserCapabilities > Resources folder:

Janela Projeto do Unity com a pasta Recursos selecionada

Com a pasta Recursos ainda selecionada, clique e arraste o objeto PhotonUser da janela Hierarquia para a pasta Recursos a fim de tornar o objeto PhotonUser um pré-fabricado:With the Resources folder still selected, click-and-drag the PhotonUser object from the Hierarchy window into the Resources folder to make the PhotonUser object a prefab:

Unity com o pré-fabricado PhotonUser recém-criado selecionado

Na janela Hierarquia, clique com o botão direito do mouse no objeto PhotonUser e selecione Excluir para removê-lo da cena:In the Hierarchy window, right-click on the PhotonUser object and select Delete to remove it from the scene:

Unity com o objeto pré-fabricado PhotonUser recém-criado removido da cena

Como configurar o PUN para criar uma instância do pré-fabricado do usuárioConfiguring PUN to instantiate the user prefab

Nesta seção, você vai configurar o projeto para usar o pré-fabricado do PhotonUser criado na seção anterior.In this section, you will configure the project to use the PhotonUser prefab you created in the previous section.

Na janela Projeto, navegue até a pasta Ativos > MRTK.Tutorials.MultiUserCapabilities > Recursos.In the Project window, navigate to the Assets > MRTK.Tutorials.MultiUserCapabilities > Resources folder.

Na janela Hierarquia, expanda o objeto NetworkLobby e selecione o objeto filho NetworkRoom. Em seguida, na janela Inspetor, localize o componente Sala do Photon (Script) e configure-o da seguinte maneira:In the Hierarchy window, expand the NetworkLobby object and select the NetworkRoom child object, then in the Inspector window, locate the Photon Room (Script) component and configure it as follows:

  • Ao campo Pré-fabricado do Usuário do Photon, atribua o pré-fabricado PhotonUser da pasta RecursosTo the Photon User Prefab field, assign the PhotonUser prefab from the Resources folder

Unity com o componente Sala do Photon parcialmente configurado

Como testar a experiência com vários usuáriosTrying the experience with multiple users

Se você criar e implantar agora o projeto do Unity no HoloLens, então, no Unity, entrar no Modo de jogo enquanto o aplicativo estiver em execução no HoloLens, verá a movimentação do avatar do usuário do HoloLens quando mover a cabeça (HoloLens):If you now build and deploy the Unity project to your HoloLens, then, back in Unity, enter Game mode while the app is running on your HoloLens, you will see the HoloLens user avatar move when you move your head (HoloLens) around:

Animação mostrando o Unity com os usuários em rede

Dica

Para obter um lembrete sobre como criar e implantar o seu projeto do Unity no HoloLens 2, confira as instruções em Como criar o aplicativo para o seu HoloLens 2.For a reminder on how to build and deploy your Unity project to HoloLens 2, you can refer to the Building your app to your HoloLens 2 instructions.

Cuidado

O aplicativo precisa se conectar ao Photon; portanto, verifique se o computador/o dispositivo está conectado à Internet.The app needs to connect to Photon, so make sure your computer/device is connected to the internet.

ParabénsCongratulations

Você configurou com êxito seu projeto para permitir que vários usuários se conectem à mesma experiência e vejam os movimentos uns dos outros.You have successfully configured your project to allow multiple users to connect to the same experience and see each other's movements. No próximo tutorial, você implementará uma funcionalidade para que os movimentos dos objetos também sejam compartilhados entre vários dispositivos.In the next tutorial, you will implement functionality so that the movements of objects are also shared across multiple devices.