# Show de AR na Torre de Cantão

> Uma experiência de AR para celular em torno da Torre de Cantão, com o tema do Dia Nacional, feita como Mini-Program do WeChat com SLAM baseado em localização do EasyAR Mega. Divulgada pelo mais alto escalão da liderança da cidade e construída para aguentar, na noite de lançamento, acessos simultâneos na casa dos seis dígitos.

- URL: https://oliverz.dev/pt-br/work/guangzhou-tower-national-day-themed-ar-show
- Author: Oliver Zhang (https://oliverz.dev)
- Language: pt-BR
- Category: AR / Cultura
- Year: 2024
- Role: Único desenvolvedor
- Client: Governo de Guangzhou, China
- Agency: Chance 3D
- Stack: AR, WeChat Mini-Program, EasyAR Mega, SLAM, Location-based

## O briefing

Guangzhou queria que, no Dia Nacional, as pessoas apontassem o celular para a Torre de Cantão e vissem uma história em cinco capítulos se desenrolar sobre ela. O conceito, a narrativa e o design visual ficaram com a Chance 3D. Eu fui o único prestador técnico: captura em campo, mapeamento, runtime do mini-program, renderização de AR e a infraestrutura que precisava sobreviver à noite de lançamento.

![A camada de AR alinhada à Torre de Cantão](https://oliverz.dev/works/guangzhou-tower-national-day-themed-ar-show/image1.png?v=76631839 "Ancorar conteúdo a um marco de 600 metros, à noite, dentro do runtime do WeChat")

## Por que o WeChat complicou tudo

Fazer AR sobre um marco dentro de um Mini-Program do WeChat é brigar com a plataforma. O WeChat não expõe os hooks de WebGL e SLAM de que os runtimes de AR no navegador dependem, então a abordagem padrão não estava disponível para mim. Construí em cima do posicionamento visual baseado em localização do EasyAR Mega, condicionado ao GPS, renderizando pela própria camada do mini-program.

A alternativa óbvia era um app nativo, que é o que a maioria das experiências de AR ao ar livre em marcos desse porte usa. Não fui por esse caminho. Um app nativo coloca uma instalação entre o curioso parado ao pé da torre e a experiência, e numa noite de Dia Nacional quase ninguém passa dessa barreira. Um mini-program abre com um toque. O projeto inteiro dependia desta decisão: aceitar um caminho de engenharia mais difícil para tirar a instalação do meio.

## Mapeando uma torre de 600 metros

Fiz a captura no local, montei o mapa do EasyAR Mega e voltei várias vezes para testar se a localização se mantinha com iluminação, clima e lotação diferentes.

Um marco desse tamanho castiga qualquer suposição. Os visitantes ficam a distâncias e ângulos muito diferentes, a própria iluminação da torre muda ao longo da noite e, na noite do lançamento, a multidão tapa boa parte do que o sistema de posicionamento precisa ver. Não dá para validar isso sentado numa mesa, só com só com rodada após rodada de testes em campo.

## Preparando a noite de lançamento

A noite do Dia Nacional te dá uma única chance, na frente de centenas de milhares de pessoas e da alta liderança da cidade ao mesmo tempo. Um problema no backend não vira um bug report, vira um acontecimento público.

Planejei contando com a saturação da rede, em vez de torcer para que ela não acontecesse. Compressão agressiva dos assets, entrega por trás de uma CDN, assets de cada capítulo em streaming e ajustados para dados móveis, e caminhos de degradação que mantêm a experiência funcionando quando a rede em volta da torre cai.

Pelos números do back-office do WeChat e do EasyAR, a concorrência na noite de lançamento ficou na casa dos seis dígitos, somando sessões e interações. O secretário municipal do Partido em Guangzhou divulgou a ativação publicamente.
