Roblox Cube: nosso sistema de IA generativa principal para 3D e 4D

  • Estamos lançando o nosso modelo-alicerce de IA generativa Cube 3D.
  • Também estamos abrindo o código de uma versão do nosso modelo-alicerce Cube 3D.
  • A versão beta de geração de malha Cube 3D, no Roblox Studio e como API Lua nas experiências, ficará disponível esta semana.

Ano passado, anunciamos um projeto ambicioso para criar um modelo-alicerce 3D de código aberto para criar cenários e objetos 3D na Roblox. Esta semana, vamos abrir o código do primeiro lançamento deste modelo para disponibilizá-lo para qualquer um dentro e fora da plataforma Roblox. Batizamos o modelo de Cube 3D. Também vamos lançar a primeira habilidade dele, com o lançamento beta da nossa API de geração de malha. Cube vai fundamentar várias das ferramentas de IA que vamos desenvolver nos próximos anos, inclusive ferramentas de geração de cena bem complexas. Ele acabará sendo um modelo multimodal treinado em texto, imagens, vídeo e outros tipos de informações para integrar tudo com as nossas ferramentas de criação de IA.

Cube 3D gera modelos e cenários 3D diretamente de texto e, no futuro, imagens. Hoje, a geração 3D de ponta usa imagens e uma abordagem reconstrutiva para construir objetos 3D. É uma boa opção quando existem dados de treinamento 3D suficientes. No entanto, devido à natureza da nossa plataforma, nós o treinamos em dados 3D nativos. O objeto gerado é compatível com motores de jogos hoje e pode ser aprimorado para ser funcional.

A diferença aqui é similar ao de um set de uma pista de corrida em um filme. Na televisão, você pode ver o que parece uma pista funcional, com arquibancadas, garagens e uma pista da vitória. Mas, ao andar no set, você logo percebe que as estruturas são, na verdade, planas. Para construir um mundo 3D imersivo de verdade, é preciso ter estruturas completas e funcionais, com garagens nas quais é possível entrar, arquibancadas em que é possível se sentar e uma pista da vitória com um pódio funcional.

Para isso, nós nos inspiramos em modelos de ponta treinados em tokens de texto (ou conjuntos de caracteres) para prever o próximo token necessário para formar uma frase. Nossa inovação é baseada nessa mesma ideia. Desenvolvemos a capacidade de transformar objetos 3D em tokens e entender formas como tokens, treinando Cube 3D para prever o próximo token de forma para construir um objeto 3D completo. Ao estender isso para uma geração de cena completa, Cube 3D prevê o layout e recursivamente prevê a forma para concluí-lo.

Qualquer um pode refinar, desenvolver plugins ou treinar Cube 3D nos próprios dados para adequá-lo às suas necessidades. Acreditamos que ferramentas de IA devam ser construídas com base em abertura e transparência, motivo pelo qual somos um parceiro comprometido na comunidade de IA de código aberto. Lançamos um dos nossos modelos de segurança de IA porque, para nós, compartilhar avanços de segurança de IA ajuda todo o setor a acelerar a inovação e os avanços técnicos. Por isso, também ajudamos a fundar a ROOST, uma organização não lucrativa dedicada a abordar áreas importantes na segurança digital com ferramentas de segurança de código aberto. Ao abrir o código de Cube 3D, nossa meta é permitir que pesquisadores, desenvolvedores e a comunidade geral de IA aprenda, aprimore e avance a geração 3D por todo o setor.

Cube 3D para criação

Falamos de como a IA pode acelerar a criação de recursos 3D, acessórios e experiências. A IA permitirá conexões e jogos ainda mais imersivos e personalizados. Investimos em infraestrutura para dar suporte a IA em todas as etapas do ciclo de criação, tanto para os desenvolvedores quanto para os usuários das experiências. Temos em vista um futuro em que desenvolvedores darão aos usuários novos jeitos de criar, habilitando IA nas experiências. Assim, o poder da IA vai para as mãos de mais de 85 milhões de usuários ativos diários, tudo como parte do jogo.

No ano passado, estreamos várias funcionalidades inéditas por meio do nosso Assistente de IA no Roblox Studio para dar aos desenvolvedores as ferramentas e o potencial necessários para eliminar horas de trabalho manual. Com Cube, queremos deixar a criação 3D mais eficiente. Com geração de malha 3D, os desenvolvedores podem explorar novas direções criativas e aumentar a produtividade, decidindo rapidamente no que avançar.

Imagine construir um jogo em uma pista de corrida. Hoje, é possível usar a API de Geração de Malha no Assistente com um breve comando digitado, como “/gerar uma motocicleta” ou “/gerar um cone de trânsito laranja.” Em segundos, a API geraria uma versão de malha desses objetos. Daí seria possível aprimorá-la com texturas, cores etc. Com essa API, fica possível modelar objetos ou projetar seu espaço bem mais rápido, sem precisar de horas para modelar coisas simples. Assim, é possível se concentrar na parte legal, como bolar o layout da pista ou refinar o manuseio do carro. A API economiza horas em cada objeto criado e devolve o tempo necessário para experimentar novas ideias sem se preocupar em gastar tempo ou esforço demais. No longo prazo, planejamos possibilitar objetos mais complexos e funcionais, cenas inclusive.

Objetos 3D gerados no Cube

Um bugre vermelho com rodas nodosas
Comando: Um bugre vermelho com rodas nodosas
Um sofá verde clássico com linhas nítidas e material de veludo
Comando: Um sofá verde clássico com linhas nítidas e material de veludo
Uma espada de fantasia de cristal verde com adornos de ouro
Comando: Uma espada de fantasia de cristal verde com adornos de ouro
Uma jaqueta de couro de motociclista marrom
Comando: Uma jaqueta de couro de motociclista marrom
Um unicórnio com crina e cauda arco-íris
Comando: Um unicórnio com crina e cauda arco-íris
Uma baleia desenhada
Comando: Uma baleia desenhada

Essa tecnologia chega a dezenas de milhões de gente criativa que joga e se conecta na Roblox todos os dias. Nossa meta é um futuro em que desenvolvedores transformam os usuários em criadores com IA. Com a API de Geração de Malha, jogadores podem dar vida ao que imaginarem. Se quiser um carro futurista, é só digitar “carro futurista vermelho com asas laterais” ou “jaqueta de couro de motociclista preta” e pronto: gerou. Esse tipo de geração por IA dentro do jogo vai possibilitar um novo nível de criatividade. É possível personalizar as experiências de jeitos nunca imaginados pelos desenvolvedores, e isso vai deixar os jogos ainda mais instigantes.

Nos bastidores: atenção cruzada entre tokens de texto, imagens e 3D

O desafio fundamental era conectar texto e imagens com formas 3D. Nosso principal avanço técnico é a transformação de tokens 3D, possibilitando representar objetos tridimensionais como tokens da mesma forma que se faz com texto. Assim, podemos prever a próxima forma, assim como modelos de linguagem preveem a próxima palavra em uma frase.

Para chegar à geração 3D, projetamos uma arquitetura unificada para geração autorregressiva de um único objeto, conclusão de forma e geração de layout multiobjeto/de cena. Os transformadores autorregressivo são redes neurais que usam dados anteriores para prever o próximo componente. A arquitetura possibilita escalabilidade e compatibilidade multimodal para que, conforme ampliamos o modelo, ele funcione com diferentes tipos de dados (texto, visual, áudio e 3D). Estamos abrindo o código do modelo. Nessa etapa inicial, os criadores poderão gerar objetos 3D com base em comandos de texto. Mais adiante, queremos que seja possível gerar cenas inteiras com comandos multimodais.

Para treinar um transformador pré-treinado generativo (GPT) para geração de formas, usamos tokens de formas 3D distintos e os alinhamos com comandos de texto. Essa abordagem inédita nos prepara para um mundo de geração de cena 3D jogável.

O futuro de Cube

Hoje, grande parte do mundo usa IA para texto, para prever palavras em uma frase. Muitos a usam para imagens, prever pixels. Fica tudo bem mais complexo ao criar cenas, onde todos esses elementos se unem e precisam funcionar juntos em contexto. Por exemplo, imagine uma experiência com uma cena simples que possamos descrever como “um avatar em uma motocicleta diante de uma pista de corrida com árvores.”

Muitos elementos estão envolvidos na construção. As árvores são duas malhas 3D combinadas, a moto é uma malha densa com detalhes e triângulos e as construções são feitas de partes da Roblox. O avatar na moto tem características mais complexas para o corpo, os membros e a cabeça. Por fim, temos que unificar isso tudo com um layout. Para isso, precisamos de caixas delimitadoras, que definem o tamanho e o local de um objeto, para saber como organizar essa geometria. Trata-se de um processo árduo, mas a IA pode ajudar em cada etapa. Com ela, é possível chegar a uma primeira versão mais rápido, dando tempo para testar outras ideias ou refinar a cena.

Ao chegarmos lá, queremos objetos e cenas 3D funcionais. Chamamos isso de geração 4D, em que a quarta dimensão é a interação entre objetos, ambientes e pessoas. Chegar ao resultado exige não só construir objetos e cenas 3D imersivos, como também entender os contextos e relações entre esses objetos. É esse o nosso objetivo com Cube.

Além do primeiro caso de uso da geração de malha, queremos abordar geração e compreensão de cenas. Vamos poder servir aos usuários as experiências que mais interessarem e aprimorar cenas com objetos contextualizados. Por exemplo, em uma experiência com uma cena de floresta, um desenvolvedor pode pedir ao Assistente para trocar todas as folhas verdejantes nas árvores por folhagem de outono para indicar a mudança da estação. Nossas ferramentas do Assistente IA reagem a solicitações do desenvolvedor, ajudando a criar, adaptar e dimensionar as experiências.

Teremos mais a falar e outras funcionalidades a mostrar conforme continuarmos a melhorar nosso modelo-alicerce. Até lá, esperamos que todos gostem de usar e criar com a nossa versão de código aberto do modelo Cube 3D, que será disponibilizado daqui a uns dias.