Uso do Scene Viewer para mostrar modelos 3D interativos em RA de um app ou navegador Android

O Scene Viewer é um visualizador imersivo que oferece experiências em 3D e RA no seu site ou app Android. Ele permite aos usuários de dispositivos móveis Android visualizar, posicionar, visualizar e interagir facilmente com modelos 3D hospedados na Web no próprio ambiente.

A maioria dos navegadores Android é compatível com o Scene Viewer. O Scene Viewer foi implementado com sucesso por muitos parceiros do Google para oferecer suporte confiável a experiências 3D e RA. Ela também potencializa essas experiências para a Pesquisa Google.

A implementação é simples:

  • As experiências baseadas na Web exigem apenas links formatados corretamente em uma página da Web.

  • As experiências baseadas em aplicativos exigem a integração apenas de algumas linhas de código Java.

Requisitos de tempo de execução do Scene Viewer

Para usar a RA com o Visualizador de cenas, os usuários precisam ter:

  • Um dispositivo com suporte ao ARCore com o Android 7.0 Nougat (API de nível 24) ou mais recente.
  • Uma versão atualizada (recente) do Google Play Services para RA. Esse serviço é instalado automaticamente e atualizado na grande maioria dos dispositivos com suporte ao ARCore.
  • Uma versão atualizada do Google app. Este aplicativo vem pré-instalado e também é atualizado automaticamente na grande maioria dos dispositivos compatíveis com o ARCore.

Para casos em que o Google Play Services para RA ou o Google app não está presente ou as versões instaladas são muito antigas, é possível especificar um URL substituto que inicie uma experiência alternativa, por exemplo, uma página da Web, uma mensagem de erro ou uma experiência substituta criada por você.

Casos de uso com suporte

Caso de uso pretendido Aplicativo recomendado Vantagens
Com um botão ou link em um site ou app Android, inicie uma visualização nativa em RA de um modelo 3D.

Se o Google Play Services para RA não estiver presente no dispositivo, volte para mostrar o modelo em um modo 3D com tecnologia do Scene Viewer.
Inicie o Scene Viewer usando uma intent explícita para o pacote da Pesquisa Google e escolha uma configuração mode adequada para mostrar o modelo 3D.
  • ar_preferred: sempre começa em um visualizador de RA, e os usuários podem alternar manualmente para um visualizador em 3D. Se o Google Play Services para RA não estiver presente, voltará a iniciar no visualizador em 3D.
  • 3d_preferred: sempre começa em um visualizador em 3D, e os usuários podem alternar manualmente para um visualizador de RA. Se o Google Play Services para RA não estiver presente, os usuários não poderão sair do visualizador em 3D.
  • 3d_only: sempre é exibido apenas em um visualizador em 3D, sem que os usuários possam alternar para um visualizador de RA.
  • Ofereça suporte à maior variedade possível de dispositivos.
  • Retorna automaticamente ao modo 3D nativo do Scene Viewer para casos de uso que não sejam de RA.
Com um botão ou link de um site ou app Android, inicie uma visualização em RA nativa de um modelo 3D.

Se o Google Play Services para RA não estiver presente no dispositivo, controle o comportamento de substituição.
Inicie o Scene Viewer usando uma intent explícita do Google Play Services para RA (ARCore) e escolha uma configuração mode adequada para mostrar o modelo 3D.
  • ar_preferred: sempre começa no visualizador de RA, e os usuários podem alternar manualmente para um visualizador em 3D. Se o Google Play Services para RA não estiver presente, o Scene Viewer vai retornar ao comportamento que você configurou.
  • ar_only: sempre é exibido apenas no visualizador de RA, sem a possibilidade de alternar para um visualizador em 3D. Se o Google Play Services para RA não estiver presente, o comportamento que você configurou será retornado. Por exemplo, você pode iniciar sua própria experiência 3D em tela cheia ou mostrar uma mensagem de erro amigável indicando que o dispositivo do usuário ainda não é compatível com recursos de RA.
Use seu próprio visualizador de modelos 3D ou forneça outra resposta substituta do seu projeto para casos de uso que não sejam de RA.
Hospede uma visualização inline de um modelo 3D no seu site e permita que o usuário entre manualmente em um modo de RA nativo de tela cheia. Use o <model-viewer> ou qualquer outro visualizador em 3D baseado na Web para iniciar o Scene Viewer exibindo o modelo 3D de forma nativa em RA.
  • Inicie o Visualizador de cenas de forma nativa em RA diretamente de um modelo 3D incorporado a uma página da Web.
  • Ofereça aos usuários uma experiência 3D em uma plataforma que você tem e controla, com a opção de fazer a transição gradual deles para uma experiência de RA mais imersiva quando entender a intenção deles.

Iniciar o Scene Viewer usando uma intent explícita (3D ou RA)

Para oferecer suporte à maior variedade de dispositivos Android, use uma intent explícita do Android para iniciar o Scene Viewer. A intent explícita pode ser acionada em uma página HTML ou em um app Android nativo. A intent será processada pelo app Google que vem pré-instalado em dispositivos Android compatíveis com ARCore.

Dependendo dos parâmetros de intent configurados e dos recursos do dispositivo, os modelos 3D interativos podem ser colocados no ambiente do usuário ou voltar a exibi-los em um visualizador em 3D.

  • Se o Google Play Services para RA estiver presente no dispositivo e atualizado, o Visualizador de cenas vai mostrar o modelo em uma visualização nativa de RA ou em 3D.

  • Se o Google Play Services para RA não estiver presente ou não estiver atualizado, o Visualizador de cenas volta a exibir o modelo em uma visualização 3D.

  • Se não for possível mostrar um modelo 3D, por exemplo, porque o app Google não está instalado ou é uma versão antiga, o parâmetro S.browser_fallback_url será usado para exibir uma página da Web substituta.

Iniciar o Scene Viewer no HTML ou Java

HTML

Para acionar a intent explícita do HTML, use a seguinte sintaxe:

<a href="intent://arvr.google.com/scene-viewer/1.0?file=https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf#Intent;scheme=https;package=com.google.android.googlequicksearchbox;action=android.intent.action.VIEW;S.browser_fallback_url=https://developers.google.com/ar;end;">Avocado</a>

Java

Para acionar a intent explícita do Java, use o seguinte código:

Intent sceneViewerIntent = new Intent(Intent.ACTION_VIEW);
sceneViewerIntent.setData(Uri.parse("https://arvr.google.com/scene-viewer/1.0?file=https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf"));
sceneViewerIntent.setPackage("com.google.android.googlequicksearchbox");
startActivity(sceneViewerIntent);

Controle de versão da intent

A versão da intent é indicada pelo número da versão após arvr.google.com/scene-viewer. Por exemplo, a versão inicial usou a versão 1.0. Quando recursos mais recentes do Scene Viewer forem necessários, você poderá iniciá-lo com uma versão de intent mais recente correspondente aos recursos necessários.

A versão 1.1 da intent adicionou suporte a links intent://, que podem ser iniciados diretamente em um app Android em vez de em um URL. Se você quiser que o Scene Viewer garantir que essa funcionalidade esteja disponível quando iniciado e falhar ao iniciar, abra o visualizador de cena com uma intent para intent://arvr.google.com/scene-viewer/1.1.

Parâmetros de intent compatíveis

Os parâmetros a seguir são compatíveis com uma intent explícita para o pacote da Pesquisa Google.

Parâmetro de intent Valores permitidos Comentários
file (obrigatório) Um URL válido Esse URL especifica o arquivo glTF ou glb que precisa ser carregado no Scene Viewer. Precisa ter escape de URL.
S.browser_fallback_url (obrigatório para intents baseadas em HTML) Um URL válido Este é um recurso do Google Chrome compatível somente com implementações baseadas na Web. Quando o Google app não está presente no dispositivo, este é o URL que o Google Chrome acessa.
mode (opcional) 3d_preferred (padrão) O Scene Viewer exibe o modelo no modo 3D com um botão View in your space.



Se o Google Play Services para RA não estiver presente no dispositivo, o botão Ver no seu espaço ficará oculto.

3d_only O Scene Viewer é iniciado com o modelo exibido no modo 3D, mesmo que o Google Play Services para RA esteja presente no dispositivo. O botão Veja no seu espaço nunca é exibido.

ar_preferred O Scene Viewer é iniciado no modo nativo de RA como o modo de entrada. O usuário tem a opção de alternar entre os modos RA e 3D usando os botões Visualizar no seu espaço e Ver em 3D.



Se o Google Play Services para RA não estiver presente, o Visualizador de cenas voltará para o modo 3D como o modo de entrada.

ar_only Ao usar esse valor, você precisa iniciar a inicialização com uma intent explícita do Android para com.google.ar.core.

Observação:não use o modo ar_only ao iniciar com uma intent do Android explícita para o Google app.

link (opcional) Um URL válido Um URL para uma página da Web externa. Se estiver presente, um botão será exibido na interface que direcionará o usuário para esse URL quando clicado.

title (opcional) String válida Um nome para o modelo. Se estiver presente, ele será exibido na interface. O nome será truncado com reticências após 60 caracteres.

som (opcional) Um URL válido Um URL para uma faixa de áudio em loop que é sincronizada com a primeira animação incorporada em um arquivo glTF. Ele precisa ser fornecido junto com um glTF com uma animação de comprimento correspondente. Se estiver presente, o som será repetido após o carregamento do modelo. Precisa ter escape de URL.
resizable (opcional) true (padrão)

false

Quando definido como false, os usuários não poderão escalonar o modelo na experiência de RA. O dimensionamento funciona normalmente na experiência 3D.
enable_vertical_placement (opcional) false (padrão)

true

Quando definido como true, os usuários poderão colocar o modelo em uma superfície vertical.

Orientações sobre UX

Para oferecer a melhor UX possível para os usuários, recomendamos que as calls-to-action visíveis mostrem que o usuário está prestes a entrar em um ambiente imersivo.

Para experiências do visualizador em 3D, recomendamos uma call-to-action Ver em 3D que se pareça com uma das imagens a seguir:

Iniciar o Scene Viewer usando uma intent explícita do Google Play Services para RA (somente no modo RA)

O modo RA no Scene Viewer usa a tecnologia do Google Play Services para RA.

Para garantir que a RA esteja disponível no Scene Viewer, você pode usar uma intent do Android explícita de um site ou app Android nativo para iniciar esse recurso usando o com.google.ar.core package e fornecer um browser_fallback_url. Dessa forma, você pode garantir que todos os usuários tenham uma experiência de RA nativa pelo Visualizador de cenas ou uma experiência substituta que você criou. Por exemplo, é possível criar experiências de fallback, como seu próprio visualizador em 3D ou uma mensagem de erro simples.

Para acionar a intent explícita do HTML, use a seguinte sintaxe:

<a href="intent://arvr.google.com/scene-viewer/1.0?file=https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf&mode=ar_only#Intent;scheme=https;package=com.google.ar.core;action=android.intent.action.VIEW;S.browser_fallback_url=https://developers.google.com/ar;end;">Avocado</a>;

Para acionar a intent explícita do Java, use o seguinte código:

Intent sceneViewerIntent = new Intent(Intent.ACTION_VIEW);
Uri intentUri =
    Uri.parse("https://arvr.google.com/scene-viewer/1.0").buildUpon()
    .appendQueryParameter("file", "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf")
    .appendQueryParameter("mode", "ar_only")
    .build();
sceneViewerIntent.setData(intentUri);
sceneViewerIntent.setPackage("com.google.ar.core");
startActivity(sceneViewerIntent);

Parâmetros de intent compatíveis

Os parâmetros abaixo têm suporte para uma intent explícita do pacote do Google Play Services para RA.

Parâmetro de intent Valores permitidos Comentários
browser_fallback_url (obrigatório para intents baseadas em HTML) Um URL válido Isso é compatível apenas com implementações baseadas na Web. Quando o Google Play Services para RA não está presente no dispositivo ou não está atualizado, este é o URL que o app acessa.
mode (opcional) ar_only O Scene Viewer sempre inicia o modelo 3D em uma visualização de RA nativa e oculta qualquer interface para alternar para o visualizador em 3D.

Se o Google Play Services para RA não estiver presente, o Scene Viewer vai abrir o URL definido na browser_fallback_url para experiências baseadas na Web. Para experiências baseadas em app, o Scene Viewer retorna para uma experiência alternativa, como uma mensagem de erro ou outra experiência criada por você.

ar_preferred O Scene Viewer é iniciado no modo nativo de RA como o modo de entrada e fornece aos usuários a opção de alternar entre os modos RA e 3D usando os botões View in your space e View in 3D.

Se o Google Play Services para RA não estiver presente, o Scene Viewer vai abrir o URL definido na browser_fallback_url para experiências baseadas na Web. Para experiências baseadas em app, o Scene Viewer retorna para uma experiência alternativa, como uma mensagem de erro ou outra experiência criada por você.

   

link (opcional) Um URL válido Um URL para uma página da Web externa. Se estiver presente, um botão será mostrado na interface que vai invocar esse URL quando clicado.



A versão 1.1 adicionou suporte a links intent:// no Scene Viewer para permitir que o botão de visita do visualizador de cenas seja acionado diretamente em outros apps. Ela precisa ser usada com cuidado e só precisa ser especificada quando houver garantia de que um gerenciador de intent esteja presente para a intent em questão.
title (opcional) String válida Um nome para o modelo. Se estiver presente, ele será exibido na interface. O nome será truncado com reticências após 60 caracteres.



A versão 1.1 adicionou suporte ao estilo HTML do conteúdo do título, com uma quantidade arbitrária de texto permitida. O título deve ter escape de URL.
sound (opcional) Um URL válido Um URL para uma faixa de áudio em loop que é sincronizada com a primeira animação incorporada em um arquivo glTF. Ele precisa ser fornecido junto de um glTF com uma animação de comprimento correspondente. Se estiver presente, o som será repetido após o carregamento do modelo.
resizable (opcional) true (padrão)

false

Quando definido como false, os usuários não poderão escalonar o modelo na experiência de RA. O dimensionamento funciona normalmente na experiência 3D.
disable_occlusion (opcional) false (padrão)

true

Quando definido como true, os objetos colocados na cena sempre aparecem na frente de objetos reais no cenário. Consulte [Ativar a oclusão](/ar/develop/depth#enable_occlusion) para saber mais.

Orientações sobre UX

Para oferecer a melhor UX possível aos usuários, recomendamos seguir estas diretrizes.

  • Para experiências de RA, a call-to-action visível precisa informar que o usuário está prestes a entrar em um ambiente imersivo. Recomendamos que você use a call-to-action Veja no seu espaço:

  • É possível que os usuários não tenham o Google Play Services para RA instalado no dispositivo. Veja como <model-viewer> lida com o substituto e você pode usar esse código como ponto de partida.

    // Check whether this is an Android device.
    const isAndroid = /android/i.test(navigator.userAgent);
    // This fallback URL is used if the Google app is not installed and up to date.
    const fallbackUrl = 'https://arvr.google.com/scene-viewer?file=https%3A%2F%2Fstorage.googleapis.com%2Far-answers-in-search-models%2Fstatic%2FTiger%2Fmodel.glb&link=https%3A%2F%2Fgoogle.com&title=Tiger';
    
    // This intent URL triggers Scene Viewer on Android and falls back to
    // fallbackUrl if the Google app is not installed and up to date.
    const sceneViewerUrl = 'intent://arvr.google.com/scene-viewer/1.0?file=https://storage.googleapis.com/ar-answers-in-search-models/static/Tiger/model.glb&title=Tiger#Intent;scheme=https;package=com.google.android.googlequicksearchbox;action=android.intent.action.VIEW;S.browser_fallback_url=' +
        fallbackUrl + ';end;';
    
    // Create a link.
    var a = document.createElement('a');
    a.appendChild(document.createTextNode('Tiger'));
    // Set the href to the intent URL on Android and the fallback URL
    // everywhere else.
    a.href = isAndroid ? sceneViewerUrl : fallbackUrl;
    // Add the link to the page.
    document.body.appendChild(a);
    

Como usar <model-viewer> para iniciar o Scene Viewer

Para ativar o Scene Viewer no seu site, inclua o componente da Web <model-viewer> com o atributo ar.

<model-viewer ar
              ar-modes="scene-viewer webxr quick-look"
              alt="A 3D model of an astronaut."
              src="Astronaut.gltf"></model-viewer>

Quando visualizado em um dispositivo Android com suporte a ARCore, um site que inclui o componente <model-viewer> com o atributo ar exibe um botão, conforme mostrado no exemplo a seguir.

Quando o modo scene-viewer é usado no ar-modes, ele alterna para uma visualização de RA nativa e convida o usuário a colocar o modelo no ambiente dele usando o Scene Viewer.

Se o Google Play Services com RA não estiver presente, tocar nesse botão exibirá o modelo no visualizador em 3D do <model-viewer>.

Consulte a documentação de <model-viewer> para mais informações sobre como começar a usar <model-viewer>.

Requisitos de arquivo para modelos

O Scene Viewer tem o suporte e as limitações abaixo para modelos.

Suporte a formatos de arquivos glTF 2.0/glb, usando estas extensões:
  • KHR_materials_unlit
  • KHR_texture_transform
Animation
  • Animação esquelética em loop
  • Animação fixa em looping
  • Animação de transformação em loop
A animação será reproduzida em um loop. Se o arquivo glTF tiver várias animações, o Scene Viewer vai reproduzir apenas a primeira animação.
Limites recomendados O desempenho geral dos recursos depende da definição de restrições e da escolha entre vértices, materiais, resolução da textura, malha por material e outros fatores. Siga as diretrizes a seguir para otimizar seus recursos.
  • Número de triângulos: o limite recomendado é de 100 mil triângulos, mas direcionar para o número mais baixo vai manter o alto desempenho no Scene Viewer. Entre 30.000 e 50.000 é um intervalo ideal.
  • Número de materiais: o limite recomendado é de 10 materiais. Dois deles podem estar na versão Alfa. Segmente o menor número possível para manter o recurso com um bom desempenho.
  • Malha por material: 1
  • Resolução máxima de textura: 2.048 × 2.048
  • Osso (incluindo articulações não ponderadas): 254 (limite rígido)
  • Pesos ósseos por limite de vértice: 4 (limite rígido)
  • UV: 1 UV por malha (limite rígido)
  • Tamanho do modelo: 10 MB. Modelos maiores podem resultar em uma experiência do usuário ruim.
Suporte de sombra Sombras rígidas são renderizadas automaticamente pelo Scene Viewer ao colocar um objeto. Por isso, recomendamos não usar sombras no seu modelo.
Suporte a texturas
  • Formato PNG: PNG-24, PNG-8 indexado.
    Os JPGs são preferidos quando não há transparência, porque eles reduzem o tamanho.
  • Espaço de cores: sRGB
Material PBR
Carregamento de arquivos HTTPS
Scene
  • Eixo: destro, com estas propriedades:
    • +X está certo
    • +Y está para cima
    • -Z aponta para frente a partir da origem (em outras palavras, a "frente" de um recurso precisa estar virada para +Z).
  • Escala: 1 unidade = 1 metro (conforme definido pela especificação glTF para garantir que o modelo seja colocado em RA em escala real)

Como usar a ferramenta de visualização para validar seus modelos 3D

Para garantir que o arquivo do modelo 3D seja exibido corretamente no Scene Viewer, use nossa ferramenta de visualização on-line para validar os arquivos no PC.

Como validar seu modelo 3D

Para validar um modelo, a ferramenta de visualização precisa de um arquivo glb ou glTF, qualquer arquivo de imagem e bin associado e um arquivo de áudio opcional. O arquivo de áudio vai ficar em loop com a animação 0.

É possível selecionar vários arquivos individuais ou, opcionalmente, colocar o glb ou glTF e os arquivos associados em um arquivo ZIP. O método de arquivo ZIP não é compatível com arquivos de áudio.

Para validar seu modelo 3D:

  1. Abra a ferramenta de visualização on-line em um navegador.

  2. Use um destes métodos para adicionar os arquivos à ferramenta de visualização:

    • Arrastar e soltar. Selecione um arquivo glb ou glTF e todos os arquivos associados (ou um arquivo ZIP contendo esses arquivos) e arraste os arquivos selecionados ou o ZIP para a ferramenta de visualização.

    • Na ferramenta de visualização. Na ferramenta de visualização, escolha Scene Viewer > Load File. Selecione um arquivo glb ou glTF e todos os arquivos associados (ou um arquivo ZIP contendo esses arquivos) e clique em Open.

Depois de carregar os arquivos que consistem no seu modelo 3D na ferramenta de visualização, um console na parte inferior do navegador exibirá os resultados, incluindo quaisquer mensagens de erro.

Como adicionar modelos 3D para validação

Para validar um modelo 3D, adicione os arquivos que compõem o modelo 3D à nossa ferramenta Editor de modelos.

Para validar um modelo, o visualizador precisa do arquivo glb ou glTF do modelo, de qualquer imagem e arquivo bin associados e um arquivo de áudio opcional. É possível selecionar vários arquivos individuais ou adicionar um único arquivo ZIP.

Ao adicionar um arquivo ZIP, o visualizador carrega o primeiro glb ou glTF que encontra, bem como a imagem associada e os arquivos bin nesse arquivo ZIP.

  1. Abra a ferramenta Editor de modelos em um navegador.

  2. Use um destes métodos para adicionar os arquivos à ferramenta de visualização:

    • Para arrastar e soltar arquivos para validação, selecione várias vezes o arquivo glb ou glTF e todos os arquivos associados (ou selecione um arquivo ZIP contendo esses arquivos) e arraste-o para a ferramenta de visualização.

    • Selecionar arquivos da ferramenta de visualização. Na ferramenta de visualização, escolha Scene Viewer > Load File. Selecione várias vezes o arquivo glb ou glTF e todos os arquivos associados (ou um arquivo ZIP contendo esses arquivos) e clique em Open.

Erros de validação

Código do erro Gravidade Mensagem Valores atualmente aceitos
INVALID_INPUT_FILE_EXTENSION Erro O arquivo de entrada [filename] tem uma extensão de arquivo que não é compatível com o validador. ['.glb', '.gltf']
REC_INPUT_BINARY_SIZE_EXCEEDED Alerta A entrada do usuário fornecida tem um tamanho binário que excede o limite recomendado pela especificação do Scene Viewer, que é um limite de tamanho recomendado de [size] MB. 10
MAX_INPUT_BINARY_SIZE_EXCEEDED Erro A entrada do usuário fornecida tem um tamanho binário que excede o limite máximo permitido pela especificação do Scene Viewer, que é um limite de tamanho máximo de [size] MB. 15
UNSUPPORTED_GLTF_EXTENSION_USED Erro A extensão [ext] no glTF não é compatível com a especificação do Scene Viewer. ['KHR_materials_pbrSpecularGlossiness', 'KHR_materials_unlit', 'KHR_texture_transform']
ANIMATION_LIMIT_EXCEEDED Erro O número de animações no glTF excede o limite permitido pela especificação do Scene Viewer, que é um máximo de [num] animações. 1
MORPH_TARGET_USED Erro O glTF contém um destino de transformação, que não é compatível com a especificação do Scene Viewer.
MATERIAL_LIMIT_EXCEEDED Alerta O número de materiais no glTF excede o limite recomendado pela especificação do Scene Viewer, que é um máximo de [num] materiais. 10
TEXTURE_RESOLUTION_LIMIT_EXCEEDED Alerta A resolução da imagem no índice [idx] no glTF excede o limite recomendado pela especificação do Scene Viewer, que é uma resolução máxima de [res] x [res]. 2048 x 2048
UV_LIMIT_EXCEEDED Erro O número de UVs por malha no glTF excede o limite permitido pela especificação do Scene Viewer, que é um máximo de [num] UV por malha. 1
VERTEX_COLOR_USED Erro O glTF contém uma cor de vértice, que não é compatível com a especificação do Scene Viewer.
JOINT_LIMIT_EXCEEDED Erro O número de articulações no glTF excede o limite permitido pela especificação do Scene Viewer, que é um máximo de [num] junções. 254
TRIANGLE_LIMIT_EXCEEDED Alerta O número de triângulos no glTF excede o limite recomendado pela especificação do Scene Viewer, que é um máximo de [num] triângulos. 100.000
PRIMITIVE_MODE_UNSUPPORTED Erro O modo primitivo [mode] não é compatível com a especificação do Visualizador de cenas. {4 : Lista de Triangle, 5 : Tira Triangular, 6 : Ventilador do Triangle}
MISSING_PBR_METALLIC_ROUGHNESS Informações O material no índice [idx] não tem a propriedade pbrMetallicRoughness. Isso não é exigido pela especificação do Scene Viewer se fatores metálicos e de aspereza são usados. Se nenhuma delas for usada, o material vai usar valores padrão, o que pode levar a um comportamento não intencional.