Class FrameSource
- Espace de noms
- easyar
- Assembly
- EasyAR.Sense.dll
Une source de trame (frame source) représente une source de données d'entrée pour les trames, fournissant des données d'image ou à la fois des données d'image et des données de mouvement.
Vous pouvez implémenter une caméra personnalisée en héritant de certains sous-types de FrameSource, mais vous ne pouvez pas hériter directement de FrameSource. Une caméra personnalisée exprime généralement un nouveau périphérique ou un nouveau mode d'entrée de données.
Lorsque vous utilisez des produits d'essai (licence personnelle, licence XR d'essai ou service Mega d'essai, etc.) sur une caméra personnalisée ou un casque de RA, EasyAR Sense cessera de répondre après un temps fixe et limité après chaque démarrage.
[DisallowMultipleComponent]
public abstract class FrameSource : MonoBehaviour
- Héritage
-
FrameSource
- Dérivé
Propriétés
AvailableCenterMode
Uniquement fourni lors de la création d'une nouvelle source d'images. Il ne sera accessible que pendant le processus Assemble().
Tous les modes de centrage disponibles.
protected virtual IReadOnlyList<ARSession.ARCenterMode> AvailableCenterMode { get; }
Camera
Fourni uniquement lors de la création d'une nouvelle frame source. Il ne sera accessible que pendant le processus de Assemble().
Sur ordinateur de bureau ou téléphone mobile, cette caméra représente le u:aUnityEngine.Camera correspondant dans le monde virtuel à l'appareil photo physique dans l'environnement réel. Sa matrice de projection et sa position correspondront à celles de la caméra réelle, contrôlée par EasyAR. Sur un casque de réalité virtuelle (HMD), cette caméra sert uniquement à afficher du texte de diagnostic devant les yeux, et n'est pas utilisée pour le rendu visuel. La caméra n'est pas non plus contrôlée par EasyAR.
protected abstract Camera Camera { get; }
CameraFrameStarted
À fournir uniquement lors de la création d'une nouvelle source d'images. Elle sera accessible pendant tout le cycle de vie du ARSession.
Si l'image de la caméra est entrée.
protected abstract bool CameraFrameStarted { get; }
DeviceCameras
Fourni uniquement lors de la création d'une nouvelle source d'images. Il sera consulté lorsque CameraFrameStarted est vrai.
Caméra(s) de l'appareil qui fournit(ssent) les données d'images de caméra. Si les données d'images proviennent de plusieurs caméras, la liste doit inclure toutes les caméras.
Garantit que la valeur est correcte lorsque CameraFrameStarted est vrai.
protected abstract List<FrameSourceCamera> DeviceCameras { get; }
Display
Fourni uniquement lors de la création d'une nouvelle frame source. Il ne sera accessible que pendant le processus de Assemble().
Fournit les informations du système d'affichage. Vous pouvez utiliser DefaultSystemDisplay ou DefaultHMDDisplay pour obtenir les informations d'affichage par défaut.
protected abstract IDisplay Display { get; }
IsAvailable
Fourni uniquement lors de la création d'une nouvelle source de frame. Il n'est accessible que pendant le processus de Assemble().
Indique si la source de frame actuelle est disponible.
Si la valeur est nulle, CheckAvailability() sera appelée, et la valeur sera récupérée après la fin de la Coroutine.
protected abstract Optional<bool> IsAvailable { get; }
IsCameraUnderControl
À fournir uniquement lors de la création d'une nouvelle frame source. Il ne sera accessible que pendant le processus de Assemble().
Lorsque la valeur est true, la session met à jour le transform de la caméra et effectue le rendu de l'image de la caméra.
Lors de la création d'une extension de casque, cela doit être false. Vous devez avoir un contrôle total sur la caméra 3D dans la scène. Vous devez gérer le rendu de la caméra, en particulier en mode VST.
protected abstract bool IsCameraUnderControl { get; }
IsHMD
À fournir uniquement lors de la création d'une nouvelle frame source. Elle ne sera accessible que durant le processus Assemble().
Indique si la frame source actuelle est un casque de réalité virtuelle. Si c'est un casque, les informations de diagnostic s'afficheront sur un panneau 3D devant la caméra.
Certains frame filters fonctionnent différemment selon les appareils.
protected abstract bool IsHMD { get; }
Méthodes
CheckAvailability()
Fourni uniquement lors de la création d'une nouvelle source d'images. Il ne sera accessible que pendant le processus de Assemble().
IsAvailable égal à null, utilisé pour vérifier si la source d'images est disponible Coroutine.
protected virtual IEnumerator CheckAvailability()
OnSessionStart(ARSession)
À fournir uniquement lors de la création d'une nouvelle source de trames. On y accède uniquement pendant le processus de StartSession().
Traite le démarrage de la session si cette source de trames est déjà assemblée dans Assembly. Cette méthode est conçue pour une initialisation différée, où vous pouvez effectuer des travaux d'initialisation spécifiques à la RA.
protected abstract void OnSessionStart(ARSession session)
Paramètres
session
OnSessionStop()
Fourni uniquement lors de la création d'une nouvelle source d'images. Elle sera consultée pendant StopSession(bool) ou d'autres processus d'arrêt/endommagement de session.
Traite l'arrêt de la session, si cette source d'images a été intégrée à Assembly. Vous pouvez utiliser cette méthode pour détruire les ressources créées par StartSession() et pendant l'exécution de la session, et restaurer l'état interne. L'appel de cette méthode est garanti avant la destruction de la session. Si la source d'images est détruite avant la session, elle ne sera pas appelée et la session sera endommagée.
protected abstract void OnSessionStop()