APIs e Microsserviços

7 dez, 2017

Começando com a API Poly

Publicidade

Artigo de Bruno Oliveira, publicado originalmente pelo Google Developers Blog. A tradução foi feita pela Redação iMasters com autorização.

***

Como desenvolvedores, todos sabemos que ter os ativos certos é crucial para o sucesso de uma aplicação 3D, especialmente com aplicativos de realidade aumentada e de realidade virtual. Desde que lançamos a Poly há algumas semanas, muitos desenvolvedores estão baixando e usando modelos Poly em seus aplicativos e jogos.

Para tornar esse processo mais fácil e mais poderoso, lançamos no final de novembro a API Poly, que permite que as aplicações busquem e baixem dinamicamente recursos 3D em tempo de edição e execução.

A API é baseada em REST, e por isso é intrinsecamente cross-platform. Para ajudá-lo a fazer chamadas de API e converter os resultados em objetos que você pode exibir em seu app, fornecemos vários kits de ferramentas e amostras para alguns motores e plataformas de jogos comuns.

Mesmo que o seu motor ou plataforma não esteja incluído nessa lista, lembre-se de que a API é baseada em HTTP, o que significa que você pode chamá-la de praticamente qualquer dispositivo conectado à Internet.

Aqui estão algumas das coisas que a API permite que você faça:

  • Listar recursos, com muitos filtros possíveis:
    • palavra-chave
    • categoria (“Animaiss”, “Tecnologia”, “Transporte” etc.)
    • tipo de ativos (Blocks, Tilt Brush, etc.)
    • complexidade (baixa, média, alta complexidade)
    • curadoria (apenas ativos com curadoria ou todos os ativos)
  • Obter um ativo específico por ID
  • Obter os próprios ativos do usuário
  • Obter os recursos curtidos do usuário
  • Baixar ativos. Os formatos variam de acordo com o tipo de ativo (OBJ, GLTF1, GLTF2).
  • Baixar arquivos de material e texturas para ativos.
  • Obter metadados de ativos (autor, título, descrição, licença, tempo de criação etc.)
  • Obter miniaturas para ativos

Poly Toolkit for Unity Developers

Se você estiver usando o Unity, oferecemos o Poly Toolkit for Unity, um plugin que inclui todas as funcionalidades necessárias para envolver automaticamente as chamadas de API e baixar e converter recursos, expondo-o através de uma simples API C#. Por exemplo, você pode buscar e importar um recurso para sua cena em tempo de execução com uma única linha de código:

PolyApi.GetAsset(ASSET_ID,
    result => { PolyApi.Import(result.Value, PolyImportOptions.Default()); });

O Poly Toolkit opcionalmente também gerencia a autenticação para que você possa listar os ativos privados do usuário logado ou os ativos que o usuário gostou no site da Poly.

Além disso, o Poly Toolkit for Unity vem com uma janela de editor, na qual você pode procurar e importar ativos da Poly em sua cena do Unity diretamente do editor.

Poly Toolkit for Unreal Developers

Se você estiver usando o Unreal, também oferecemos o Poly Toolkit for Unreal, que envolve a API e executa download automático e conversão de modelos OBJs e Blocks de Poly. Ele permite que você pesquise por ativos e filtre resultados, baixe e importe ativos como atores Unreal prontos para usar, que você pode utilizar em seu jogo.

Créditos: Piano, por Bruno Oliveira

Como usar a API Poly com Android, web ou iOS

Não está usando um motor de jogo? Sem problemas! Se você estiver desenvolvendo para Android, confira nosso código de exemplo do Android, que inclui uma amostra básica sem dependências externas e também uma amostra que ensina como usar a API Poly em conjunto com ARCore. As amostras incluem:

  • Conexões HTTP assíncronas à API Poly.
  • Download assíncrono de arquivos de ativos.
  • Conversão de arquivos OBJ e MTL para VBOs e IBOs compatíveis com OpenGL.
  • Exemplos de shaders básicos.
  • Integração com ARCore (baixa dinamicamente um objeto de Poly e permite que o usuário o coloque na cena).
Créditos: Cactus wren por Poly, Google

Se você é um desenvolvedor iOS, também temos duas amostras para você: uma usando SceneKit e outra usando ARKit, mostrando como criar um aplicativo iOS que baixa e importa modelos da Poly. Isso inclui toda a lógica necessária para abrir uma conexão HTTP, fazer as solicitações de API, analisar os resultados, criar os objetos 3D a partir dos dados e colocá-los na cena.

Para desenvolvedores web, também oferecemos um exemplo completo de WebGL usando Three.js, mostrando como obter e exibir um determinado ativo ou realizar pesquisas. Há também uma amostra que ensina como importar e exibir esboços de Tilt Brush.

Créditos: Forest, por Alex “SAFFY” Safayan

Independentemente do motor ou da plataforma que você estiver usando, esperamos que a API Poly ajude a trazer ativos de alta qualidade para seu aplicativo e o ajude a aumentar o engajamento com seus usuários! Você pode encontrar mais informações sobre a API Poly e nossos kits de ferramentas e amostras no nosso site de desenvolvedores.

***

Este artigo é do Google Developers Blog. Ele foi escrito por Bruno Oliveira. A tradução foi feita pela Redação iMasters com autorização. Você pode acessar o original em: https://developers.googleblog.com/2017/11/getting-started-with-poly-api.html