A API de Texto para 3D é um recurso que permite integrar os recursos de Texto para 3D da Meshy ao seu próprio aplicativo. Nesta seção, você encontrará todas as informações
necessárias para começar a usar esta API.
Texto para 3D usa um fluxo de trabalho em duas etapas. Primeiro, crie uma tarefa de pré-visualização (mode: "preview") para gerar uma malha 3D sem textura, para que você possa avaliar a forma. Em seguida, passe o ID da tarefa de pré-visualização concluída para uma tarefa de refinamento (mode: "refine") para aplicar textura à malha. Ambas as etapas compartilham o mesmo endpoint.
Este endpoint cria uma tarefa de pré-visualização de Texto para 3D, que gera uma malha 3D sem textura (apenas geometria) a partir de um prompt de texto. Esta é a primeira etapa do fluxo de trabalho em duas etapas. Depois que a pré-visualização for bem-sucedida, use o ID da tarefa retornado para criar uma tarefa de refinamento para texturização. Consulte
O objeto de tarefa de Texto para 3D para o esquema de resposta completo.
Parâmetros
Name
mode
Type
string
Obrigatório
Description
Este campo deve ser definido como "preview" ao criar uma tarefa de pré-visualização.
Name
prompt
Type
string
Obrigatório
Description
Descreva que tipo de objeto é o modelo 3D. Máximo de 600 caracteres.
Name
model_type
Type
string
padrão standard
Description
Especifique o tipo de geração de malha 3D.
Valores disponíveis:
standard: Geração de malha 3D regular com alto nível de detalhes.
lowpoly: Gera uma malha low-poly otimizada para polígonos mais limpos.
Quando lowpoly é selecionado, ai_model, topology, target_polycount, should_remesh são ignorados.
Name
ai_model
Type
string
padrão latest
Description
ID do modelo a ser usado. Valores disponíveis: meshy-5, meshy-6, latest (Meshy 6).
Name
should_remesh
Type
boolean
padrão false (meshy-6), true (others)
Description
Controla se a fase de Remesh deve ser ativada. Quando definido como false, a API retornará diretamente a malha triangular de maior precisão.
Aplica-se somente quando should_remesh = true
Name
topology
Type
string
padrão triangle
Description
Especifique a topology do modelo gerado.
Valores disponíveis:
quad: Gera uma malha predominantemente quadrilateral.
triangle: Gera uma malha triangular decimada.
Name
target_polycount
Type
integer
padrão 30,000
Description
Especifique o número-alvo de polígonos no modelo gerado. O número real de polígonos pode divergir do alvo dependendo da complexidade da geometria.
O intervalo de valores válido varia dependendo do nível do usuário:
100 a 300.000 (inclusive)
Name
decimation_mode
Type
integer
Description
Ative a decimação adaptativa definindo um nível de contagem de polígonos. Quando definido, target_polycount é ignorado.
Valores disponíveis:
1: Adaptativo — contagem de polígonos ultra.
2: Adaptativo — contagem de polígonos alta.
3: Adaptativo — contagem de polígonos média.
4: Adaptativo — contagem de polígonos baixa.
Name
symmetry_mode
Type
string
⚠ obsoleto
padrão auto
Description
Obsoleto (deprecated). Este parâmetro não afeta mais a saída.
O campo symmetry_mode controla o comportamento de simetria durante o processo de geração do modelo.
Os valores válidos são:
off: Desativa a simetria.
auto: Determina e aplica automaticamente a simetria com base na geometria de entrada.
Use pose_mode em vez disso. Indica se o modelo deve ser gerado em uma pose A/T.
Name
art_style
Type
string
⚠ obsoleto
padrão realistic
Description
Não compatível com Meshy-6. Solicitações usando Meshy-6 ignorarão art_style, e algumas combinações podem causar erros. Valores disponíveis: realistic, sculpture.
enable_pbr deve ser definido como false ao usar o estilo Sculpture, pois o estilo Sculpture gera seu próprio conjunto de mapas PBR.
Name
moderation
Type
boolean
padrão false
Description
Quando definido como true, o conteúdo de entrada será automaticamente verificado quanto a conteúdo potencialmente prejudicial. Se conteúdo prejudicial for detectado, a tarefa não prosseguirá para a geração.
O texto de prompt será verificado.
Name
target_formats
Type
string[]
Description
Especifica quais formatos de arquivo 3D incluir na saída. Somente os formatos solicitados serão gerados e retornados, o que pode reduzir o tempo de conclusão da tarefa. Quando omitido, todos os formatos compatíveis são incluídos.
Quando omitido, todos os formatos exceto 3mf são gerados. 3mf só é incluído quando especificado explicitamente.
Name
alpha_thumbnail
Type
boolean
padrão false
Description
Quando definido como true, a tarefa renderiza adicionalmente uma versão da pré-visualização com fundo transparente (RGBA) e a retorna como alpha_thumbnail_url na resposta GET. O campo existente thumbnail_url permanece inalterado.
Name
auto_size
Type
boolean
padrão false
Description
Quando definido como true, o serviço usa visão por IA para estimar automaticamente a altura real do objeto e redimensionar o modelo adequadamente. A origem será definida por padrão como bottom, a menos que origin_at seja definido explicitamente.
Aplica-se somente quando auto_size = true
Name
origin_at
Type
string
padrão bottom
Description
Posição da origem quando auto_size está ativado.
Valores disponíveis: bottom, center.
Retornos
A propriedade result da resposta contém o id da tarefa de Texto para 3D recém-criada.
Modos de falha
Name
400 - Bad Request
Description
A solicitação era inaceitável. Causas comuns:
Parâmetro ausente: Um parâmetro obrigatório (por exemplo, prompt, mode) está ausente.
Parâmetro inválido: art_style não é um dos valores permitidos.
Prompt longo demais: O prompt excede o limite de caracteres.
Name
401 - Unauthorized
Description
Falha na autenticação. Verifique sua chave de API.
Este endpoint cria uma tarefa de refinamento de Texto para 3D, que aplica textura a uma malha de pré-visualização concluída. Você deve fornecer o preview_task_id de uma tarefa de pré-visualização bem-sucedida. Esta é a segunda etapa do fluxo de trabalho em duas etapas.
Parâmetros
Name
mode
Type
string
Obrigatório
Description
Este campo deve ser definido como "refine" ao criar uma tarefa de refinamento.
Name
preview_task_id
Type
string
Obrigatório
Description
O id da tarefa de pré-visualização correspondente.
O status da tarefa de pré-visualização fornecida deve ser SUCCEEDED.
Name
enable_pbr
Type
boolean
padrão false
Description
Gere mapas PBR (metálico, rugosidade, normal) além da cor base. Um mapa de emissão também é incluído quando ai_model é meshy-6 ou latest.
Name
hd_texture
Type
boolean
padrão false
Description
Gere a textura de cor base em resolução 4K (4096×4096) para maior nível de detalhe.
Compatível somente quando ai_model é meshy-6 ou latest. Os mapas PBR são sempre gerados em 2K.
Name
texture_prompt
Type
string
Description
Forneça um prompt de texto adicional para orientar o processo de texturização. Máximo de 600 caracteres.
Name
texture_image_url
Type
string
Description
Forneça uma imagem 2D para orientar o processo de texturização. Atualmente oferecemos suporte aos formatos .jpg, .jpeg e .png.
Há duas maneiras de fornecer a imagem:
URL acessível publicamente: Uma URL acessível pela internet pública
Data URI: Uma Data URI da imagem codificada em base64. Exemplo de uma Data URI: data:image/jpeg;base64,<your base64-encoded image data>
A texturização por imagem pode não funcionar de forma ideal se houver diferenças substanciais de geometria entre o asset original e a imagem enviada. Apenas um de texture_image_url ou texture_prompt pode ser usado para orientar o processo de texturização. Se ambos os parâmetros forem fornecidos, então texture_prompt será usado para texturizar o modelo por padrão.
Name
ai_model
Type
string
padrão latest
Description
ID do modelo a ser usado para o refinamento. Valores disponíveis: meshy-5, meshy-6, latest (Meshy 6).
Name
moderation
Type
boolean
padrão false
Description
Quando definido como true, o conteúdo de entrada será automaticamente verificado quanto a conteúdo potencialmente prejudicial. Se conteúdo prejudicial for detectado, a tarefa não prosseguirá para a geração.
Tanto o texto de texture_prompt quanto a imagem de texture_image_url serão verificados.
Name
remove_lighting
Type
boolean
padrão true
Description
Remove realces e sombras da textura de cor base, produzindo um resultado mais limpo que funciona melhor sob configurações de iluminação personalizadas.
Compatível somente quando ai_model é meshy-6 ou latest.
Name
target_formats
Type
string[]
Description
Especifica quais formatos de arquivo 3D incluir na saída. Somente os formatos solicitados serão gerados e retornados, o que pode reduzir o tempo de conclusão da tarefa. Quando omitido, todos os formatos compatíveis são incluídos.
Quando omitido, todos os formatos exceto 3mf são gerados. 3mf só é incluído quando especificado explicitamente.
Name
alpha_thumbnail
Type
boolean
padrão false
Description
Quando definido como true, a tarefa renderiza adicionalmente uma versão com fundo transparente (RGBA) da pré-visualização e a retorna como alpha_thumbnail_url na resposta GET. O campo thumbnail_url existente permanece inalterado.
Name
auto_size
Type
boolean
padrão false
Description
Quando definido como true, o serviço usa visão por IA para estimar automaticamente a altura real do objeto e redimensionar o modelo de acordo. A origem será definida por padrão como bottom, a menos que origin_at seja definido explicitamente.
Aplica-se somente quando auto_size = true
Name
origin_at
Type
string
padrão bottom
Description
Posição da origem quando auto_size está habilitado.
Valores disponíveis: bottom, center.
Retornos
A propriedade result da resposta contém o id da tarefa de Texto para 3D recém-criada.
Modos de falha
Name
400 - Bad Request
Description
A solicitação era inaceitável. Causas comuns:
ID de tarefa inválido: O preview_task_id é inválido ou não existe.
Tarefa não pronta: A tarefa de pré-visualização ainda não foi concluída com sucesso.
Incompatibilidade de modelo: O modelo de IA da tarefa de pré-visualização é incompatível com o modelo de refinamento solicitado.
Name
401 - Unauthorized
Description
A autenticação falhou. Verifique sua chave de API.
Name
402 - Payment Required
Description
Créditos insuficientes para executar esta tarefa.
Name
404 - Not Found
Description
A tarefa de pré-visualização especificada por preview_task_id não foi encontrada.
Este endpoint permite recuperar uma tarefa de Texto para 3D dado um id de tarefa válido.
Consulte O objeto de tarefa de Texto para 3D para ver quais
propriedades estão incluídas no objeto de tarefa de Texto para 3D.
Este endpoint funciona tanto para tarefas de pré-visualização quanto de refinamento.
Parâmetros
Name
id
Type
path
Description
Identificador único da tarefa de Texto para 3D a ser recuperada.
O objeto de Tarefa de Texto para 3D é uma unidade de trabalho que a Meshy acompanha para gerar um modelo 3D a partir de uma entrada de texto. Há duas etapas da API de Texto para 3D, preview e refine. A etapa de preview é para gerar um modelo 3D somente com malha, e a etapa de refine é para gerar um modelo 3D com textura com base no resultado da etapa de preview.
O objeto tem as seguintes propriedades:
Propriedades
Name
id
Type
string
Description
Identificador exclusivo da tarefa. Embora usemos um UUID k-sortable para ids de tarefas como
detalhe de implementação, você não deve fazer nenhuma suposição sobre o formato do id.
Name
type
Type
string
Description
Tipo da tarefa de Texto para 3D. Os valores possíveis são text-to-3d-preview para tarefas da etapa de pré-visualização e text-to-3d-refine para tarefas da etapa de refinamento.
Name
model_urls
Type
object
Description
URL para download do arquivo de modelo 3D texturizado gerado pela Meshy. A propriedade de um formato será omitida se o formato não for gerado, em vez de retornar uma string vazia.
Name
glb
Type
string
Description
URL para download do arquivo GLB.
Name
fbx
Type
string
Description
URL para download do arquivo FBX.
Name
usdz
Type
string
Description
URL para download do arquivo USDZ.
Name
obj
Type
string
Description
URL para download do arquivo OBJ.
Name
mtl
Type
string
Description
URL para download do arquivo MTL.
Name
stl
Type
string
Description
URL para download do arquivo STL.
Name
3mf
Type
string
Description
URL para download do arquivo 3MF. Presente apenas quando 3mf foi solicitado via target_formats.
Name
prompt
Type
string
Description
Este é o prompt não modificado que foi usado para criar a tarefa.
Name
negative_prompt
Type
string
⚠ obsoleto
Description
Mantido para compatibilidade com versões anteriores. Este campo não tem impacto funcional nos modelos gerados.
Name
art_style
Type
string
⚠ obsoleto
Description
O art_style não modificado que foi usado para criar a tarefa de pré-visualização. Não compatível com Meshy-6.
Name
texture_richness
Type
string
⚠ obsoleto
Description
Mantido para compatibilidade com versões anteriores. Este campo não tem impacto funcional nos modelos gerados.
Name
texture_prompt
Type
string
Description
prompt de texto adicional fornecido para orientar o processo de texturização durante a etapa de refinamento.
Name
texture_image_url
Type
string
Description
URL para download da imagem de textura que foi usada para orientar o processo de texturização.
Name
thumbnail_url
Type
string
Description
URL para download da imagem de miniatura do arquivo de modelo.
Name
alpha_thumbnail_url
Type
string
Description
URL para download de uma versão com fundo transparente (RGBA) de thumbnail_url. Presente apenas quando a tarefa foi criada com alpha_thumbnail: true e a pré-visualização transparente foi renderizada com sucesso; caso contrário, este campo é omitido.
Name
video_url
Type
string
⚠ obsoleto
Description
URL para download do vídeo de pré-visualização. Será removido em uma versão futura.
Name
progress
Type
integer
Description
progress da tarefa. Se a tarefa ainda não tiver sido iniciada, esta propriedade será 0. Quando a tarefa for concluída com sucesso, isto se tornará 100.
Name
started_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi iniciada, em milissegundos. Se a tarefa ainda não tiver sido iniciada, esta propriedade será 0.
Um carimbo de data/hora representa o número de milissegundos decorridos desde 1º de janeiro de 1970 UTC, seguindo
o padrão RFC 3339.
Por exemplo, sexta-feira, 1º de setembro de 2023 12:00:00 PM GMT é representado como 1693569600000. Isso se aplica
a todos os carimbos de data/hora na Meshy API.
Name
created_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi criada, em milissegundos.
Name
finished_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi concluída, em milissegundos. Se a tarefa ainda não tiver sido concluída, esta propriedade será 0.
Name
status
Type
string
Description
Status da tarefa. Os valores possíveis são um de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Um array de objetos de URL de textura que são gerados a partir da tarefa. Normalmente, isso contém apenas um objeto de URL de textura. Cada URL de textura tem as seguintes propriedades:
Name
base_color
Type
string
Description
URL para download da imagem do mapa de cor base.
Name
metallic
Type
string
Description
URL para download da imagem do mapa de metálico.
Se a tarefa for criada com enable_pbr: false, esta propriedade será omitida.
Name
normal
Type
string
Description
URL para download da imagem do mapa de normais.
Se a tarefa for criada com enable_pbr: false, esta propriedade será omitida.
Name
roughness
Type
string
Description
URL para download da imagem do mapa de rugosidade.
Se a tarefa for criada com enable_pbr: false, esta propriedade será omitida.
Name
emission
Type
string
Description
URL para download da imagem do mapa de emissão.
Se a tarefa for criada com enable_pbr: false, ou ai_model for meshy-5, esta propriedade será omitida.
Name
preceding_tasks
Type
integer
Description
A contagem de tarefas anteriores.
O valor deste campo só é significativo se o status da tarefa for PENDING.
Name
task_error
Type
object
Description
Detalhes do erro para tarefas com falha. Consulte Erros para a referência completa do objeto task_error.
Name
consumed_credits
Type
integer
Description
O número de créditos consumidos por esta tarefa. Presente quando o status da tarefa é PENDING, IN_PROGRESS ou SUCCEEDED. Retorna 0 para tarefas FAILED (créditos são reembolsados em caso de falha).
Example Text to 3D Task Object
{"id":"018a210d-8ba4-705c-b111-1f1776f7f578","type":"text-to-3d-preview","model_urls": {"glb":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***","fbx":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***","usdz":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***","obj":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***","mtl":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***","stl":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***" },"prompt":"a monster mask","texture_prompt":"green slimy skin with scales and warts","texture_image_url":"","thumbnail_url":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***","progress":100,"seed":1234,"started_at":1692771667037,"created_at":1692771650657,"finished_at":1692771669037,"status":"SUCCEEDED","texture_urls": [ {"base_color":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***","metallic":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX","normal":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX","roughness":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX","emission":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX" } ],"preceding_tasks":0,"task_error": {"message":"" },"consumed_credits":20}