Table of Contents

Class ARCoreFrameSource

Espaço de nomes
easyar
Assembly
EasyAR.Sense.dll

Um MonoBehaviour que controla o dispositivo de câmera ARCore (easyar.ARCoreCameraDevice) na cena, fornecendo extensões de funcionalidade no ambiente Unity.

Esta fonte de quadro é um dispositivo de rastreamento de movimento que produz dados de movimento no ARSession.

public class ARCoreFrameSource : FrameSource
Herança
ARCoreFrameSource
Membros herdados

Campos

DesiredFocusMode

O modo de foco desejado. As alterações só terão efeito antes do evento DeviceOpened ou OnEnable.

Nota: Devido a limitações de hardware ou sistema, alternar o foco pode não funcionar em alguns dispositivos.

public ARCoreCameraDeviceFocusMode DesiredFocusMode

Propriedades

Camera

Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante Assemble().

Em desktops ou dispositivos móveis, esta câmera representa o Camera correspondente ao dispositivo físico no mundo virtual. Sua matriz de projeção e posição corresponderão à câmera real, controlada pelo EasyAR. Em HMDs, 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, válida apenas se a origem XR do Unity não estiver em uso. Se não definido, Camera.main será usado.

public Camera CameraCandidate { get; set; }

CameraFrameStarted

Fornecido apenas ao criar uma nova fonte de quadro. É acessado durante todo o ciclo de vida do ARSession.

Se a entrada de quadros da câmera começou.

protected override bool CameraFrameStarted { get; }

DeviceCameras

Fornecido apenas ao criar uma nova fonte de quadro. É acessado quando CameraFrameStarted for true.

Fornece a(s) câmera(s) do dispositivo que fornecem os dados de quadro da câmera. Se os dados forem fornecidos por várias câmeras, a lista deve conter todas.

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 quadro. Só é acessado durante Assemble().

Fornece informações do sistema de exibição. Use DefaultSystemDisplay ou DefaultHMDDisplay para obter as informações padrão.

protected override IDisplay Display { get; }

FrameRateRange

Intervalo da taxa de quadros. Disponível apenas quando Opened for true.

public Vector2 FrameRateRange { get; }

IsAvailable

Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante Assemble().

Se esta fonte de quadro 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 quadro. Só é acessado durante Assemble().

Quando true, a sessão atualizará o transform da câmera e renderizará a imagem da câmera.

Ao criar uma extensão para HMD, deve ser false. Você deve controlar totalmente a câmera 3D na cena. Você deve lidar com a renderização da câmera, especialmente no modo VST.

protected override bool IsCameraUnderControl { get; }

IsHMD

Fornecido apenas ao criar uma nova fonte de quadro. Só é acessado durante Assemble().

Se esta fonte de quadro é para 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 quadro funcionam de forma diferente em dispositivos HMD.

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 true.

public 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 StartSession().

Lida com o início da sessão, se esta fonte de quadro foi montada na Assembly. Destinado a inicialização tardia; você pode fazer inicializações específicas de AR aqui.

protected override void OnSessionStart(ARSession session)

Parâmetros

session

OnSessionStop()

Fornecido apenas ao criar uma nova fonte de quadro. É 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 para destruir recursos criados durante StartSession() e operação da sessão, e restaurar o estado interno. Garantido ser chamado antes da destruição da sessão. Se a fonte de quadro for destruída antes da sessão, não será chamada e a sessão será corrompida.

protected override void OnSessionStop()

Open()

Abre o dispositivo. Se Open() e Close() não forem chamados manualmente, o dispositivo será aberto automaticamente após o início do ARSession.

public void Open()

Eventos

DeviceClosed

Evento de dispositivo fechado.

public event Action DeviceClosed

DeviceOpened

Evento de dispositivo aberto. O valor bool indica sucesso.

public event Action<bool, PermissionStatus, string> DeviceOpened