Hub de Exemplos MRTK2

MRTK2 Examples Hub

O Hub de Exemplos do MRTK2 é uma cena do Unity que facilita a experiência de várias cenas. Ele usa o Sistema de Cena do MRTK para carregar & as cenas.

MRTKExamplesHub.unity é a cena do contêiner que tem componentes compartilhados, incluindo MixedRealityToolkit e MixedRealityPlayspace. A cena MRTKExamplesHubMainMenu.unity tem os botões de cubo.

Baixar o aplicativo de Microsoft Store no HoloLens 2

Se você tiver HoloLens dispositivo 2, poderá baixar e instalar diretamente o aplicativo em seu dispositivo.

English badge

Pré-requisito

O Hub de Exemplos do MRTK usa o Serviço de Transição de Cena e scripts relacionados. Se você estiver usando o MRTK por meio de pacotes do Unity, importe Microsoft.MixedReality.Toolkit. Unity.Extensions.x.x.x.unitypackage, que faz parte dos pacotes de lançamento. Se você estiver usando o MRTK por meio do clone do repositório, já deverá ter a pasta MRTK/Extensões em seu projeto.

Cena do MRTKExamplesHub e o sistema de cena

Abra o MRTKExamplesHub.unity que está localizado em MRTK/Examples/Experimental/Demos/ExamplesHub/Scenes/ It é uma cena vazia com MixedRealityToolkit, MixedRealityPlayspace e LoadHubOnStartup. Essa cena está configurada para usar o Sistema de Cena do MRTK. Clique MixedRealitySceneSystem em MixedRealityToolkit. Ele exibirá as informações do Sistema de Cena no painel Inspetor.



Example Hub Hierarchy

Inspector 1

Na parte inferior do Inspetor, ele exibe a lista das cenas definidas no Perfil do Sistema de Cena. Você pode clicar nos nomes de cena para carregá-los/descarregá-los.



Inspector 2

Scene system 3Exemplo de carregamento da cena MRTKExamplesHub clicando no nome da cena na lista.

Scene system 4Exemplo de carregamento da cena HandInteractionExamples .

Scene system 5 Exemplo de carregamento de várias cenas.

Executando a cena

A cena funciona no modo de jogo do Unity e no dispositivo. Execute a cena MRTKExamplesHub no editor do Unity e use a simulação de entrada do MRTK para interagir com o conteúdo da cena. Para compilar e implantar, basta criar a cena MRTKExamplesHub com outras cenas incluídas na lista do Sistema de Cena. O inspetor também facilita a adição de cenas à Configurações build. Na Configurações de Construção, verifique se a cena MRTKExamplesHub está na parte superior da lista no índice 0.

Build settings

Como o MRTKExamplesHub carrega uma cena

Na cena MRTKExamplesHub , você pode encontrar o ExamplesHubButton pré-fabricado. Há um objeto FrontPlate no pré-fabricado que contém Interactable. Usando o evento e OnTouch() o InteractableOnClick(), ele dispara a função LoadContentScene do script LoadContent(). No Inspetor do script LoadContentScene , você pode definir o nome da cena a ser carregada.



Scene system 6

Scene System 8

Scene System 7

O script usa a função LoadContent() do Sistema de Cena para carregar a cena. Consulte a página Sistema de Cena para obter mais detalhes.

MixedRealityToolkit.SceneSystem.LoadContent(contentName, loadSceneMode);

Retornando à cena do menu principal

Para retornar à cena de menu principal (cena MRTKExamplesHubMainMenu), você pode usar o mesmo método sistema LoadContent() de cena. O ToggleFeaturesPanelExamplesHub.prefab fornece o botão 'Home' que contém o script LoadContentScene . Use esse pré-fabricado ou forneça um botão home personalizado em cada cena para permitir que o usuário retorne à cena principal. É possível colocar o ToggleFeaturesPanelExamplesHub.prefab na cena MRTKExamplesHub para torná-lo sempre visível, já que o MRTKExamplesHub é uma cena de contêiner compartilhado. Certifique-se de ocultar/desativar ToggleFeaturesPanel.prefab em cada cena de exemplo.

Toggle feature PanelExample Hub home button

Adicionando botões adicionais

No objeto CubeCollection , duplique (ou adicione) os pré-fabricados ExampleHubButton e clique em Atualizar Coleção no GridObjectCollection. Isso atualizará o layout do cilindro com base no novo número total de botões. Consulte a página Coleção de Objetos para obter mais detalhes.



Scene System 9

Scene System 10

Depois de adicionar os botões, atualize o nome da cena no script LoadContentScene (explicado acima). Adicione cenas adicionais ao perfil do Sistema de Cena.