La API Multi-imagen a 3D es una característica que te permite integrar las capacidades de Multi-imagen a 3D de Meshy en tu propia aplicación. En esta sección, encontrarás toda la información necesaria para comenzar con esta API.
Este endpoint te permite crear una nueva tarea Multi-imagen a 3D. Consulta El Objeto Tarea Multi-imagen a 3D para ver qué propiedades están incluidas en el objeto tarea Multi-imagen a 3D.
Parámetros
Solo uno de input_task_id o image_urls es requerido. Si ambos son proporcionados, input_task_id tiene prioridad.
Name
input_task_id
Type
string
Requerido
Description
El ID de una tarea de generación de imágenes completada cuyo resultado (1-4 imágenes) debe usarse como entrada. Esta tarea debe ser una de las siguientes tareas: Texto a Imagen, Imagen a Imagen, Texto a Imagen Multivista, o Imagen a Imagen Multivista. Además, debe haber sido ejecutada a través de la API y tener un estado de SUCCEEDED.
Name
image_urls
Type
array
Requerido
Description
Proporciona de 1 a 4 imágenes para que Meshy las use en la creación del modelo. Actualmente, admitimos formatos .jpg, .jpeg y .png. Todas las imágenes deben representar el mismo objeto desde diferentes ángulos para obtener mejores resultados.
Hay dos maneras de proporcionar cada imagen:
URL públicamente accesible: Una URL que es accesible desde internet público.
Data URI: Un URI de datos codificado en base64 de la imagen. Ejemplo de un Data URI: data:image/jpeg;base64,<tus datos de imagen codificados en base64>.
Para meshy-7 (o latest), la primera imagen se usa como la vista primaria (frontal). El orden de las imágenes restantes no importa.
Name
ai_model
Type
string
predeterminado latest
Description
ID del modelo a usar. Valores disponibles: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Name
should_texture
Type
boolean
predeterminado true
Description
Determina si las texturas son generadas. Configurar en false omite la fase de texturizado, proporcionando una malla sin texturas.
Solo aplica cuando should_texture = true
Name
enable_pbr
Type
boolean
predeterminado false
Description
Generar Mapas PBR (metálico, rugosidad, normal) además del color base. Un mapa de emisión también se incluye cuando ai_model es meshy-6, excepto en texture_resolution: 8k. meshy-7 y latest no producen un mapa de emisión.
Name
texture_resolution
Type
string
predeterminado 2k
Description
Resolución del color base de la textura. Uno de 2k (2048×2048), 4k (4096×4096), o 8k (8192×8192). Las resoluciones más altas capturan más detalles de la superficie.
4k y 8k requieren ai_modelmeshy-6, meshy-7 o latest. En 8k, no se produce un mapa de emisión.
Name
hd_texture
Type
boolean
⚠ obsoleto
predeterminado false
Description
Usa texture_resolution en su lugar — equivalente a texture_resolution: "4k". Cuando ambos están configurados, texture_resolution tiene prioridad.
Name
texture_prompt
Type
string
Description
Proporciona un prompt de texto para guiar el proceso de texturizado. Máximo 600 caracteres.
Name
texture_image_url
Type
string
Description
Proporciona una imagen 2D para guiar el proceso de texturizado. Actualmente, admitimos formatos .jpg, .jpeg y .png.
Hay dos maneras de proporcionar la imagen:
URL públicamente accesible: Una URL que es accesible desde internet público
Data URI: Un URI de datos codificado en base64 de la imagen. Ejemplo de un Data URI: data:image/jpeg;base64,<tus datos de imagen codificados en base64>
El texturizado de la imagen puede no funcionar de manera óptima si hay diferencias sustanciales en la geometría entre el asset original y la imagen cargada. Solo uno de texture_image_url o texture_prompt puede usarse para guiar el proceso de texturizado. Si se proporcionan ambos parámetros, entonces texture_prompt se usará para texturizar el modelo por defecto.
Name
should_remesh
Type
boolean
predeterminado false (meshy-6), true (otros)
Description
Controla si habilitar la fase de remallado. Para el modelo de mayor calidad, recomendamos configurar should_remesh a false.
Solo aplica cuando should_remesh = true
Name
topology
Type
string
predeterminado triangle
Description
Especifica la topology del modelo generado.
Valores disponibles:
quad: Genera una malla dominante de cuadriláteros.
triangle: Genera una malla de triángulos decimada.
Name
target_polycount
Type
integer
predeterminado 30,000
Description
Especifica el número de polígonos objetivo en el modelo generado. El número real de polígonos puede desviarse del objetivo dependiendo de la complejidad de la geometría.
El rango de valores válidos varía dependiendo del nivel de usuario:
100 a 300,000 (inclusive)
Name
decimation_mode
Type
integer
Description
Habilita la decimación adaptativa estableciendo un nivel de recuento de polígonos. Cuando se establece, target_polycount se ignora.
Valores disponibles:
1: Adaptativo — ultra recuento de polígonos.
2: Adaptativo — alto recuento de polígonos.
3: Adaptativo — recuento medio de polígonos.
4: Adaptativo — bajo recuento de polígonos.
Name
save_pre_remeshed_model
Type
boolean
predeterminado false
Description
Cuando se establece en true, Meshy también almacena un archivo GLB adicional antes de que se complete la fase de remallado.
Name
symmetry_mode
Type
string
⚠ obsoleto
predeterminado auto
Description
Obsoleto. Este parámetro ya no afecta al resultado.
El campo symmetry_mode controla el comportamiento de la simetría durante el proceso de generación del modelo.
Los valores válidos son:
off: Desactiva la simetría.
auto: Determina y aplica automáticamente la simetría basada en la geometría de entrada.
on: Enfuerza la simetría durante la generación.
Name
pose_mode
Type
string
predeterminado ""
Description
Especifica el modo de pose para el modelo generado.
Valores disponibles:
a-pose: Genera el modelo en una pose A.
t-pose: Genera el modelo en una pose T.
"" (cadena vacía): No se aplica una pose específica.
Name
is_a_t_pose
Type
boolean
⚠ obsoleto
predeterminado false
Description
Usa pose_mode en su lugar. Si generar el modelo en una pose A/T.
Name
image_enhancement
Type
boolean
predeterminado true
Description
Optimiza las imágenes de entrada para mejores resultados. Configura en false para preservar la apariencia exacta de las imágenes de entrada sin ningún procesamiento de estilo.
Solo compatible cuando ai_model es meshy-6, meshy-7 o latest.
Name
remove_lighting
Type
boolean
predeterminado true
Description
Elimina los destacados y las sombras de la textura del color base, produciendo un resultado más limpio que funciona mejor bajo configuraciones de iluminación personalizadas.
Solo compatible cuando ai_model es meshy-6, meshy-7 o latest.
Name
moderation
Type
boolean
predeterminado false
Description
Cuando se establece en true, el contenido de entrada se revisará automáticamente en busca de contenido potencialmente dañino. Si se detecta contenido dañino, la tarea no procederá a la generación.
Cada imagen de image_urls y el texto de texture_prompt serán examinados.
Name
target_formats
Type
string[]
Description
Especifica qué formatos de archivo 3D incluir en el resultado. Solo se generarán y devolverán los formatos solicitados, lo que puede reducir el tiempo de finalización de la tarea.
Cuando se omite, se generan todos los formatos excepto 3mf. 3mf solo se incluye cuando se especifica explícitamente.
Name
auto_size
Type
boolean
predeterminado false
Description
Cuando se establece en true, el servicio utiliza visión AI para estimar automáticamente la altura real del objeto y redimensionar el modelo en consecuencia. El origen predeterminará a bottom a menos que origin_at se establezca explícitamente.
Name
alpha_thumbnail
Type
boolean
predeterminado false
Description
Cuando se establece en true, la tarea además renderiza una versión del previsualizado con fondo transparente (RGBA) y la devuelve como alpha_thumbnail_url en la respuesta GET. El campo existente thumbnail_url no cambia.
Name
multi_view_thumbnails
Type
boolean
predeterminado false
Description
Cuando se establece en true, la tarea además renderiza cuatro miniaturas de vista cardinal (frontal, derecha, trasera, izquierda) y las devuelve bajo thumbnail_urls en la respuesta GET. El campo existente thumbnail_url no cambia y continúa apuntando a la vista frontal, por lo que los clientes existentes no se ven afectados.
Agrega aproximadamente 3 segundos a la latencia de la tarea.
Solo aplica cuando auto_size = true
Name
origin_at
Type
string
predeterminado bottom
Description
Posición del origen cuando auto_size está habilitado. Valores disponibles: bottom, center.
Devuelve
La propiedad result de la respuesta contiene el id de la tarea recién creada de Multi-imagen a 3D.
Modos de Fallo
Name
400 - Bad Request
Description
La solicitud no fue aceptable. Causas comunes:
Parámetro faltante: Debe proporcionarse image_urls o input_task_id.
Tarea de entrada no válida: input_task_id debe referirse a una tarea SUCCEEDED de Texto a Imagen, Imagen a Imagen, o variante multivista.
Cantidad de imágenes no válida: image_urls debe contener entre 1 y 4 imágenes.
Formato de imagen no válido: Una o más imágenes en image_urls no son formatos soportados.
URL inaccesible: Una o más image_urls no pudieron descargarse.
Name
401 - Unauthorized
Description
La autenticación falló. Por favor, revisa tu clave de API.
Name
402 - Payment Required
Description
Créditos insuficientes para realizar esta tarea.
Name
429 - Too Many Requests
Description
Has excedido tu límite de tasa.
Request
POST
/openapi/v1/multi-image-to-3d
# Solicitud simplecurlhttps://api.meshy.ai/openapi/v1/multi-image-to-3d \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_urls": [ "<tu URL de imagen públicamente accesible o URI de datos codificado en base64>", "<tu segunda URL de imagen públicamente accesible o URI de datos codificado en base64>" ] }'# Con texturizado PBR y formato GLBcurlhttps://api.meshy.ai/openapi/v1/multi-image-to-3d \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_urls": [ "<tu URL de imagen públicamente accesible o URI de datos codificado en base64>", "<tu segunda URL de imagen públicamente accesible o URI de datos codificado en base64>" ], "should_texture": true, "enable_pbr": true, "target_formats": ["glb"] }'
Este endpoint te permite obtener una tarea Multi-imagen a 3D dado un id de tarea válido. Consulta El Objeto Tarea Multi-imagen a 3D para ver qué propiedades están incluidas en el objeto tarea Multi-imagen a 3D.
Parámetros
Name
id
Type
path
Description
Identificador único para la tarea Multi-imagen a 3D a recuperar.
El objeto Tarea Multi-imagen a 3D es una unidad de trabajo que Meshy lleva un seguimiento para generar un modelo 3D a partir de múltiples imágenes (entre 1 y 4 inclusive). Las imágenes deben ser del mismo objeto, idealmente desde diferentes vistas o ángulos. El objeto tiene las siguientes propiedades:
Propiedades
Name
id
Type
string
Description
Identificador único para la tarea. Mientras que usamos un UUID k-ordenable para ids de tarea como detalle de implementación, no debes hacer ninguna asunción sobre el formato del id.
Name
type
Type
string
Description
Tipo de la tarea Multi-imagen a 3D. El valor es multi-image-to-3d.
Name
model_urls
Type
object
Description
URL descargable del archivo de modelo 3D texturizado generado por Meshy. La propiedad para un formato será omitida si el formato no es generado en lugar de devolver una cadena vacía.
Name
glb
Type
string
Description
URL descargable del archivo GLB.
Name
fbx
Type
string
Description
URL descargable del archivo FBX.
Name
obj
Type
string
Description
URL descargable del archivo OBJ.
Name
usdz
Type
string
Description
URL descargable del archivo USDZ.
Name
mtl
Type
string
Description
URL descargable del archivo MTL, devuelto junto con exportaciones OBJ cuando las texturas están presentes.
Name
stl
Type
string
Description
URL descargable del archivo STL.
Name
3mf
Type
string
Description
URL descargable del archivo 3MF. Solo presente cuando 3mf fue solicitado a través de target_formats.
Name
pre_remeshed_glb
Type
string
Description
URL descargable del resultado GLB original antes del remallado.
Disponible solo cuando la tarea fue creada con ambos should_remesh: true y save_pre_remeshed_model: true.
Name
thumbnail_url
Type
string
Description
URL descargable de la imagen miniatura del archivo de modelo. Equivalente a thumbnail_urls.front cuando está presente, mantenido para compatibilidad hacia atrás.
Name
alpha_thumbnail_url
Type
string
Description
URL descargable de una versión con fondo transparente (RGBA) de thumbnail_url. Solo presente cuando la tarea fue creada con alpha_thumbnail: true y la previsualización transparente fue renderizada exitosamente; en caso contrario, este campo es omitido.
Name
thumbnail_urls
Type
object
Description
URLs descargables para cuatro miniaturas de vista cardinal del modelo 3D generado. Cada valor es una URL firmada a un PNG de 512×512 renderizado con los mismos materiales e iluminación que thumbnail_url. Útil para previsualizar el modelo desde múltiples ángulos en lotes sin descargar el GLB.
Solo presente cuando la tarea fue creada con multi_view_thumbnails: true y ha alcanzado SUCCEEDED. Las tareas más antiguas y las tareas creadas sin la opción no incluirán este campo.
Name
front
Type
string
Description
Vista frontal, rotación de 0° alrededor del eje vertical (coincide con thumbnail_url).
Name
right
Type
string
Description
Vista derecha, rotación de 90°.
Name
back
Type
string
Description
Vista trasera, rotación de 180°.
Name
left
Type
string
Description
Vista izquierda, rotación de 270°.
Name
texture_prompt
Type
string
Description
El prompt de texto que fue usado para guiar el proceso de texturizado.
Name
progress
Type
integer
Description
Progreso de la tarea. Si la tarea aún no ha comenzado, esta propiedad será 0. Una vez que la tarea ha tenido éxito, esto se convertirá en 100.
Name
started_at
Type
timestamp
Description
Marca de tiempo de cuando comenzó la tarea, en milisegundos. Si la tarea aún no ha comenzado, esta propiedad será 0.
Una marca de tiempo representa el número de milisegundos transcurridos desde el 1 de enero de 1970 UTC, siguiendo
el estándar RFC 3339.
Por ejemplo, el viernes 1 de septiembre de 2023 a las 12:00:00 PM GMT está representado como 1693569600000. Esto se aplica
a todas las marcas de tiempo en Meshy API.
Name
created_at
Type
timestamp
Description
Marca de tiempo de cuando se creó la tarea, en milisegundos.
Name
expires_at
Type
timestamp
Description
Marca de tiempo de cuando caduca el resultado de la tarea, en milisegundos.
Name
finished_at
Type
timestamp
Description
Marca de tiempo de cuando se terminó la tarea, en milisegundos. Si la tarea aún no ha terminado, esta propiedad será 0.
Name
status
Type
string
Description
Estado de la tarea. Los valores posibles son uno de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Una serie de objetos URL de textura que son generados a partir de la tarea. Normalmente solo contiene un objeto URL de textura. Cada URL de textura tiene las siguientes propiedades:
Name
base_color
Type
string
Description
URL descargable de la imagen del mapa de color base.
Name
metallic
Type
string
Description
URL descargable de la imagen del mapa metálico.
Si la tarea se crea con enable_pbr: false, esta propiedad será omitida.
Name
normal
Type
string
Description
URL descargable de la imagen del mapa de normales.
Si la tarea se crea con enable_pbr: false, esta propiedad será omitida.
Name
roughness
Type
string
Description
URL descargable de la imagen del mapa de rugosidad.
Si la tarea se crea con enable_pbr: false, esta propiedad será omitida.
Name
emission
Type
string
Description
URL descargable de la imagen del mapa de emisión.
Si la tarea se crea con enable_pbr: false, o ai_model es meshy-5, esta propiedad será omitida.
Name
preceding_tasks
Type
integer
Description
El conteo de tareas anteriores.
El valor de este campo es significativo solo si el estado de la tarea es PENDING.
Name
task_error
Type
object
Description
Detalles de error para tareas fallidas. Consulta Errores para la referencia completa del objeto task_error.
Name
consumed_credits
Type
integer
Description
El número de créditos consumidos por esta tarea. Presente cuando el estado de la tarea es PENDING, IN_PROGRESS, o SUCCEEDED. Devuelve 0 para tareas FAILED (los créditos son reembolsados al fallar).