Ar driven 3d rendering
O desenvolvimento de aplicativos AR requer resolver um problema fundamental: a renderização de conteúdo AR. Este artigo usará o rastreamento de imagens planas como exemplo para descrever os módulos básicos, fluxos e implementação de renderização de aplicativos AR.
Típico fluxo de aplicativo ar
Um aplicativo AR típico geralmente envolve reconhecer imagens, objetos ou cenas específicas a partir de imagens da câmera, rastrear sua posição e pose, e renderizar conteúdo virtual (modelos 3D) de acordo com essa posição e pose.
![]()
Por exemplo, a imagem acima é um aplicativo AR de rastreamento de gráficos planos
Abaixo está um diagrama esquemático do fluxo do aplicativo.
flowchart TD
CameraDevice[Camera Device]
Tracker[Tracker]
Renderer[Renderer]
CameraDevice -->|Image Frame| Tracker
Tracker -->|Image Frame + Tracked Pose| Renderer
O fluxo possui os seguintes módulos.
| Módulo | Função |
|---|---|
| Câmera física | Fornece uma sequência de quadros de imagem de entrada. Os quadros de imagem incluem a imagem, o timestamp de geração da imagem e, às vezes, também podem incluir a posição e pose da câmera no espaço |
| Rastreador | Calcula a posição e pose do alvo de rastreamento a partir do quadro de imagem. Dependendo do alvo de rastreamento, existem vários tipos de rastreadores, como rastreadores de imagem plana e rastreadores de objetos 3D |
| Renderizador | Usado para renderizar a imagem da câmera e o modelo 3D correspondente ao objeto rastreado na tela. Em alguns óculos AR, pode não renderizar a imagem da câmera, apenas o modelo 3D |
Renderização em smartphones
A renderização em smartphones é dividida em duas partes: renderização da cena da câmera e renderização de objetos virtuais.
Renderização da imagem da câmera

Ao renderizar a imagem da câmera, existem alguns parâmetros que requerem atenção.
Modo de escala
Geralmente é necessário preencher toda a tela ou uma janela com a imagem da câmera, o que pode levar a problemas de incompatibilidade entre a proporção da imagem da câmera e a da tela/janela.
Supondo que alinhemos o centro da imagem da câmera com o centro da tela/janela, mantendo a proporção inalterada, existem dois modos de escala comuns: escala uniforme e preenchimento uniforme.
Modo de escala Efeito Escala uniforme Exibe todo o conteúdo na tela, mas pode haver bordas pretas nas laterais ou superior/inferior Preenchimento uniforme Não há bordas pretas, mas parte da imagem pode ser cortada nas laterais ou superior/inferior Rotação da imagem da câmera
Em smartphones, as imagens capturadas pela câmera física geralmente são fixas em relação ao corpo do dispositivo e não mudam com a orientação de exibição da tela. No entanto, mudanças na orientação do corpo do telefone afetam nossa definição das direções superior, inferior, esquerda e direita da imagem. Durante a renderização, a orientação atual de exibição da tela também afeta a direção da imagem exibida.
Normalmente, durante a renderização, é necessário determinar um ângulo de rotação da imagem da câmera em relação à direção de exibição da tela.
Inversão da imagem da câmera
Em alguns casos, a câmera frontal é usada, e nesse momento geralmente é necessário inverter horizontalmente a imagem para que pareça um espelho.
Renderização de objetos virtuais

Para renderizar objetos virtuais em smartphones, é necessário alinhar o objeto virtual com a imagem da câmera. Isso requer que coloquemos a câmera de renderização e os objetos em um espaço virtual completamente correspondente ao espaço real, e usemos o mesmo campo de visão e proporção da câmera física para renderização. A transformação de projeção em perspectiva pela qual passam a imagem da câmera e o objeto virtual é exatamente a mesma, exceto que a maior parte da transformação da imagem da câmera ocorre na câmera física, enquanto a transformação do objeto virtual é inteiramente um processo computacional.
Renderização em headsets
A renderização em headsets apresenta algumas diferenças em relação aos smartphones e pode ser dividida em dois casos.
VST
Video See-Through refere-se à tecnologia AR em que o headset captura imagens através de uma câmera física e exibe a imagem da câmera junto com conteúdo virtual na tela do headset. Um exemplo típico é o Vision Pro. Normalmente, a matriz de projeção em perspectiva para a imagem da câmera e o conteúdo virtual é configurada pelo SDK fornecido pelo headset, sendo necessário apenas definir a posição e pose do conteúdo virtual externamente. A câmera física usada para rastreamento e a câmera que renderiza a imagem na tela podem estar em posições diferentes, sendo realizada uma transformação de coordenadas durante a renderização.
OST
Optical See-Through refere-se à tecnologia AR em que a tela do headset é transparente, exibindo apenas conteúdo virtual. Um exemplo típico é o HoloLens. Normalmente, a matriz de projeção em perspectiva para o conteúdo virtual é configurada pelo SDK fornecido pelo headset, sendo necessário apenas definir a posição e pose do conteúdo virtual externamente. A câmera física usada para rastreamento e a câmera que renderiza a imagem na tela podem estar em posições diferentes, sendo realizada uma transformação de coordenadas durante a renderização.
Guias específicos da plataforma
A renderização 3D impulsionada por AR está intimamente ligada à plataforma. Consulte os guias abaixo para desenvolvimento de acordo com sua plataforma de destino: