Class AREngineFrameSource
- Espaço de nomes
- easyar
- Assembly
- EasyAR.Sense.dll
Conecte a saída do dispositivo de câmera AREngine à entrada de fonte de quadro personalizada do EasyAR na cena. Fornece suporte para Huawei AR Engine através da funcionalidade de câmera personalizada do EasyAR Sense.
Esta fonte de quadro é um dispositivo de rastreamento de movimento que produz dados de movimento na ARSession.
Esta fonte de quadro não utiliza o ``Huawei AR Engine Unity SDK`` e não precisa ser adicionada.
public class AREngineFrameSource : FrameSource
- Herança
-
AREngineFrameSource
- Membros herdados
Campos
DesiredFocusMode
Modo de foco desejado. Só é efetivo se modificado antes do evento DeviceOpened ou OnEnable.
Nota: Devido a limitações de hardware ou sistema, a alternância de foco pode não funcionar em alguns dispositivos.
public AREngineCameraDeviceFocusMode DesiredFocusMode
Propriedades
Camera
Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante o processo Assemble().
Em dispositivos desktop ou móveis, esta câmera representa o Camera correspondente no mundo virtual ao dispositivo de câmera real. Sua matriz de projeção e posição corresponderão à câmera real, controlada pelo EasyAR. Em headsets, esta câmera é usada apenas para exibir texto de diagnóstico diante dos olhos, não para renderizar a cena, e não é controlada pelo EasyAR.
protected override Camera Camera { get; }
CameraCandidate
Alternativa para Camera, só é válida quando a Unity XR Origin não é usada. Se não definido, usará Camera.main.
public Camera CameraCandidate { get; set; }
CameraFrameStarted
Fornecido apenas ao criar uma nova fonte de quadro. Será 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 quadro. Será acessado quando CameraFrameStarted for verdadeiro.
Fornece a(s) câmera(s) do dispositivo que fornecem dados de quadro. Se os dados vierem de múltiplas câmeras, a lista deve conter todas.
Garanta que o valor esteja correto quando CameraFrameStarted for verdadeiro.
protected override List<FrameSourceCamera> DeviceCameras { get; }
Display
Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante o processo Assemble().
Fornece informações do sistema de exibição. Pode usar DefaultSystemDisplay ou DefaultHMDDisplay para obter informações de exibição padrão.
protected override IDisplay Display { get; }
FrameRateRange
Intervalo de taxas de quadro. Disponível apenas quando Opened for verdadeiro.
public Vector2 FrameRateRange { get; }
IsAvailable
Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante o processo Assemble().
Se esta fonte de quadro está disponível.
Se o valor for nulo, 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 quadro. Só é acessado durante o processo Assemble().
Quando verdadeiro, a sessão atualizará o transform da câmera e renderizará a imagem da câmera.
Ao criar uma extensão para headset, deve ser falso. Você deve ter controle total sobre a câmera 3D na cena e lidar com sua renderização, especialmente no modo VST.
protected override bool IsCameraUnderControl { get; }
IsHMD
Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante o processo Assemble().
Se esta fonte de quadro é para um headset. Se for um headset, informações de diagnóstico serão exibidas num painel 3D à frente da câmera.
Alguns filtros de quadro operam de forma diferente em dispositivos headsets.
protected override bool IsHMD { get; }
Opened
Se a câmera está aberta.
public bool Opened { get; }
Size
Tamanho da imagem atual. Disponível apenas quando Opened for verdadeiro.
public Optional<Vector2Int> Size { get; }
Métodos
Close()
Fecha o dispositivo.
public void Close()
OnSessionStart(ARSession)
Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante o processo StartSession().
Lida com a inicialização da sessão, se esta fonte de quadro foi montada na Assembly. Este método é projetado para inicialização tardia, permitindo 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 quadro. Será 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 quadro foi montada na Assembly. Use este método para destruir recursos criados durante StartSession() e na execução da sessão, e restaurar o estado interno. É garantido que este método será chamado antes da destruição da sessão. Se a fonte de quadro for destruída antes da sessão, este método não será chamado e a sessão ficará corrompida.
protected override void OnSessionStop()
Open()
Abre o dispositivo. Se Open() e Close() não forem chamados manualmente, o ARSession abrirá automaticamente após iniciar.
public void Open()
Eventos
DeviceClosed
Evento de fechamento do dispositivo.
public event Action DeviceClosed
DeviceOpened
Evento de abertura do dispositivo, o valor booleano indica se foi bem-sucedido.
public event Action<bool, PermissionStatus, string> DeviceOpened