Usando o mecanismo do Vuforia com o UnityUsing Vuforia Engine with Unity

O Vuforia Engine traz um recurso importante para o HoloLens – o poder de conectar experiências do AR a imagens e objetos específicos no ambiente.Vuforia Engine brings an important capability to HoloLens – the power to connect AR experiences to specific images and objects in the environment. Você pode usar essa capacidade para sobrepor instruções passo a passo guiadas sobre máquinas para a empresa industrial ou adicionar recursos e experiências digitais a um produto ou jogo físico.You can use this capability to overlay guided step-by-step instructions on top of machinery for the industrial enterprise or add digital features and experiences to a physical product or game.

Para obter maior flexibilidade ao desenvolver experiências de AR, o Vuforia Engine oferece uma ampla gama de recursos e destinos.For greater flexibility when developing AR experiences, Vuforia Engine offers a broad range of features and targets. Um dos nossos mais novos recursos, Vuforia Model targets, é um recurso importante para usos comerciais e industriais.One of our newest features, Vuforia Model Targets, is a key capability for both commercial and industrial uses. Os destinos de modelo permitem que os aplicativos reconheçam objetos físicos, como computadores, automóveis ou brinquedos, e os acompanham com base em um modelo CAD ou 3D digital.Model Targets allow applications to recognize physical objects like machines, automobiles or toys and track them based on a CAD or digital 3D model. Para usos industriais, esse recurso pode fornecer operadores de assembly e técnicos de serviço com instruções de trabalho AR e diretrizes de procedimento na fábrica ou fora do campo.For industrial uses, this feature can provide assembly workers and service technicians with AR work instructions and procedural guidance while in the factory or out in the field.

Os aplicativos do mecanismo Vuforia existentes criados para telefones e tablets podem ser facilmente configurados no Unity para serem executados no HoloLens.Existing Vuforia Engine apps that were built for phones and tablets can easily be configured in Unity to run on HoloLens. Você pode até mesmo usar o mecanismo de Vuforia para levar seu novo aplicativo de HoloLens para tablets do Windows 10, como o Surface pro e o livro de superfície.You can even use Vuforia Engine to take your new HoloLens app to Windows 10 tablets such as the Surface Pro and Surface Book.

Baixe as ferramentasGet the tools

Instale as versões recomendadas do Visual Studio e do Unity e, em seguida, configure o Unity para usar o Visual Studio e o IDE e o compilador preferenciais.Install the recommended versions of Visual Studio and Unity and then configure Unity to use Visual Studio and the preferred IDE and compiler.

Ao instalar o Unity, certifique-se de instalar o "back-end de script do IL2CPP da Windows Store".When installing Unity, be sure to install the “Windows Store IL2CPP Scripting Backend”.

Adicionar o suporte do mecanismo Vuforia funciona de maneira diferente, dependendo da sua versão do Unity:Adding Vuforia Engine Support works differently depending on your version of Unity:

  • Unity 2018,4: baixar o instalador do mecanismo do Vuforia para o Unity 2018,4 no portal do desenvolvedor do VuforiaUnity 2018.4: Download the Vuforia Engine installer for Unity 2018.4 from the Vuforia developer portal
  • Unity 2019,2: obter o pacote de mecanismo Vuforia mais recenteUnity 2019.2: Get the latest Vuforia Engine package

Introdução ao mecanismo do VuforiaGetting started with Vuforia Engine

O melhor ponto de partida para aprender sobre como usar o mecanismo Vuforia com o HoloLens é com o exemplo de hololens do mecanismo Vuforia (disponível no repositório de ativos do Unity).The best starting point for learning about using Vuforia Engine with HoloLens is with the Vuforia Engine HoloLens sample (available in the Unity Asset Store). O exemplo fornece um projeto completo do HoloLens, incluindo cenas pré-configuradas que podem ser implantadas em um HoloLens.The sample provides a complete HoloLens project including pre-configured scenes that can be deployed to a HoloLens.

As cenas mostram como usar destinos de imagem Vuforia para reconhecer uma imagem e aumentá-la com conteúdo digital em uma experiência de HoloLens.The scenes show how to use Vuforia Image Targets to recognize an image and augment it with digital content in a HoloLens experience. O exemplo de Hololens do mecanismo Vuforia também inclui uma cena que mostra o uso de destinos de modelo e VuMarks no HoloLens.The Vuforia Engine Hololens Sample also includes a scene showing the usage of Model Targets and VuMarks on HoloLens. Você pode facilmente substituir seu próprio conteúdo nos bastidores para experimentar a criação de aplicativos do HoloLens que usam o mecanismo Vuforia.You can easily substitute your own content in the scenes to experiment with the creation of HoloLens apps that use Vuforia Engine.

Configurando um aplicativo Vuforia para o HoloLensConfiguring a Vuforia App for HoloLens

Desenvolver um aplicativo de mecanismo Vuforia para o HoloLens é fundamentalmente o mesmo que desenvolver aplicativos de mecanismo Vuforia para outros dispositivos.Developing a Vuforia Engine app for HoloLens is fundamentally the same as developing Vuforia Engine apps for other devices. Em seguida, você pode aplicar as configurações de compilação e as configurações descritas na seção abaixo.You can then apply the build settings and configurations described in the section below. Isso é tudo o que é necessário para permitir que o mecanismo de Vuforia funcione com o mapeamento espacial do HoloLens e os sistemas de controle posicional.That’s all that’s needed to enable Vuforia Engine to work with the HoloLens spatial mapping and positional tracking systems.

Compilar e executar o exemplo do mecanismo Vuforia para o HoloLensBuild and Run the Vuforia Engine Sample for HoloLens

  1. Baixe o exemplo do mecanismo Vuforia para o HoloLens do repositório de ativos do UnityDownload the Vuforia Engine Sample for HoloLens from the Unity Asset Store
  2. Aplicar as opções recomendadas do mecanismo Unity para energia e desempenhoApply the recommended Unity engine options for power and performance
  3. Adicione os bastidores de exemplo em cenas no Build.Add the sample scenes to Scenes in Build.
  4. Defina o destino da compilação da plataforma para "Plataforma Universal do Windows" em arquivo > configurações de compilação.Set your platform build target for “Universal Windows Platform” in File > Build Settings.
  5. Selecione as seguintes definições de configuração da criação de plataforma:Select the following platform build configuration settings:
  • Dispositivo de destino = HoloLensTarget Device = HoloLens
  • Tipo de compilação = D3DBuild Type = D3D
  • SDK = mais recente instaladoSDK = Latest Installed
  • Visual Studio versão = mais recente instaladoVisual Studio Version = Latest Installed
  • Compilar e executar em = computador localBuild and Run on = Local Machine
  1. Defina um nome de produtoexclusivo, em configurações do Player, para servir como o nome do aplicativo quando instalado no HoloLens.Define a unique Product Name, in Player Settings, to serve as the name of the app when installed on the HoloLens.
  2. Verifique a realidade aumentada do Vuforia e a realidade virtual com suporte nas configurações do Player > as configurações de XRCheck Vuforia Augmented Reality and Virtual Reality Supported in Player Settings > XR Settings
  3. Também em configurações de XR, certifique-se de que "realidade misturada do Windows" seja adicionado à lista de SDKs de realidade virtualAlso under XR Settings, make sure that “Windows Mixed Reality” is added to the Virtual Reality SDKs List
  4. Verifique os seguintes recursos nas configurações do Player > configurações de publicaçãoCheck the following Capabilities in Player Settings > Publish Settings
  • InternetClientInternetClient
  • IntegradaWebCam
  • SpatialPerception – se você pretende usar a API de observador de superfícieSpatialPerception - if you intend to use the Surface Observer API
  1. Selecione Compilar para gerar um projeto do Visual StudioSelect Build to generate a Visual Studio project
  2. Compilar o executável do Visual Studio e instalá-lo em seu HoloLensBuild the executable from Visual Studio and install it on your HoloLens

Observação: a partir da versão 7,2, o exemplo do mecanismo Vuforia para o HoloLens inclui uma cena de exemplo, incluindo o uso de exemplos de destinos de modeloNote: Starting with version 7.2, the Vuforia Engine Sample for HoloLens includes a sample scene including example usage of Model Targets

O portal do desenvolvedor do VuforiaThe Vuforia Developer Portal

Os desenvolvedores que desejam criar suas próprias experiências de AR com o Vuforia Engine e o HoloLens devem se inscrever em nosso portal do desenvolvedor Vuforia em Developer.vuforia.com.Developers looking to create their own AR experiences with Vuforia Engine and HoloLens should sign up on our Vuforia Developer Portal at developer.vuforia.com. No portal, os desenvolvedores têm acesso aos fóruns do mecanismo Vuforia , onde podem ingressar em discussões da Comunidade, uma biblioteca com documentação detalhada sobre todos os recursos do mecanismo do Vuforia e o Gerenciador de destino do Vuforia , onde os usuários podem criar seus próprios destinos personalizados.In the portal, developers have access to the Vuforia Engine Forums where they can join community discussions, a library with in-depth documentation on all the Vuforia Engine Features, and the Vuforia Target Manager where users can create their own custom Targets. Os desenvolvedores também podem se inscrever para uma licença de desenvolvedor gratuita usando o Gerenciador de licenças do Vuforia.Developers can also sign up for a free Developer License using the Vuforia License Manager.

Acompanhamento estendido com VuforiaExtended tracking with Vuforia

O controle estendido mantém o rastreamento mesmo quando um destino não está mais na exibição.Extended tracking maintains tracking even when a target is no longer in view. Ele é habilitado automaticamente para todos os destinos quando o controlador de dispositivo posicional está habilitado.It is automatically enabled for all targets when the Positional Device Tracker is enabled. Para aplicativos HoloLens, o controlador de dispositivo posicional é iniciado automaticamente no Unity.For HoloLens applications, the Positional Device Tracker is started automatically in Unity.

O mecanismo de Vuforia combina automaticamente as poses do rastreamento espacial da câmera e do HoloLens para fornecer um destino estável, independentemente de o destino ser visto pela câmera ou não.Vuforia Engine automatically fuses the poses from camera tracking and HoloLens's spatial tracking to provide stable target poses independent of whether the target is seen by the camera or not.

Como o processo é manipulado automaticamente, ele não requer nenhuma programação pelo desenvolvedor.Since the process is handled automatically, it does not require any programming by the developer.

Veja a seguir uma descrição de alto nível do processo:The following is a high-level description of the process:

  1. O controlador de destino do Vuforia reconhece o destinoVuforia’s target Tracker recognizes the target
  2. O rastreamento de destino é inicializadoTarget tracking is then initialized
  3. A posição e a rotação do destino são analisadas para fornecer uma estimativa de pose robusta para o HoloLensThe position and rotation of the target are analyzed to provide a robust pose estimate for HoloLens
  4. O mecanismo Vuforia transforma a pose do destino no espaço de coordenadas do mapeamento espacial do HoloLensVuforia Engine transforms the target's pose into the HoloLens spatial mapping coordinate space
  5. O HoloLens assumirá o controle se o destino não estiver mais na exibição.HoloLens takes over tracking if the target is no longer in view. Sempre que você olhar novamente o destino, o Vuforia continuará a rastrear as imagens e os objetos com precisão.Whenever you look again at the target, Vuforia will continue to track the images and objects accurately.

Os destinos que são detectados, mas que não estão mais na exibição, são relatados como EXTENDED_TRACKED.Targets that are detected, but no longer in view, are reported as EXTENDED_TRACKED. Nesses casos, o script DefaultTrackableEventHandler usado em todos os destinos continua a renderizar o conteúdo de aumento.In these cases, the DefaultTrackableEventHandler script that is used on all targets continues to render augmentation content. O desenvolvedor pode controlar esse comportamento implementando um script de manipulador de eventos rastreável personalizado.The developer can control this behavior by implementing a custom trackable event handler script.

Modo de desempenho com mecanismo VuforiaPerformance Mode with Vuforia Engine

É possível que o mecanismo Vuforia gerencie o desempenho no HoloLens para realizar experiências de AR e reduzir a carga de trabalho na CPU.It is possible through the Vuforia Engine to manage the performance on the HoloLens to extent AR experiences and reduce the workload on the CPU. O mecanismo Vuforia oferece três modos que podem ser selecionados: padrão, para otimizar a velocidade e para otimizar a qualidade.The Vuforia Engine offers three modes that can be selected: default, for optimizing speed, and for optimizing quality.

  • MODE_OPTIMIZE_SPEED permite minimizar a carga de trabalho no dispositivo do HoloLens e é ótimo para estender as experiências do AR.MODE_OPTIMIZE_SPEED lets you minimize the workload on the HoloLens device and is great for extending AR experiences. É recomendável para situações em que o aplicativo está acompanhando objetos/destinos estáticos.It is recommended for situations where the app is tracking static objects/targets.
  • MODE_DEFAULT é o modo normal que pode ser usado na maioria dos cenários.MODE_DEFAULT is the normal mode which can be used in most scenarios.
  • MODE_OPTIMIZE_QUALITY é melhor para controlar destinos móveis ou destinos de modelo que você espera que sejam coletados.MODE_OPTIMIZE_QUALITY is better for tracking movable targets or model targets you expect to be picked up.

Definindo o modoSetting the mode

Para alterar o modo de desempenho no Unity, navegue até configuração do Vuforia (Ctrl + Shift + V/Cmd + Shift + V) que está localizado como um componente no ARCamera gameobject.To change the performance mode in Unity, navigate to Vuforia Configuration (Ctrl+Shift+V / Cmd+Shift+V) that is located as a component in the ARCamera GameObject.

  • Selecione o menu suspenso para o modo de dispositivo de câmera e selecione uma das três opções.Select the dropdown menu for Camera Device Mode and select one of the three options.

Veja tambémSee also