Configurazione scene e uso di AR Foundation nei progetti EasyAR
Usare AR Foundation in Unity spesso richiede EasyAR per risolvere le limitazioni di dispositivo di AR Foundation. Il contenuto seguente spiega come configurare e usare correttamente AR Foundation in una scene EasyAR e come abilitare dinamicamente AR Foundation in base al supporto del dispositivo.
Prima di iniziare
- Leggere supporto di EasyAR per il framework Unity XR per comprendere il supporto di EasyAR al framework Unity XR e quando considerare AR Foundation.
- Leggere abilitare AR Foundation in un progetto EasyAR per sapere come installare e configurare AR Foundation in un progetto EasyAR.
Aggiungere componenti AR Foundation
Aggiungere AR Session e XR Origin di AR Foundation alla scene EasyAR.
Aggiungere AR Session
Nella vista Hierarchy, fare clic destro su un punto vuoto e usare il menu XR > AR Session per aggiungere ARSession di Unity alla scene.

Nota
Questa AR Session è diversa dalla AR Session di EasyAR; entrambe devono esistere contemporaneamente nella scene.
Aggiungere XR Origin
Nella vista Hierarchy, fare clic destro su un punto vuoto e usare il menu XR > XR Origin (Mobile AR) per aggiungere XROrigin di Unity alla scene.

Nota
Questo XR Origin si sovrappone funzionalmente allo XR Origin di EasyAR, quindi è necessario usare Unity XR Origin invece dello XR Origin di EasyAR.
Se nella scene esisteva già lo XR Origin di EasyAR, di solito chiamato XR Origin (EasyAR), spostare gli oggetti figli sotto il nuovo XR Origin creato, quindi eliminare XR Origin (EasyAR).

A questo punto, se sotto il nuovo XR Origin non c'è XR Origin Child, aggiungerlo manualmente.
Nella vista Hierarchy, selezionare XR Origin e fare clic destro. Usare il menu EasyAR Sense > Origin > Origin : XR Origin Child per aggiungere XR Origin Child sotto XR Origin.

Configurare Camera
Se nella scene esisteva già una Camera per AR, comparirà una main camera in più; occorre eliminare la camera originale.

Poi selezionare Main Camera sotto XR Origin e configurare la camera secondo le istruzioni di configurazione Camera.
Infine, una struttura scene EasyAR completa con AR Foundation aggiunto dovrebbe essere simile alla seguente:
Attenzione
Se è necessario modificare la configurazione di AR Foundation tramite ARCameraManager.currentConfiguration, notare che alcuni telefoni (ad esempio Mi 10) hanno problemi propri: dopo la modifica della configurazione non è possibile ottenere immagini e EasyAR non potrà essere usato (l'app ha uno sfondo immagine ma le funzioni EasyAR non reagiscono). Perciò di solito non è consigliato modificarla; se è necessario farlo, preparare un fallback per quando EasyAR non può essere usato.
Compatibilità dei dispositivi e abilitazione dinamica di AR Foundation
EasyAR è compatibile con molti più dispositivi rispetto ad AR Foundation, quindi è necessario configurare l'app affinché abiliti AR Foundation solo quando serve e lo disabiliti completamente negli altri casi.
Controllare i componenti frame source
In generale, una session creata tramite il menu EasyAR di solito aggiunge automaticamente ARCoreARFoundationFrameSource e ARKitARFoundationFrameSource (escluse alcune funzioni come image tracking che non richiedono SLAM).

Importante
ARCoreARFoundationFrameSource e ARKitARFoundationFrameSource sono frame source forniti da EasyAR per abilitare le funzioni AR Foundation sui dispositivi che supportano AR Foundation. Se la session nella scene non contiene questi frame source, le funzioni AR Foundation non possono essere abilitate.
Se la session nella scene non contiene questi frame source, è possibile aggiungerli manualmente tramite menu.

Per funzionare su telefoni che non supportano AR Foundation, bisogna anche assicurarsi che la session contenga frame source diversi da AR Foundation. Un ARSession tipico dovrebbe essere simile a questo,

Consiglio
È possibile ordinare i frame source in base alle esigenze effettive. Durante runtime dell'app, la session seleziona il primo frame source disponibile secondo l'ordine transform in base al supporto del dispositivo.
Abilitare AR Foundation solo quando necessario
Poiché l'implementazione sottostante di AR Foundation sui telefoni è ARCore e ARKit, può essere usato solo su dispositivi limitati, specialmente non su molti telefoni Android cinesi domestici. Perciò di solito si consiglia di abilitare AR Foundation e gli script delle funzioni correlate solo sui dispositivi supportati.
EasyAR può completare automaticamente queste operazioni. Questa funzione può essere abilitata o disabilitata tramite l'opzione Unity XR > Unity XR Auto Switch in Project Settings > EasyAR > Sense. Per i dettagli, vedere commutazione automatica degli oggetti Unity XR.
Scene che mantengono la compatibilità AR Foundation
Una scene a cui sono stati aggiunti correttamente i componenti AR Foundation può funzionare normalmente sia con il package AR Foundation installato sia senza.
Quando AR Foundation non è installato, le funzioni AR Foundation e i frame source corrispondenti non sono disponibili, e alcuni script nella scene risulteranno mancanti; questa è una situazione normale.

Consiglio
Molti sample possono funzionare normalmente sia con il package AR Foundation installato sia senza. Se è necessario abilitare il supporto AR Foundation in questi sample, basta abilitare AR Foundation nel progetto EasyAR.
Passaggi successivi
- Scoprire come cambiare automaticamente AR Foundation in base al supporto del dispositivo
Argomenti correlati
- Componenti AR correlati menzionati nel testo:
- AR Foundation fornisce capacità di motion tracking su alcuni dispositivi. Per la relazione tra motion tracking e le varie funzioni EasyAR, fare riferimento a:
- Per maggiori informazioni sulla configurazione scene di AR Foundation, leggere la documentazione ufficiale AR Foundation, scegliendo prima la versione della documentazione corrispondente: