Alguns meses atrás, alguns de nossos clientes começaram a relatar problemas na conexão com o aplicativo Verge3D Network WebGL. Como se viu, o motivo foi bloqueado pelos endereços IP da Roskomnadzor na Amazon Web Services.
Desagradável, é claro, mas suportável. O Verge3D é um kit de ferramentas para desktop, e a publicação na hospedagem na Amazon é boa, mas não crítica para o recurso. No entanto, esses eventos nos fazem pensar nas perspectivas. Na verdade, este artigo contém algumas considerações sobre serviços de nuvem em geral e serviços WebGL em particular.

O WebGL é a única tecnologia 3D "correta" para a web atualmente. E, na verdade, é bastante natural que as ferramentas para criar e publicar conteúdo 3D estejam às vezes na nuvem. Sites como Sketchfab, Clara.io, Playcanvas oferecem um editor de nuvem que coleta cenas em 3D. Cliquei em um botão e seu conteúdo agora está disponível on-line - é conveniente!
Na realidade, nem tudo é tão otimista e, neste artigo, tentarei explicar o porquê.

Bloqueio de fornecedor
O principal problema dos serviços em nuvem é a imposição de vícios difíceis. Portanto, cenas 3D personalizadas e outros ativos são armazenados na nuvem e só podem ser editados e configurados em um editor de serviços da web específico. Com o tempo, as melhores práticas se acumulam na nuvem, e sair dela se torna cada vez mais difícil.
Graças à crescente base de usuários atraídos por um brinde, esses serviços da Web aumentam constantemente o tráfego e aumentam os custos de manutenção. Que, por sua vez, são repassados aos usuários, o que leva a preços mais altos para clientes pagos ou apenas mostra mais publicidade.
O programa da área de trabalho e todos os arquivos que ele produziu permanecerão sempre em suas mãos (é claro que você precisa de um backup). Mesmo que o software não seja mais suportado, você ainda poderá usá-lo sem limite de tempo (hum, se você certamente não tiver uma assinatura - as nuvens malditas chegaram aqui também).
Os freios
Se você é um artista 3D, sabe muito bem como uma cena com centenas e milhares de objetos, materiais e texturas pode diminuir a velocidade, mesmo se você trabalha em uma estação gráfica.

Agora adicione uma conexão de rede (que pode ser de qualidade diferente) a partir de cima e ficará claro que no editor on-line você pode criar confortavelmente apenas cenas simples.
Integração
O conteúdo da nuvem é distribuído aos usuários de um servidor central usando um visualizador universal como um player de vídeo do YouTube. Muitas vezes, ele não possui as funções que você realmente precisa e vice-versa, existem botões, logotipos e outros enfeites completamente inúteis que não podem ser removidos.
Um bom programa de desktop permite que você configure tudo por si mesmo e é frequentemente expandido por plugins. Por sua vez, o aplicativo personalizado gerado por ele é adaptado individualmente a um cliente específico. Se desejado, ele pode ser integrado à infraestrutura ou ao software existente do servidor e não depender da conexão externa.
Servidores e Domínios
O conteúdo on-line tridimensional geralmente não é exibido por si só, mas funciona no contexto do ambiente (por exemplo, uma loja on-line com visualização em 3D ou um configurador). Se o 3D do seu site for carregado da nuvem, isso poderá levar a vários problemas. Uma delas é uma política de segurança do navegador que restringe a interação do conteúdo da Web baixado de diferentes domínios.
Se o conteúdo do WebGL estiver hospedado no mesmo domínio que o restante do site, o acesso e o controle completos a partir da interface do site serão possíveis. Por exemplo, se for um configurador, o usuário pode selecionar e configurar o produto usando a interface do site e fazer um pedido, sem redirecionamentos e reinicializações.
Privacidade e segurança
Tudo o que é publicado na nuvem é disponibilizado ao público em geral. Mesmo se houver um modo "privado", o conteúdo e outras informações serão visíveis aos funcionários ou poderão ser roubados por hackers. Só se pode esperar o profissionalismo dos desenvolvedores e a confiabilidade da infraestrutura em nuvem.
E vice-versa, se você não publicar nada na nuvem, isso significa que as informações são armazenadas apenas com você. Além disso, qual é o sentido de fazer o upload do código fonte dos seus modelos e cenas para um servidor público?
Política
É difícil encontrar um servidor em nuvem, cujos desenvolvedores não garantem uma operação sem problemas em todo o mundo no modo 24/7. E, de fato, agora sabemos perfeitamente bem. Não apenas na Rússia, mas também em muitos outros países, incluindo China e Estados Unidos, estão sendo implementados programas de censura na Internet.
Se o seu projeto é direcionado a um público internacional, qualquer problema de acessibilidade afeta imediatamente sua renda. Em particular, rodando em cima da Amazon
O serviço de hospedagem de modelos do Sketchfab não estava disponível enquanto durou o épico com o bloqueio do Telegram. É claro que todas as empresas russas que se vincularam a esse serviço, em especial as lojas on-line, tiveram que experimentar o melhor dos tempos.
Conclusões
Acontece que, para garantir a segurança e o trabalho garantido em escala global, você deve assumir a responsabilidade por parte da infraestrutura e fornecer ferramentas de desenvolvimento, em vez de delegá-la aos serviços em nuvem.