Repolode
Sandflow-ai

Sandflow-ai/sand3d

Una biblioteca de Python para describir objetos 3D mediante programas breves con partes con nombre sobre bpy de Blender, diseñada para que los LLM puedan generarlos.

Estrellas
724
Forks
83
Issues abiertos
2
Último commit
hace 15 horas

¿Qué es?

sand3d permite describir un objeto 3D como un programa breve de Python compuesto por perfiles, sólidos, ediciones, marcos, articulaciones y ensamblajes, que se ejecuta sobre el módulo bpy de Blender. Las partes, aristas y caras se identifican por nombre, en lugar de usar coordenadas calculadas manualmente, y el mismo programa siempre produce la misma malla.

La biblioteca exporta a GLB, URDF, USDA, OBJ y STL mediante una sola llamada de exportación; las variantes de USD se generan con las herramientas propias de USD. Las articulaciones con límites (bisagra, deslizante y continua) se conservan en los formatos exportados, por lo que es posible escribir y exportar directamente objetos articulados, como una lavadora con puerta móvil y cajón.

La documentación del proyecto incluye una referencia compacta de la API, de unos 3.600 tokens, pensada para usar en el prompt del sistema de un LLM, junto con pautas para ensamblajes de varias partes. En Hugging Face se publican varios conjuntos de datos abiertos de programas de sand3d, derivados de fuentes como Objaverse, modelos CAD y NVIDIA SimReady, con licencia CC BY 4.0.

Funciones clave

  • 01Construye objetos a partir de perfiles, sólidos, ediciones y marcos con nombre, en lugar de coordenadas sin procesar.
  • 02Define articulaciones con tipo, eje y rango para objetos articulados.
  • 03Exporta a GLB, URDF, USDA, OBJ y STL con una sola llamada.
  • 04Incluye una referencia compacta de la API, pensada para prompts del sistema de LLM.
  • 05Genera mallas deterministas a partir del mismo programa.

Casos de uso

  • Hacer que un LLM genere piezas 3D paramétricas a partir de programas de texto breves.
  • Crear objetos articulados con juntas para exportarlos a herramientas de robótica o simulación física, como URDF.
  • Exportar modelos creados mediante procedimientos a GLB o USD para visores y flujos de trabajo de Omniverse.
  • Crear un conjunto de datos de programas 3D legibles para entrenar o evaluar modelos.

Inicio rápido

  1. 1

    Instala sand3d con pip (necesita Python 3.13 o 3.11).

    pip install sand3d
  2. 2

    Escribe un programa con la API de sand3d y expórtalo a GLB, URDF, USDA, OBJ o STL con s3d.export.

Antes de usarlo

  • No hay un wheel de bpy para Python 3.12 y, a partir de bpy 5.2, tampoco lo hay para Mac con procesador Intel; por eso, en esas configuraciones hay que usar Python 3.11.
  • Blender se incluye en la instalación como módulo bpy, lo que hace que la dependencia sea pesada.

En colecciones

Temas

Preguntas frecuentes

¿Qué es sand3d?
Una biblioteca de Python para describir objetos 3D mediante programas breves con partes con nombre sobre bpy de Blender, diseñada para que los LLM puedan generarlos. sand3d permite describir un objeto 3D como un programa breve de Python compuesto por perfiles, sólidos, ediciones, marcos, articulaciones y ensamblajes, que se ejecuta sobre el módulo bpy de Blender. Las partes, aristas y caras se identifican por nombre, en lugar de usar coordenadas calculadas manualmente, y el mismo programa siempre produce la misma malla.
¿sand3d es gratuito? ¿Qué licencia tiene?
sand3d es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿sand3d sigue mantenido?
Mantenimiento activo. El último commit de sand3d fue el 6 nov 2026.
¿Para qué puedo usar sand3d?
Hacer que un LLM genere piezas 3D paramétricas a partir de programas de texto breves. Crear objetos articulados con juntas para exportarlos a herramientas de robótica o simulación física, como URDF. Exportar modelos creados mediante procedimientos a GLB o USD para visores y flujos de trabajo de Omniverse. Crear un conjunto de datos de programas 3D legibles para entrenar o evaluar modelos.
¿Cómo se instala sand3d?
Instala sand3d con pip (necesita Python 3.13 o 3.11).: pip install sand3d Escribe un programa con la API de sand3d y expórtalo a GLB, URDF, USDA, OBJ o STL con s3d.export.
¿Dónde consigo sand3d?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Sandflow-ai/sand3d

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados