Anclajes espaciales locales en UnrealLocal Spatial Anchors in Unreal

Los anclajes espaciales sirven para guardar los hologramas en el espacio del mundo real entre sesiones de aplicación como ARPin.Spatial anchors save holograms in real-world space between application sessions as ARPin s. Una vez guardados en el almacén de anclajes de HoloLens,los ARPin se pueden cargar en futuras sesiones y es una opción de reserva ideal cuando no hay conectividad a Internet.Once saved in the HoloLens' anchor store, ARPin's can be loaded in future sessions and are an ideal fallback option when there's no internet connectivity.

Nota

Las funciones de anclaje de UE 4.25 han quedado obsoletas en la versión 4.26 y deben reemplazarse por otras más recientes.Anchor functions from UE 4.25 are obsolete in 4.26 and should be replaced with newer ones.

Importante

Los anclajes locales se almacenan en el dispositivo, mientras que los Azure Spatial Anchors se almacenan en la nube.Local anchors are stored on device, while Azure Spatial Anchors are stored in the cloud. Si desea usar servicios en la nube de Azure para almacenar los anclajes, existe un documento que le guiará por la integración de Azure Spatial Anchors.If you're looking to use Azure cloud services to store your anchors, we have a document that can walk you through integrating Azure Spatial Anchors. Tenga en cuenta que puede tener anclajes locales y de Azure en el mismo proyecto sin que existan conflictos.Note that you can have local and Azure anchors in the same project without conflict.

Comprobación del almacén de anclajesChecking the anchor store

Antes de guardar o cargar anclajes, debe comprobar si el almacén de anclajes está listo.Before saving or loading anchors, you need to check if the anchor store is ready. Si se llama a cualquiera de las funciones de anclaje de HoloLens antes de que el almacén de anclajes esté listo, la llamada no se completará correctamente.Calling any of the HoloLens anchor functions before the anchor store is ready won't succeed.

Guardar anclajesSaving anchors

Cuando la aplicación tenga un componente que se necesite anclar en el mundo, se puede guardar en el almacén de anclajes con la siguiente secuencia:Once the application has a component you need to pin to the world, it can be saved to the anchor store with the following sequence:

Desglose:Breaking this down:

  1. Genere un actor en una ubicación conocida.Spawn an actor at a known location.

  2. Cree un elemento ARPin con esa ubicación y un nombre basado en la clase del actor.Create an ARPin with that location and a name based on the actor’s class.

  3. Agregue el actor al elemento ARPin y guarde el marcador en el almacén de anclajes de HoloLens.Add the actor to the ARPin and save the pin to the HoloLens anchor store.

    • El nombre del anclaje que elija debe ser único, en este ejemplo, es la marca de tiempo actual.The anchor name you choose must be unique, which in this example is the current timestamp.
  4. Si el anclaje se guarda correctamente en el almacén de anclajes, se puede establecer en el portal de dispositivos de HoloLens en Sistema > Administrador de mapas > Archivos de anclajes guardados en el dispositivo.If the anchor is successfully saved to the anchor store, you can see it in the HoloLens device portal under System > Map manager > Anchor Files Saved On Device.

Carga de anclajesLoading anchors

Cuando se inicia una aplicación, se puede usar el siguiente plano técnico para restaurar los componentes en sus ubicaciones de anclaje:When an application starts, you can use the following blueprint to restore components to their anchor locations:

Desglose:Breaking this down:

  1. Recorra en iteración todos los anclajes del almacén de anclajes.Iterate over all of the anchors in the anchor store.

  2. Genere un actor en la identidad.Spawn an actor at identity.

  3. Marque ese actor en ARPin en el almacén de anclajes.Pin that actor to the ARPin from the anchor store.

    • Es importante generar el actor en la identidad, ya que el anclaje es responsable de cambiar la posición del holograma en el mundo en función de dónde se guardó.It's important to spawn the actor at identity since the anchor is responsible for repositioning the hologram in the world based on where it was saved. Cualquier transformación que se proporcione aquí agregará un desplazamiento al anclaje.Any transform added here will add an offset to the anchor.

También se consulta el identificador del anclaje para que se puedan generar diferentes actores en función del nombre guardado del anclaje.The anchor ID is also queried so that different actors can be spawned depending on the anchor’s saved name.

Eliminación de anclajesRemoving anchors

Cuando haya terminado con un anclaje, puede borrar anclajes individuales o todo el almacén de anclajes con los componentes Quitar ARPin del almacén WMRAnchor y Quitar todos los ARPin del almacén WMRAnchor.When you're done with an anchor, you can clear individual anchors or the entire anchor store with the Remove ARPin from WMRAnchor Store and Remove All ARPins from WMRAnchor Store components.

Nota

Tenga en cuenta que Spatial Anchors todavía están en versión beta, por lo que debe asegurarse de consultar la información y las características actualizadas.Bear in mind that Spatial Anchors are still in Beta, so be sure to check back for updated information and features.

Siguiente punto de control de desarrolloNext Development Checkpoint

Si sigue el recorrido de desarrollo de Unreal que hemos diseñado, significa que ya se encuentra en proceso de explorar los bloques de compilación principales de MRTK.If you're following the Unreal development journey we've laid out, you're in the midst of exploring the MRTK core building blocks. Desde aquí, puede continuar con el siguiente bloque de compilación:From here, you can continue to the next building block:

O bien puede saltar a las funcionalidades y las API de la plataforma de realidad mixta:Or jump to Mixed Reality platform capabilities and APIs:

Puede volver a los puntos de control de desarrollo de Unreal en cualquier momento.You can always go back to the Unreal development checkpoints at any time.

Consulta tambiénSee also