Class ARFoundationFrameSource
- Espaço de nomes
- easyar
- Assembly
- EasyAR.Sense.dll
Conecta a saída do AR Foundation à entrada do EasyAR como uma fonte de quadros personalizada na cena. Fornece suporte ao AR Foundation através da funcionalidade de câmera personalizada do EasyAR Sense.
Esta fonte de quadros é um dispositivo de rastreamento de movimento que produz dados de movimento no ARSession.
Para usar esta fonte de quadros, o ``AR Foundation`` é necessário. Você precisa configurar o AR Foundation de acordo com a documentação oficial.
public abstract class ARFoundationFrameSource : FrameSource
- Herança
-
ARFoundationFrameSource
- Derived
Propriedades
AvailableCenterMode
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de Assemble().
Todos os modos de centro que podem ser usados.
protected override IReadOnlyList<ARSession.ARCenterMode> AvailableCenterMode { get; }
Camera
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de Assemble().
Em dispositivos desktop ou móveis, esta câmera representa a correspondência virtual no mundo virtual do dispositivo de câmera físico no mundo real. Sua matriz de projeção e posição corresponderão à câmera física real e são controladas pelo EasyAR. Em HMDs, esta câmera é usada apenas para exibir informações de diagnóstico de texto à frente dos olhos, não para renderização de imagem, e não é controlada pelo EasyAR.
protected override Camera Camera { get; }
CameraFrameStarted
Fornecido apenas ao criar uma nova fonte de quadros. É acessado durante todo o ciclo de vida do ARSession.
Se os quadros da câmera começaram a ser inseridos.
protected override bool CameraFrameStarted { get; }
DeviceCameras
Fornecido apenas ao criar uma nova fonte de quadros. É acessado quando CameraFrameStarted é true.
Fornece a(s) câmera(s) do dispositivo que fornece(m) os dados dos quadros. Se os dados dos quadros forem fornecidos por múltiplas câmeras, a lista deve incluir todas elas.
Garanta que o valor esteja correto quando CameraFrameStarted for true.
protected override List<FrameSourceCamera> DeviceCameras { get; }
Display
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de Assemble().
Fornece informações do sistema de exibição. Você pode usar DefaultSystemDisplay ou DefaultHMDDisplay para obter as informações padrão de exibição.
protected override IDisplay Display { get; }
IsAvailable
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de Assemble().
Se a fonte de quadros atual está disponível.
Se o valor for null, CheckAvailability() será chamado e o valor será obtido após o término da Coroutine.
protected override Optional<bool> IsAvailable { get; }
IsCameraUnderControl
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de Assemble().
Quando o valor é true, a sessão atualiza a transformação da câmera e renderiza a imagem da câmera.
Ao criar uma extensão para head-mounted display (HMD), deve ser false. Você deve ter controle total sobre a câmera 3D na cena e lidar com a renderização da câmera, especialmente no modo video-see-through (VST).
protected override bool IsCameraUnderControl { get; }
IsHMD
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de Assemble().
Se a fonte de quadros atual é um head-mounted display (HMD). Se for um HMD, as informações de diagnóstico serão exibidas em um quadro 3D à frente da câmera.
Alguns filtros de quadros podem se comportar de forma diferente quando executados em dispositivos HMD.
protected override bool IsHMD { get; }
Métodos
CheckAvailability()
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de Assemble().
Coroutine usada para verificar se a fonte de quadros está disponível quando IsAvailable é igual a null.
protected override IEnumerator CheckAvailability()
OnSessionStart(ARSession)
Fornecido apenas ao criar uma nova fonte de quadros. Só é acessado durante o processo de StartSession().
Lida com a inicialização da sessão, se esta fonte de quadros foi montada na Assembly. Este método é projetado para inicialização tardia; você pode realizar tarefas de inicialização específicas de AR aqui.
protected override void OnSessionStart(ARSession session)
Parâmetros
session
OnSessionStop()
Fornecido apenas ao criar uma nova fonte de quadros. É acessado durante StopSession(bool) ou outros processos de parada/corrupção da sessão.
Lida com a parada da sessão, se esta fonte de quadros foi montada na Assembly. Você pode usar este método para destruir recursos criados durante StartSession() e na execução da sessão, e restaurar o estado interno. Este método é garantido de ser chamado antes da destruição da sessão. Se a fonte de quadros for destruída antes da sessão, ele não será chamado e a sessão será corrompida.
protected override void OnSessionStop()