Inicio rápido: Creación de una aplicación de Unity para iOS con Azure Spatial AnchorsQuickstart: Create a Unity iOS app with Azure Spatial Anchors

En este inicio rápido se describe cómo crear una aplicación de Unity para iOS con Azure Spatial Anchors.This quickstart covers how to create a Unity iOS app using Azure Spatial Anchors. Azure Spatial Anchors es un servicio multiplataforma para desarrolladores que le permite crear experiencias de realidad mixta mediante objetos cuya ubicación persiste en todos los dispositivos a lo largo del tiempo.Azure Spatial Anchors is a cross-platform developer service that allows you to create mixed reality experiences using objects that persist their location across devices over time. Cuando haya terminado, tendrá una aplicación iOS de ARKit compilada con Unity que puede guardar y recuperar un delimitador espacial.When you're finished, you'll have an ARKit iOS app built with Unity that can save and recall a spatial anchor.

Aprenderá a:You'll learn how to:

  • Crear una cuenta de Spatial AnchorsCreate a Spatial Anchors account
  • Preparar la configuración de compilación de UnityPrepare Unity build settings
  • Configurar la clave y el identificador de la cuenta de Spatial AnchorsConfigure the Spatial Anchors account identifier and account key
  • Exportación del proyecto de XcodeExport the Xcode project
  • Implementarlo y ejecutarlo en un dispositivo iOSDeploy and run on an iOS device

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.If you don't have an Azure subscription, create a free account before you begin.

PrerrequisitosPrerequisites

Para completar esta guía de inicio rápido, asegúrese de que dispone de lo siguiente:To complete this quickstart, make sure you have:

  • Una máquina macOS en que estén instalados Unity 2019.4 (LTS) y la versión más reciente de Xcode.A macOS machine with Unity 2019.4 (LTS), the latest version of Xcode installed.
  • GIT instalado mediante HomeBrew.Git installed via HomeBrew. Escriba el siguiente comando en una sola línea de Terminal: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)".Enter the following command into a single line of the Terminal: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)". A continuación, ejecute brew install git y brew install git-lfs.Then, run brew install git and brew install git-lfs.
  • Un dispositivo iOS compatible con ARKit habilitado para el desarrollo.A developer enabled ARKit compatible iOS device.

Creación de un recurso de Spatial AnchorsCreate a Spatial Anchors resource

Vaya a Azure Portal.Go to the Azure portal.

En el menú izquierdo, seleccione Crear un recurso.On the left pane, select Create a resource.

Use el cuadro de búsqueda para buscar Spatial Anchors.Use the search box to search for Spatial Anchors.

Captura de pantalla que muestra los resultados de una búsqueda de Spatial Anchors.

Seleccione Spatial Anchors y, después, seleccione Crear.Select Spatial Anchors, and then select Create.

En el panel Cuenta de Spatial Anchors, haga lo siguiente:On the Spatial Anchors Account pane, do the following:

  • Escriba un nombre de recurso único con caracteres alfanuméricos normales.Enter a unique resource name by using regular alphanumeric characters.

  • Seleccione la suscripción a la que desea asociar el recurso.Select the subscription that you want to attach the resource to.

  • Cree un grupo de recursos, para lo que debe seleccionar Crear nuevo.Create a resource group by selecting Create new. Asígnele el nombre myResourceGroup y luego seleccione Aceptar.Name it myResourceGroup, and then select OK.

    Un grupo de recursos es un contenedor lógico en el que los recursos de Azure, como aplicaciones web, bases de datos y cuentas de almacenamiento, se implementen y administren.A resource group is a logical container into which Azure resources, such as web apps, databases, and storage accounts, are deployed and managed. Por ejemplo, más adelante puede elegir eliminar todo el grupo de recursos en un solo paso.For example, you can choose to delete the entire resource group in one simple step later.

  • Seleccione la ubicación (región) en la que desea colocar el recurso.Select a location (region) in which to place the resource.

  • Seleccione New (Nuevo) para empezar a crear el recurso.Select New to begin creating the resource.

Captura de pantalla del panel Spatial Anchors para crear un recurso.

Una vez creado el recurso, Azure Portal muestra que se ha completado la implementación.After the resource is created, the Azure portal shows that your deployment is complete.

Captura de pantalla que muestra que la implementación del recurso se ha completado.

Haga clic en Go to resource (Ir al recurso).Select Go to resource. Ahora puede ver las propiedades del recurso.You can now view the resource properties.

Copie el valor de Id. de cuenta del recurso en un editor de texto para usarlo más adelante.Copy the resource's Account ID value into a text editor for later use.

Captura de pantalla del panel de propiedades de recursos.

Copie también el valor de Account Domain (Dominio de cuenta) del recurso en un editor de texto para usarlo más adelante.Also copy the resource's Account Domain value into a text editor for later use.

Captura de pantalla que muestra el valor del dominio de la cuenta del recurso.

En Configuración, seleccione Clave.Under Settings, select Key. Copie el valor de Clave principal, Clave de cuenta, en un editor de texto para su uso posterior.Copy the Primary key value, Account Key, into a text editor for later use.

Captura de pantalla del panel de claves de la cuenta.

Descarga y apertura del proyecto de Unity de ejemploDownload and open the Unity sample project

Ejecute los siguientes comandos para clonar el repositorio de ejemplos:Clone the samples repository by running the following commands:

git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples

En Unity, abra el proyecto en la carpeta de Unity.In Unity, open the project in the Unity folder. Unity podría notificarle sobre una diferencia entre la versión del proyecto y la que tiene instalada en la máquina.Unity might prompt you about a difference between the version in the project and the version that's installed on your machine. Esta advertencia es correcta, siempre que su versión del Editor de Unity sea más reciente que con la que se creó el proyecto.This warning is okay, as long as your version of Unity Editor is newer than the one that the project was created with. Si la versión es más reciente, seleccione Continuar.If your version is newer, select Continue. Si la versión es anterior a la que necesita el proyecto, Seleccione Salir y actualice el Editor de Unity.If your version is older than the one the project needs, select Quit, and upgrade your Unity Editor.

Captura de pantalla del panel de Unity.

Seleccione File > Build Settings (Archivo > Configuración de compilación) para abrir Build Settings (Configuración de compilación).Open Build Settings by selecting File > Build Settings.

En la sección Platform (Plataforma), seleccione iOS.In the Platform section, select iOS.

Seleccione Switch Platform (Cambiar plataforma) para cambiar la plataforma a iOS.Select Switch Platform to change the platform to iOS. Unity puede solicitarle que instale los componentes de compatibilidad con iOS si no están presentes.Unity might prompt you to install iOS support components if they're missing.

Captura de pantalla de la ventana de configuración de compilación de Unity.

Cierre la ventana Build Settings (Configuración de compilación).Close the Build Settings window.

Configuración de la información de una cuentaConfigure the account information

El paso siguiente es configurar la aplicación para que use la información de su cuenta.The next step is to configure the app to use your account information. Ha copiado los valores de Clave de cuenta, Id. de cuenta y Account Domain (Dominio de cuenta) en un editor de texto, en la sección "Creación de un recurso de Spatial Anchors".You copied the Account Key, Account ID, and Account Domain values to a text editor earlier, in the "Create a Spatial Anchors resource" section.

En el panel Proyecto, vaya a Assets\AzureSpatialAnchors.SDK\Resources.On the Project pane, go to Assets\AzureSpatialAnchors.SDK\Resources.

Seleccione SpatialAnchorConfig.Select SpatialAnchorConfig. En el panel Inspector, especifique Account Key como el valor de la clave de cuenta de Spatial Anchors, Account ID como el valor del id. de cuenta de Spatial Anchors y Account Domain como el valor del dominio de cuenta de Spatial Anchors.On the Inspector pane, enter the Account Key as the value for Spatial Anchors Account Key, the Account ID as the value for Spatial Anchors Account Id, and the Account Domain as the value for Spatial Anchors Account Domain.

Exportación del proyecto de XcodeExport the Xcode project

Seleccione File > Build Settings (Archivo > Configuración de compilación) para abrir Build Settings (Configuración de compilación).Open Build Settings by selecting File > Build Settings.

En Scenes In Build (Escenas en compilación), asegúrese de que haya una marca de verificación junto a cada escena.Under Scenes In Build, ensure all the scenes have a check mark next to them.

Seleccione Build (Compilar).Select Build. En el panel que se abre, seleccione la carpeta a la que va a exportar el proyecto Xcode.On the pane that opens, select a folder to export the Xcode project to.

Cuando se completa la exportación, aparece una carpeta que contiene el proyecto Xcode exportado.When the export is complete, a folder that contains the exported Xcode project appears.

Nota

Si aparece una ventana con un mensaje en el que se pregunta si quiere reemplazar o anexar, es aconsejable que seleccione Append (Anexar), porque es más rápido.If a window appears with a message asking whether you want to replace or append, we recommend that you select Append, because it's faster. Solo sería necesario seleccionar Replace (Reemplazar) si va a cambiar los recursos de la escena.You should select Replace only if you're changing assets in your scene. Por ejemplo, si va a agregar, quitar, o cambiar las relaciones de elementos primarios y secundarios, o si va a agregar, quitar o cambiar las propiedades.For example, you might be adding, removing, or changing parent/child relationships, or you might be adding, removing, or changing properties. Si solo va a realizar cambios en el código fuente, Anexar debería ser suficiente.If you're only making source code changes, Append should be enough.

Apertura del proyecto de XcodeOpen the Xcode project

Puede abrir el proyecto Unity-iPhone.xcodeproj en Xcode.Now you can open your Unity-iPhone.xcodeproj project in Xcode.

Puede iniciar Xcode y abrir el proyecto Unity-iPhone.xcodeproj exportado, o bien iniciar el proyecto en Xcode mediante la ejecución del siguiente comando desde la ubicación en la que exportó el proyecto:You can either launch Xcode and open the exported Unity-iPhone.xcodeproj project or launch the project in Xcode by running the following command from the location where you exported the project:

open ./Unity-iPhone.xcodeproj

Seleccione el nodo raíz Unity-iPhone para ver la configuración del proyecto y, después, seleccione la pestaña General.Select the root Unity-iPhone node to view the project settings, and then select the General tab.

En Deployment Info (Información de implementación), asegúrese de que el destino de implementación está establecido en iOS 11.0.Under Deployment Info, make sure that the deployment target is set to iOS 11.0.

Seleccione la pestaña Signing & Capabilities (Firma y funcionalidades) y asegúrese de que la opción Automatically manage signing (Administrar automáticamente la firma) está habilitada.Select the Signing & Capabilities tab and make sure that Automatically manage signing is enabled. Si no lo está, habilítelo y luego restablezca la configuración de la compilación seleccionando Enable Automatic (Habilitar automático) en el panel que aparece.If it's not, enable it, and then reset the build settings by selecting Enable Automatic on the pane that appears.

Implementación de la aplicación en el dispositivo iOSDeploy the app to your iOS device

Conecte el dispositivo iOS al equipo Mac y establezca el esquema activo en su dispositivo iOS.Connect the iOS device to the Mac, and set the active scheme to your iOS device.

Captura de pantalla del botón Mi iPhone para seleccionar el dispositivo.

Seleccione Build and then run the current scheme (Compilar y luego ejecutar el esquema actual).Select Build and then run the current scheme.

Captura de pantalla del botón de flecha para la "Implementar y ejecutar".

En la aplicación, seleccione BasicDemo mediante las flechas y pulse el botón Go!In the app, select BasicDemo using the arrows, then press the Go! para ejecutar la demostración.button to run the demo. Siga las instrucciones para colocar y recuperar un delimitador.Follow the instructions to place and recall an anchor.

Captura de pantalla 1 Captura de pantalla 2 Captura de pantalla 3Screenshot 1 Screenshot 2 Screenshot 3

Cuando termine, presione Stop (Detener) en Xcode para detener la aplicación.When finished, stop the app by pressing Stop in Xcode.

Solución de problemasTroubleshooting

Problemas de representaciónRendering issues

Cuando se ejecuta la aplicación, si no ve la cámara como fondo (en cambio ve, por ejemplo, una textura negra, azul o de otro tipo), es probable que deba volver a importar los recursos en Unity.When running the app, if you don't see the camera as the background (for instance you instead see a blank, blue or other textures) then you likely need to re-import assets in Unity. Detenga la aplicación.Stop the app. En el menú superior de Unity, elija Assets -> Re-import all (Recursos -> Volver a importar todo).From the top menu in Unity, choose Assets -> Re-import all. Luego, vuelva a ejecutar la aplicación.Then, run the app again.

Limpieza de recursosClean up resources

En los pasos anteriores, creó recursos de Azure en un grupo de recursos.In the preceding steps, you created Azure resources in a resource group. Si no cree que vaya a necesitar estos recursos en el futuro, puede eliminarlos mediante la eliminación del grupo de recursos.If you don't expect to need these resources in the future, you can delete them by deleting the resource group.

En el menú de Azure Portal o la página Inicio, seleccione Grupos de recursos.From the Azure portal menu or Home page, select Resource groups. En la página Grupos de recursos, seleccione myResourceGroup.Then, on the Resource groups page, select myResourceGroup.

En la página myResourceGroup, asegúrese de que los recursos enumerados sean los que desea eliminar.On the myResourceGroup page, make sure that the listed resources are the ones you want to delete.

Seleccione Eliminar grupo de recursos, escriba myResourceGroup en el cuadro de texto para confirmar y, después, seleccione Eliminar.Select Delete resource group, type myResourceGroup in the text box to confirm, and then select Delete.

Pasos siguientesNext steps

En este inicio rápido, ha creado una cuenta de Spatial Anchors.In this quickstart, you created a Spatial Anchors account. Después, ha configurado e implementado una aplicación para guardar y recuperar los anclajes espaciales.You then configured and deployed an app to save and recall spatial anchors. Para más información acerca de cómo mejorar la aplicación para que pueda compartir anclajes espaciales con otros dispositivos, diríjase al siguiente tutorial.To learn more about how to improve the app so it can share spatial anchors with other devices, continue to the next tutorial.