Visualização de cenário

classe pública ArSceneView

Uma SurfaceView que se integra ao ARCore e renderiza uma cena.

Constantes herdadas

Campos herdados

Construtores públicos

ArSceneView (contexto de contexto)
Cria um objeto ArSceneView e o vincula a um contexto do Android.
ArSceneView(contexto de contexto, atributos de AttributeSet)
Cria um objeto ArSceneView e o vincula a um contexto do Android.

Métodos públicos

Quadro
getArFrame ()
Retorna o frame do ARCore mais recente, se ele estiver disponível.
int
getCameraStreamRenderPriority()
Recebe a prioridade de renderização que controla a ordem de renderização do fluxo da câmera.
PlaneRenderer (link em inglês)
getPlaneRenderer().
Retorna o PlaneRenderer, usado para controlar a visualização do plano.
Sessão
getSession()
Retorna a sessão do ARCore usada por essa visualização.
boolean
is EnvironmentalHdrLightingAvailable()
Retorna verdadeiro se a câmera do ARCore estiver configurada com Config.LightEstimationMode.ENVIRONMENTAL_HDR.
boolean
isLightDirectionUpdateEnabled()
Verifica se a luz solar está sendo atualizada a cada frame com base na estimativa de iluminação HDR ambiental.
boolean
void
pause()
Pausa a linha de execução de renderização e a sessão do ARCore.
CompletableFuture<Void>
pauseAsync(executor do Executor)
Chamada sem bloqueio para pausar a linha de execução de renderização e a sessão do ARCore.
void
retomada()
Retoma a linha de execução de renderização e a sessão do ARCore.
CompletableFuture<Void>
ResumeAsync(Executor do Executor)
Chamada sem bloqueio para retomar a linha de execução de renderização e a sessão do ARCore em segundo plano

Ele precisa ser chamado no onResume().

void
setCameraStreamRenderPriority(prioridade int)
Defina a prioridade de renderização para controlar a ordem de renderização do fluxo da câmera.
void
setLightDirectionUpdateEnabled (booleano isLightDirectionUpdateEnabled)
Define se a direção solar solar gerada pela iluminação ambiental HDR precisa ser atualizada a cada frame.
void
setLightEstimationEnabled (ativado por booleanos)
Ative a estimativa de luz com base no feed da câmera.
void
setupSession(sessão)
Configurar a visualização com uma sessão de RA.

Métodos herdados

Construtores públicos

público ArSceneView (Contexto)

Cria um objeto ArSceneView e o vincula a um contexto do Android.

Para que a renderização funcione corretamente, é preciso chamar setupSession(Session).

Parâmetros
contexto o contexto do Android a ser usado

público ArSceneView (contexto Context, AttributeSet atributos)

Cria um objeto ArSceneView e o vincula a um contexto do Android.

Para que a renderização funcione corretamente, é preciso chamar setupSession(Session).

Parâmetros
contexto o contexto do Android a ser usado
attrs o AttributeSet do Android para associação
Ver também

Métodos públicos

Frame público getArFrame ()

Retorna o frame do ARCore mais recente, se ele estiver disponível. O frame é atualizado no início de cada frame de desenho. Os autores da chamada desse método não devem manter uma referência ao valor de retorno, já que será inválido usar o frame do ARCore a partir do próximo frame.

int público getCameraStreamRenderPriority ()

Recebe a prioridade de renderização que controla a ordem de renderização do fluxo da câmera. A prioridade está entre um intervalo de 0 (renderizado primeiro) e 7 (renderizado por último).

O valor padrão é 7, que força o stream da câmera a ser renderizado por último. Essa opção é melhor para desempenho porque impede o overdraw. No entanto, ao usar um material como um oclusor (por exemplo, na amostra de rostos aumentados), isso precisa ser mudado. Caso contrário, o oclusor ocultará o fluxo da câmera, e o preto será renderizado.

público PlaneRenderer getPlaneRenderer ()

Retorna o PlaneRenderer, usado para controlar a visualização do plano.

sessão getSession ()

Retorna a sessão do ARCore usada por essa visualização.

booleano booleano is EnvironmentalHdrLightingAvailable ()

Retorna verdadeiro se a câmera do ARCore estiver configurada com Config.LightEstimationMode.ENVIRONMENTAL_HDR. Quando o modo de iluminação HDR de ambiente está ativado, as estimativas de luz resultantes são aplicadas à cena.

Retorna
  • "true" se a iluminação HDR estiver ativada no formato de cena porque a estimativa de iluminação HDR do ARCore está ativada.

booleano público isLightDirectionUpdateEnabled ()

Verifica se a luz solar está sendo atualizada a cada frame com base na estimativa de iluminação HDR ambiental.

Retorna
  • "true" se a direção da luz solar for atualizada a cada frame. Caso contrário, "false".

booleano booleano isLightEstimationEnabled ()

Retorna
  • retorna verdadeiro se a estimativa de luz estiver ativada.

public void pause ()

Pausa a linha de execução de renderização e a sessão do ARCore.

Ele precisa ser chamado no onPause().

public CompletableFuture<Void> pauseAsync (Executor do executor)

Chamada sem bloqueio para pausar a linha de execução de renderização e a sessão do ARCore.

Ele deve ser chamado em onPause().

Se pauseAsync for chamada enquanto outra pausa ou retomada estiver em andamento, a pausa será enfileirada e acontecerá após a conclusão da operação atual.

Parâmetros
executor
Retorna
  • Uma CompletableFuture concluída na linha de execução principal na pausa foi concluída. O futuro será concluído se a retomada não puder ser feita.

public void retomar ()

Retoma a linha de execução de renderização e a sessão do ARCore.

Ele precisa ser chamado no onResume().

Gera
CameraNotAvailableException se não for possível abrir a câmera

public CompletableFuture<Void> ResumeAsync (Executor executor)

Chamada sem bloqueio para retomar a linha de execução de renderização e a sessão do ARCore em segundo plano

Ele precisa ser chamado no onResume().

Se for chamado enquanto outra pausa ou retomada estiver em andamento, a retomada será enfileirada e ocorrerá após a conclusão da operação atual.

Parâmetros
executor
Retorna
  • Uma CompletableFuture é concluída na linha de execução principal assim que a retomada é concluída. O futuro será concluído de forma excepcional se a retomada não puder ser feita.

public void setCameraStreamRenderPriority (int prioritário)

Defina a prioridade de renderização para controlar a ordem de renderização do fluxo da câmera. A prioridade está entre um intervalo de 0 (renderizado primeiro) e 7 (renderizado por último).

O valor padrão é 7, que força o stream da câmera a ser renderizado por último. Essa opção é melhor para desempenho porque impede o overdraw. No entanto, ao usar um material como um oclusor (por exemplo, na amostra de rostos aumentados), isso precisa ser mudado. Caso contrário, o oclusor ocultará o fluxo da câmera, e o preto será renderizado.

Parâmetros
prioridade

public void setLightDirectionUpdateEnabled (boolean isLightDirectionUpdateEnabled)

Define se a direção solar solar gerada pela iluminação ambiental HDR precisa ser atualizada a cada frame. Se for falso, a direção da luz será atualizada uma única vez e não mudará mais.

Isso pode ser usado para desativar as atualizações de rotas de sombras quando elas distraem ou não estão interessadas.

O estado padrão é "true", com a luz do sol sendo atualizada a cada frame.

Parâmetros
IsLightDirectionUpdateEnabled

void void setLightEstimationEnabled (booleano ativado)

Ative a estimativa de luz com base no feed da câmera. A cor e a intensidade da luz indireta do sol são moduladas por valores fornecidos pela estimativa de luz do ARCore' Os objetos Lit na cena serão afetados.

Parâmetros
ativar definida como "true" para ativar a estimativa de luz ou "false" para usar a estimativa padrão, que é uma intensidade de pixel de 1,0 e valor de correção de cor de branco (1,0, 1,0, 1,0).

void null setupSession (Sessão sessão)

Configurar a visualização com uma sessão de RA. Esse método precisa ser chamado uma vez para fornecer a sessão do ARCore. A sessão é necessária para que qualquer renderização ocorra.

Espera-se que a sessão seja configurada com o modo de atualização LATEST_CAMERA_IMAGE. Sem essa configuração, a atualização da sessão do ARCore pode bloquear a linha de execução de IU e prejudicar a experiência.

Parâmetros
seção a sessão do ARCore a ser usada para esta visualização