Share via


Sistema di livelli acrilici - MRTK3

Attenzione

Alcune funzionalità del team MRTK sembrano avere un sacco di valore iniziale anche se non sono stati completamente compilati i dettagli. Per questi tipi di funzionalità, vogliamo che la community ottenga la possibilità di vederli presto. Poiché sono all'inizio del ciclo, le etichetteremo come sperimentali per indicare che sono ancora in evoluzione e soggette a cambiamenti nel tempo.

Questa caratteristica sperimentale consente alle superfici di apparire traslucenti (come il vetro gelato). Gli asset acrilici possono essere usati per creare un effetto di sfondo sfocato sui backplates simili al materiale acrilico in Windows. Questi asset richiedono l'uso della pipeline di rendering universale.

Esempio di sistema livello acrilico

Importante

Questa funzionalità richiede la pipeline di rendering universale 10.6.0 o successiva e potrebbe essere costosa nei dispositivi mobili.

Utilizzo

Un determinato livello acrilico deve avere un proprio livello di rendering (o set di livelli) contenente il backplate e tutti gli oggetti dell'interfaccia utente per tale livello. Assegnare i livelli di rendering alla proprietà Rendering Layer del livello acrilico nel gestore del livello acrilico. I livelli vengono usati per escludere elementi di primo piano dalla mappa di sfondo sfocata.

Il sistema di livello acrilico è costituito dai componenti seguenti:

Helper acrilico

Assegnare questo componente (script) a ogni backplate che usa un materiale acrilico. Questo componente notifica al gestore del livello acrilico ogni volta che l'oggetto è abilitato o disabilitato. Lo shader acrilico supporta attualmente due livelli (0 e 1).

Gestione livello acrilico

Gestisce la creazione e l'aggiornamento delle mappe di sfondo sfocate usate dai materiali acrilici. Il manager lavora con il componente Helper acrilico per limitare l'elaborazione aggiuntiva eseguita a quei livelli acrilici attualmente usati nella scena. Una scena deve avere una copia del gestore.

Il manager supporta due metodi di acquisizione di un'immagine di sfondo:

  1. Copia framebuffer: registra una copia downsampled del framebuffer corrente durante il rendering urP usando un set di passaggi delle funzionalità del renderer
  2. Rendering della trama: esegue il rendering di un'immagine con risoluzione ridotta separata degli oggetti di sfondo

L'immagine acquisita viene quindi sfocata in base alle impostazioni di sfocatura per livello. Se la mappa del blur non viene aggiornata ogni cornice, il processo di sfocatura viene applicato durante il frame successivo dopo l'acquisizione.

È anche possibile combinare gradualmente una mappa aggiornata su più fotogrammi (se la mappa non viene aggiornata ogni cornice).

Uso avanzato

Opzioni dell'editor

Usare l'opzione Mantieni nell'editor nel componente Acrilico Layer Manager per lasciare abilitati i livelli acrilici quando l'app non è in riproduzione.

Nota

Questa opzione funziona solo con il metodo di acquisizione Copy Framebuffer.

Impostazioni specifiche della piattaforma

Quando si compila per Quest con multiview stereo, usare quanto segue nel componente Acrilico Layer Manager:

Metodo Capture = Metodo di filtro Copy Framebuffer = Kawase Update Period = 1

Esempio

Vedere l'esempio acrilico (sperimentale) per le dimostrazioni del sistema di strato acrilico.

Altre letture

Materiale acrilico in WindowsUn'analisi degli algoritmi di sfocatura delle immagini basate su GPU in tempo reale