Haciendo el Humanizador.
Usando IA con el modelado 3D de OpenSCAD.
Duración del proyecto: Aprox. 2 horas el 12 de agosto de 2025.
Introducción: La chispa de una idea.
Use IA para crear un modelo humano básico con un personalizador utilizando Open-scad Scripting.
Todo el scripting fue producido por Gemini. Ninguna codificación por mi parte. Solo charlando para crear el script.
Fase 1: Estableciendo las bases.
Comprender las herramientas.
Para comenzar, a Gemini se le proporcionó un conjunto de recursos esenciales para comprender el contexto del proyecto y las mejores prácticas para OpenSCAD:
- primativeslibrary.scad:Una biblioteca de módulos auxiliares para crear formas básicas, que integramos en nuestro script.
- principiosrectores.pdf:Un documento crucial que describe las mejores prácticas para crear modelos OpenSCAD imprimibles en 3D, enfatizando el diseño múltiple y los principios paramétricos.
- OpenSCAD_Filtered_Documentation.pdf:Una guía de referencia para la sintaxis y funciones de OpenSCAD.
Estos archivos establecieron las "reglas de la carretera", asegurando que nuestro modelo final sería robusto, personalizable y listo para la impresión en 3D.
Fase 2: Primera iteración - Añadiendo articulaciones y poses.
El desafío: Articulación.
La primera tarea importante fue modificar los módulos estáticos de brazo y pierna para permitir la rotación en los codos y las rodillas. Esto implicó:
- Añadiendo un parámetro de ángulo (por ejemplo, elbow_angle) a las definiciones del módulo.
- Usando la transformación rotate() dentro de los módulos para doblar el antebrazo y la pierna inferior en relación con las extremidades superiores.
- Creando una sección de "Poses" en el Customizer con un menú desplegable (pose_selection).
- Implementar lógica condicional para establecer los nuevos ángulos de las articulaciones en función de la selección de poses del usuario.
Primero obstáculo: Errores simétricos.
Nuestro intento inicial de posar reveló un problema. En la pose de "Sentado", uno de los brazos apuntaba en la dirección equivocada.
El primer signo de problemas: un error simétrico en la postura de sentado.
Este fue un error clásico causado por eliminar la función mirror() del script original en favor de la manipulación directa del ángulo para ambos brazos. La solución fue reintroducir mirror() para el brazo derecho y negar los valores de rotación que se ven afectados por la operación de espejo para garantizar que tanto las poses simétricas como las asimétricas se representen correctamente.
Fase 3: Refinando las poses y agregando articulaciones visibles.
El Desafío: Poses no naturales y recortes.
Pruebas adicionales revelaron problemas más sutiles pero significativos. La T-Pose en realidad era una "I-Pose" con los brazos apuntando hacia arriba, y en otras poses, los brazos se atravesarían el torso.
El "T-Pose" era más bien un "I-Pose", lo que indica una lógica de rotación defectuosa. Los brazos de la pose de "Caminar" fueron descritos como "torcidos". Una clara señal de que necesita una revisión.
Esta retroalimentación provocó una revisión importante:
- Articulaciones visibles:Se añadieron cilindros simples a los codos y las rodillas, y esferas a los hombros y las caderas. Esto no solo mejoró el atractivo visual, sino que también hizo que los puntos de rotación fueran más evidentes.
- Arreglando el recorte:Las nuevas articulaciones del hombro se colocaron ligeramente fuera del torso. Esto proporcionó la holgura necesaria para evitar que los brazos se cruzaran con el cuerpo durante la rotación.
- Lógica de rotación revisada:Todo el sistema de rotación del brazo se reconstruyó para ser más intuitivo, separando el "levantamiento" (hacia un lado) del "balanceo" (hacia adelante y hacia atrás). Esto finalmente corrigió la T-Pose y hizo que otras poses como "Caminar" parecieran naturales.
Fase 4: Finalización y documentación.
El resultado: Versión 2.3
Después de varias rondas de iteración y depuración, llegamos a la versión final. El modelo ahora era completamente posable, dimensionalmente paramétrico y visualmente coherente con articulaciones claras y funcionales.
.Conclusión
La creación del Humanizador V2.3 fue un testimonio del poder del diseño iterativo y de la retroalimentación clara. Al comenzar con una base sólida de mejores prácticas y trabajar a través de cada problema de manera sistemática, transformamos una simple figura estática en un modelo 3D dinámico y altamente personalizable. Este viaje, desde una simple solicitud hasta un producto final pulido, muestra una colaboración exitosa entre la creatividad humana y la inteligencia artificial.
Principios Rectores para la IA.
Principios de IA para OpenSCAD y Impresión 3D// ============================================================================= // MÓDULOS DE INGENIERÍA // ============================================================================= /* * safe_cube() * Crea un módulo de cubo robusto. * - size: Un vector [x, y, z] para las dimensiones generales. * - center: Un booleano para centrar el cubo en todos los ejes. */ module safe_cube(size, center=false) { if (center) { translate([-size.x/2, -size.y/2, -size.z/2]) cube(
태그
모델 소스
