Table of Contents

Class FrameSource

Spazio dei nomi
easyar
Assembly
EasyAR.Sense.dll

Una sorgente frame rappresenta l'origine dati per l'input di frame, fornendo dati immagine o sia dati immagine che dati di movimento.

Puoi implementare una fotocamera personalizzata ereditando da alcuni sottotipi di FrameSource, ma non puoi ereditare direttamente da FrameSource. Una fotocamera personalizzata tipicamente rappresenta un nuovo dispositivo o un nuovo metodo di input dati.

Quando si utilizzano prodotti di prova (licenza personal edition, licenza XR di prova o servizio Mega di prova, ecc.) su una fotocamera personalizzata o un visore, EasyAR Sense smetterà di rispondere dopo un tempo fisso e limitato da ogni avvio.

[DisallowMultipleComponent]
public abstract class FrameSource : MonoBehaviour
Ereditarietà
FrameSource
Derived

Proprietà

AvailableCenterMode

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Tutte le modalità di centro utilizzabili.

protected virtual IReadOnlyList<ARSession.ARCenterMode> AvailableCenterMode { get; }

Camera

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Su dispositivi desktop o mobili, questa fotocamera rappresenta la controparteCamera nel mondo virtuale del dispositivo fotocamera reale nell'ambiente fisico. La sua matrice di proiezione e posizione corrisponderanno alla fotocamera reale, controllata da EasyAR. Su un visore, questa fotocamera serve solo per visualizzare testo diagnostico davanti agli occhi, non per il rendering della scena; la fotocamera non è controllata da EasyAR.

protected abstract Camera Camera { get; }

CameraFrameStarted

Fornito solo alla creazione di una nuova sorgente frame. Accessibile per l'intero ciclo di vita diARSession.

Se i frame della fotocamera hanno iniziato ad essere inseriti.

protected abstract bool CameraFrameStarted { get; }

DeviceCameras

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo quandoCameraFrameStarted è true.

Fornisce la fotocamera del dispositivo che fornisce i dati del frame fotocamera. Se i dati del frame fotocamera sono forniti da più fotocamere, l'elenco deve includerle tutte.

Assicurarsi che il valore sia corretto quandoCameraFrameStarted è true.

protected abstract List<FrameSourceCamera> DeviceCameras { get; }

Display

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Fornisce le informazioni sul sistema di visualizzazione. Puoi usareDefaultSystemDisplay oDefaultHMDDisplay per ottenere le informazioni di visualizzazione predefinite.

protected abstract IDisplay Display { get; }

IsAvailable

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Se la sorgente frame corrente è disponibile.

Se il valore è null,CheckAvailability() verrà chiamato e il valore verrà ottenuto dopo il completamento diCoroutine.

protected abstract Optional<bool> IsAvailable { get; }

IsCameraUnderControl

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Quando è true, la sessione aggiorna il transform della fotocamera e renderizza l'immagine della fotocamera.

Durante la creazione di un'estensione per visore, dovrebbe essere false. Dovresti controllare completamente la fotocamera 3D nella scena. Dovresti gestire il rendering della fotocamera, specialmente in modalità VST.

protected abstract bool IsCameraUnderControl { get; }

IsHMD

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Se la sorgente frame corrente è un visore. Se è un visore, le informazioni di diagnostica verranno visualizzate su un pannello 3D davanti alla fotocamera.

Alcuni filtri frame funzionano diversamente sui dispositivi.

protected abstract bool IsHMD { get; }

Metodi

CheckAvailability()

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Coroutine utilizzato per verificare se la sorgente frame è disponibile quandoIsAvailable è null.

protected virtual IEnumerator CheckAvailability()

OnSessionStart(ARSession)

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteStartSession().

Gestisce l'avvio della sessione, se questa sorgente frame è stata assemblata inAssembly. Questo metodo è progettato per l'inizializzazione differita; puoi eseguire qui il lavoro di inizializzazione specifico per AR.

protected abstract void OnSessionStart(ARSession session)

Parametri

session

OnSessionStop()

Fornito solo alla creazione di una nuova sorgente frame. Accessibile duranteStopSession(bool) o altri processi di arresto/danneggiamento della sessione.

Gestisce l'arresto della sessione, se questa sorgente frame è stata assemblata inAssembly. Puoi usare questo metodo per distruggere le risorse create duranteStartSession() e il funzionamento della sessione, e ripristinare lo stato interno. Sarà chiamato prima della distruzione della sessione. Se la sorgente frame viene distrutta prima della sessione, non verrà chiamato e la sessione sarà danneggiata.

protected abstract void OnSessionStop()