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 durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di Assemble().
Tutte le modalità centro utilizzabili.
protected virtual IReadOnlyList<ARSession.ARCenterMode> AvailableCenterMode { get; }
Camera
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di Assemble().
Su dispositivi desktop o telefoni, questa fotocamera rappresenta la controparte nel mondo virtuale del dispositivo fotocamera reale nell'ambiente fisico, Camera. La sua matrice di proiezione e la posizione corrisponderanno alla fotocamera reale e saranno controllate da EasyAR. Su un visore, questa fotocamera è utilizzata solo per visualizzare alcune informazioni diagnostiche davanti agli occhi su un pannello 3D, non per il rendering della scena, e la fotocamera non è controllata da EasyAR.
protected abstract Camera Camera { get; }
CameraFrameStarted
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile durante l'intero ciclo di vita di ARSession.
Se l'input dei frame della fotocamera è iniziato.
protected abstract bool CameraFrameStarted { get; }
DeviceCameras
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile quando CameraFrameStarted è true.
Fornisce la fotocamera del dispositivo che fornisce i dati del frame della fotocamera. Se i dati del frame della fotocamera sono forniti da più fotocamere, l'elenco deve includerle tutte.
Assicurati che il valore sia corretto quando CameraFrameStarted è true.
protected abstract List<FrameSourceCamera> DeviceCameras { get; }
Display
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di Assemble().
Fornisce informazioni sul sistema di visualizzazione. Puoi utilizzare DefaultSystemDisplay o DefaultHMDDisplay per ottenere le informazioni di visualizzazione predefinite.
protected abstract IDisplay Display { get; }
IsAvailable
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di Assemble().
Se la sorgente frame corrente è disponibile.
Se il valore è null, verrà chiamato CheckAvailability(), e il valore verrà ottenuto dopo la fine della Coroutine.
protected abstract Optional<bool> IsAvailable { get; }
IsCameraUnderControl
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di Assemble().
Quando il valore è true, la sessione aggiornerà la transform della fotocamera e renderizzerà l'immagine della fotocamera.
Nella creazione di un'estensione per visore, dovrebbe essere false. Dovresti avere il controllo completo sulla fotocamera 3D nella scena. Dovresti gestire il rendering della fotocamera, specialmente in modalità VST.
protected abstract bool IsCameraUnderControl { get; }
IsHMD
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di Assemble().
Se la sorgente frame corrente è un visore. Se è un visore, le informazioni diagnostiche verranno visualizzate su un pannello 3D davanti alla fotocamera.
Alcuni frame filter funzionano diversamente sui dispositivi.
protected abstract bool IsHMD { get; }
Metodi
CheckAvailability()
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di Assemble().
Coroutine utilizzato per verificare se la sorgente frame è disponibile quando IsAvailable è uguale a null.
protected virtual IEnumerator CheckAvailability()
OnSessionStart(ARSession)
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile solo durante il processo di StartSession().
Gestisce l'avvio della sessione, se questa sorgente frame è stata assemblata in Assembly. Questo metodo è progettato per l'inizializzazione ritardata; puoi eseguire qui il lavoro di inizializzazione specifico per la AR.
protected abstract void OnSessionStart(ARSession session)
Parametri
session
OnSessionStop()
Fornito solo durante la creazione di una nuova sorgente frame. Sarà accessibile durante StopSession(bool) o altri processi di arresto/danneggiamento della sessione.
Gestisce l'arresto della sessione, se questa sorgente frame è stata assemblata in Assembly. Puoi utilizzare questo metodo per distruggere le risorse create durante StartSession() e durante l'esecuzione della sessione, e ripristinare lo stato interno. Questo metodo verrà chiamato con certezza prima della distruzione della sessione. Se la sorgente frame viene distrutta prima della sessione, questo metodo non verrà chiamato e la sessione verrà danneggiata.
protected abstract void OnSessionStop()