<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Geckode!</provider_name><provider_url>https://www.youbiquo.eu/geckode</provider_url><author_name>Aida Garfami</author_name><author_url>https://www.youbiquo.eu/geckode/author/aida-garfami/</author_url><title>Funzionalit&#xE0; - Geckode!</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="OGOgOV6eY2"&gt;&lt;a href="https://www.youbiquo.eu/geckode/features/"&gt;Funzionalit&#xE0;&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://www.youbiquo.eu/geckode/features/embed/#?secret=OGOgOV6eY2" width="600" height="338" title="&#x201C;Funzionalit&#xE0;&#x201D; &#x2014; Geckode!" data-secret="OGOgOV6eY2" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script&gt;
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
//# sourceURL=https://www.youbiquo.eu/geckode/wp-includes/js/wp-embed.min.js
&lt;/script&gt;
</html><description>Funzionalit&#xE0; Funzionalit&#xE0; &#x2014; LeonardoXR SDK Funzionalit&#xE0; Versione 1.0.2 Dispositivo: Youbiquo Leonardo XR Base SDK: Snapdragon Spaces 1.0.4 Questa pagina documenta le funzionalit&#xE0; disponibili nell&#x2019;SDK LeonardoXR, organizzate in due sezioni: Funzionalit&#xE0; di Snapdragon Spaces &#x2014; funzionalit&#xE0; AR/XR fornite dalla piattaforma Snapdragon Spaces, accessibili tramite AR Foundation.Funzionalit&#xE0; di LeonardoXR &#x2014; funzionalit&#xE0; proprietarie specifiche di Leonardo XR. Funzionalit&#xE0; di Snapdragon Spaces Ancore locali Come abilitare Vai su Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Spatial Anchors e abilita la funzione. Negozio Spaces Anchor NOTA Guarda l&#x2019;ambiente circostante per generare una mappa di tracking migliore e ridurre i tempi di salvataggio/caricamento. Salvare pi&#xF9; anchor contemporaneamente blocca il thread principale &#x2014; utilizza la callback per salvare gli anchor successivi in modo sequenziale. namespace Qualcomm.Snapdragon.Spaces { public class SpacesAnchorStore { public void ClearStore(); public void SaveAnchor(ARAnchor anchor, string anchorName, Action&lt;bool&gt; onSavedCallback = null); public void SaveAnchorWithResult(ARAnchor anchor, string anchorName, Action&lt;SaveAnchorResult&gt; callback = null); public void DeleteSavedAnchor(string anchorName); public void LoadSavedAnchor(string anchorName, Action&lt;bool&gt; onLoadedCallback = null); public void LoadAllSavedAnchors(Action&lt;bool&gt; onLoadedCallback = null); public string[] GetSavedAnchorNames(); public string GetSavedAnchorNameFromARAnchor(ARAnchor anchor); } } Riferimento API Method Description ClearStore() Clears the local anchor storage. SaveAnchor(...) Saves an ARAnchor by name or generated hash; optional callback on completion. SaveAnchorWithResult(...) Like SaveAnchor but returns a&#xA0;SaveAnchorResult&#xA0;enum. DeleteSavedAnchor(name) Deletes a saved anchor by name. LoadSavedAnchor(name, ...) Loads an anchor from storage and attempts to localise it; fires&#xA0;anchorsChanged.added. LoadAllSavedAnchors(...) Loads all stored anchors. GetSavedAnchorNames() Returns all saved anchor names. GetSavedAnchorNameFromARAnchor(anchor) Returns the name of a saved anchor from a tracked ARAnchor, or empty string if not saved. Valori di SaveAnchorResult Value Meaning PENDING Anchor is awaiting save. SAVED Successfully saved. FAILURE_RUNTIME_ERROR Runtime error. FAILURE_STORE_NOT_LOADED Anchor Store failed to load. FAILURE_INSUFFICIENT_QUALITY Environment map quality is insufficient. Hit test Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Hit Testing. Utilizza AR Raycast Manager di AR Foundation (XRRaycastSubsystem). Supporta hit testing continuo contro piani e mesh del mondo reale. Il sistema lancia un raggio dalla camera (o da un punto specificato) e restituisce le intersezioni con le superfici rilevate. Ogni hit contiene posizione, normale e tipo di superficie (piano o mesh). List&lt;ARRaycastHit&gt; hits = new List&lt;ARRaycastHit&gt;();if (raycastManager.Raycast(screenCenter, hits, TrackableType.PlaneWithinPolygon)){Pose hitPose = hits[0].pose;// Place AR content at hitPose.position} ATTENZIONE ARRaycastHit.trackableId restituisce sempre 0-0 (problema noto). Tracciamento delle immagini Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Image Tracking. Utilizza AR Tracked Image Manager (XRImageTrackingSubsystem). Supporta librerie di immagini di riferimento statiche e modificabili (runtime). // Mutable library examplevar library = trackedImageManager.CreateRuntimeLibrary() as MutableRuntimeReferenceImageLibrary;await library.ScheduleAddImageWithValidationJob(texture, "image-name", 0.1f); // 0.1f = physical width in metrestrackedImageManager.referenceLibrary = library; Rilevamento aereo Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Plane Detection. Utilizza AR Plane Manager (XRPlaneSubsystem). L&#x2019;opzione Use Scene Understanding Backend &#xE8; abilitata di default. arPlaneManager.requestedDetectionMode = PlaneDetectionMode.Horizontal | PlaneDetectionMode.Vertical; ATTENZIONE Plane Detection entra in un loop infinito di triangolazione mesh in AR Foundation 6.0. In Unity 6 + OpenXR 1.15.1, Plane Detection non funziona nelle app Dual Render Fusion. Accesso alla cornice della fotocamera Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Camera Frame Access. Utilizza AR Camera Manager (XRCameraSubsystem). Funzionalit&#xE0; principali: Accesso ai frame raw della camera nei formati YUV (Y&#x2019;UV420sp) e YUYV / YUY2 XRCpuImage.GetPlane(int) per accesso lato CPU XRCpuImage.ConvertAsync per conversione asincrona Accesso a frame RGB accelerato via GPU per dispositivi AiO (tramite OpenGL) Recupero di extrinsics / posa del sensore tramite InputBindings NOTA Abilita Allow &#x2018;unsafe&#x2019; Code in Player Settings &gt; Android &gt; Other Settings &gt; Script Compilation quando utilizzi il sample Camera Frame Access. Disabilita AR Camera Background per evitare problemi di rendering. void OnCameraFrameReceived(ARCameraFrameEventArgs args){if (cameraManager.TryAcquireLatestCpuImage(out XRCpuImage image)){using (image){XRCpuImage.Plane yPlane = image.GetPlane(0); // Luminance plane// yPlane.data contains the raw data}}} Mesh spaziale Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Spatial Meshing. Utilizza AR Mesh Manager (XRMeshSubsystem). Il componente opzionale SpacesARMeshManagerConfig controlla le caratteristiche della mesh e gli offset di altezza della camera per TrackingOriginMode.Floor. Monitoraggio del codice QR Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; QR Code Tracking. Utilizza il componente personalizzato SpacesQrCodeManager. Supporta diverse modalit&#xE0; di tracking per controllare la frequenza di aggiornamento dell&#x2019;algoritmo. // Editor build workaround (no simulation subsystem for QR Code Tracking)bool CheckSubsystem(){#if UNITY_EDITORreturn arQrCodeManager.subsystem?.running ?? false;#elsereturn true;#endif} Tracciamento delle mani Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Hand Tracking. Il tracking delle mani &#xE8; fornito dai pacchetti plugin QCHT (Qualcomm Hand Tracking). LeonardoXR utilizza il pacchetto Unity XR Hands (v1.7.2) come livello di accesso ai dati delle articolazioni, integrato con estensioni QCHT. NOTA Per far funzionare correttamente Hand Tracking su LeonardoXR, l&#x2019;opzione Hand Tracking Subsystem deve essere attiva in All Features di OpenXR. Per l&#x2019;integrazione completa con XR Interaction Toolkit, consulta il documento Interaction Package Guides. Rendering fovetato Abilita tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; Snapdragon Spaces &gt; Foveated Rendering. Riduce il carico GPU renderizzando la periferia del campo visivo a risoluzione inferiore. Le impostazioni persistono dopo pausa e ripresa dell&#x2019;applicazione. Level Description None No reduction. Low Light reduction, imperceptible to most users. Medium Good quality/performance trade-off. High Maximum reduction; recommended only for heavily 3D content scenes. Funzionalit&#xE0; di LeonardoXR Le seguenti funzionalit&#xE0; sono specifiche di Leonardo XR e non fanno parte della piattaforma base Snapdragon Spaces. Abilitarle tramite Project Settings &gt; XR Plug-in Management &gt; OpenXR (Android) &gt; gruppo di funzionalit&#xE0; LeonardoXR. Accesso alla doppia fotocamera DOCUMENTAZIONE IN CORSO Questa funzionalit&#xE0; fornisce accesso sincronizzato ai frame di entrambe le camere Leonardo XR. Documentazione API dettagliata, configurazione ed esempi saranno disponibili in una futura release. Plugin di inferenza QNN DOCUMENTAZIONE IN CORSO Questa funzionalit&#xE0; espone le capacit&#xE0; hardware di inferenza neurale di Leonardo XR tramite il runtime Qualcomm Neural Network (QNN), consentendo l&#x2019;esecuzione di modelli AI/ML direttamente sulla NPU del dispositivo. Documentazione API dettagliata, workflow di conversione dei modelli ed esempi saranno disponibili in una futura release.</description></oembed>
