Grillo Tools for Unity - Documentación

Unity Tool Documentation

Curve Mesh Deformer Tool

Adaptación de módulos rectos a configuraciones curvas.

Portada wiki / Curve Mesh Deformer Tool

Demo Video

Video de demostración

El video demo puede mostrar un módulo recto antes y después del curvado, junto con una comprobación técnica final.

Tool 08

Curve Mesh Deformer Tool es la herramienta de deformación geométrica de Grillo Tools for Unity. Está pensada para curvar meshes directamente dentro del editor, sin necesidad de salir a un paquete externo para generar una versión arqueada de una pieza recta.

Curve Mesh Deformer Tool está orientada a tareas como:

  • Curvar módulos rectos sin remodelarlos manualmente.
  • Adaptar piezas a soluciones circulares o arqueadas.
  • Probar rápidamente variantes de radio y ángulo en escena.
  • Preparar geometría para composiciones curvas dentro de Unity.
  • Restaurar la geometría previa si se quiere volver atrás.

Es especialmente útil cuando la base del trabajo ya está construida en recto y lo que se necesita es transformar esa solución a una versión curva manteniendo el ritmo de producción.

Cómo funciona

La herramienta recopila los MeshFilter válidos de la selección actual, calcula el tramo global que ocupa la selección en el eje de curvatura elegido y redistribuye sus vértices sobre un arco.

Puntos importantes de funcionamiento:

  • Requiere objetos con MeshFilter y sharedMesh.
  • Puede incluir también los hijos de la selección.
  • Puede trabajar duplicando la malla antes de deformar o deformando directamente una instancia editable.
  • Puede desempaquetar instancias de prefab antes del proceso.
  • Si el objeto usa Additional Vertex Streams, intenta deformarlos también.
  • Incluye una acción de Reset Geometry para restaurar la geometría respaldada por la herramienta.

1. Bend Axis

Permite elegir el eje principal sobre el que se reparte el arco X, Y y Z.

Este eje define la dirección longitudinal de la pieza antes de curvarse. En otras palabras, marca sobre qué tramo lineal se proyecta el arco. Elegir bien este parámetro es una de las decisiones más importantes para obtener un resultado coherente.

2. Bend Side

Define hacia que lado se arquea la pieza. No cambia la lógica del arco, pero si su orientación espacial. Opciones:

  • Positive
  • Negative

3. Arc Angle

Define el ángulo total del arco en grados.

Comportamiento importante:

  • La herramienta no permite deformar con un ángulo efectivo de 0.
  • El valor puede ser positivo o negativo, lo que afecta al sentido de la deformación.

Interpretación práctica:

  • Ángulos bajos producen curvaturas suaves.
  • Ángulos más altos generan un arqueado más evidente.
  • Cuanto mayor es el ángulo, más visible es la transformación sobre la pieza.

4. Auto Radius y Radius

Auto Radius

Cuando está activado, la herramienta calcula el radio automáticamente a partir del tramo total que ocupa la selección y del ángulo definido.

Esto resulta muy útil para:

  • Hacer pruebas rápidas.
  • Curvar composiciones completas sin calcular radios manualmente.
  • Mantener una proporción coherente entre longitud seleccionada y curvatura.

Radius

Cuando Auto Radius está desactivado, el usuario puede definir el radio manualmente.

Esto da un control más directo sobre el resultado final y permite buscar una curvatura concreta independientemente del largo total de la selección.

Lectura práctica:

  • Radios mayores generan curvas más abiertas.
  • Radios menores producen una deformación más cerrada.

5. Include Children

Define si la herramienta debe buscar MeshFilter solo en los objetos seleccionados o también en toda su jerarquía hija.

  • Cuando está activado se incluyen los MeshFilter encontrados en los objetos descendientes.
  • Cuando está desactivado solo se procesan los MeshFilter del objeto raíz seleccionado.

Esto es muy útil cuando una pieza está formada por varios subelementos que deben curvarse como un conjunto.

6. Duplicate Mesh

Define si la herramienta crea una copia editable de la malla antes de deformarla.

  • Cuando está activado la malla se clona y se asigna una versión nueva antes de modificar vértices.
  • Cuando está desactivado, si la malla ya es una instancia editable y no un asset compartido, puede deformarse directamente.

Este parámetro es importante porque afecta al nivel de seguridad del flujo:

  • Activado: flujo más conservador y seguro.
  • Desactivado: flujo más directo y ligero sobre meshes ya instanciadas.

7. Unpack Prefab Instances

Si esta opción está activada, la herramienta desempaqueta las instancias de prefab implicadas antes de deformar. Su objetivo es evitar conflictos al modificar geometría en elementos que siguen ligados a una instancia de prefab.

Cuándo usarlo:

  • Cuando la selección contiene prefabs instanciados en escena.
  • Cuando quieres convertir una instancia en una versión deformada y única.

8. Project To Plane y Projection Plane

Project To Plane

Esta opción aplana previamente la geometría sobre un plano antes de aplicar la curvatura.

Es útil cuando:

  • La pieza tiene una desviación previa que conviene neutralizar.
  • Quieres partir de una base más limpia antes de curvar.
  • Buscas una lectura más uniforme del arqueado.

Projection Plane

Solo se habilita cuando Project To Plane está activado. Este parámetro define sobre que plano se hace esa proyección previa. En modo automático, la herramienta decide el eje de proyección a partir del eje de curvatura.

Opciones:

  • AutoByBendAxis
  • XY
  • XZ
  • YZ

9. Recalculate Normals

Si está activo, la herramienta recalcula las normales después de deformar la malla.

Esto suele ser recomendable cuando:

  • La deformación modifica claramente la lectura superficial.
  • Se quiere evitar shading incorrecto tras el arqueado.

Si se desactiva, la geometría cambia pero se conserva la información de normales existente, lo que en ciertos casos puede usarse de forma intencionada, aunque normalmente requiere más control técnico.

10. Subdivisions

Subdivisions

Pre-Subdivide

Permite subdividir la malla antes de deformarla.

Esto es especialmente útil cuando:

  • La geometría original tiene muy pocos segmentos.
  • La curvatura se vería demasiado quebrada con la topología actual.
  • Quieres una lectura más suave del arco.

Subdivide Iterations

Define cuántas iteraciones de subdivision se aplican antes de deformar.

Valores más altos:

  • Generan más vértices.
  • Suavizan la deformación.
  • Incrementan el coste de procesamiento.

Max Vértices

Marca un límite de seguridad para evitar que la subdivision dispare el número de vértices de forma excesiva.

Comportamiento importante:

  • Si la subdivision supera ese límite, la herramienta omite la subdivision y registra una advertencia.

Más información

Buenas prácticas

  • Activa Duplicate Mesh si quieres un flujo más seguro y menos destructivo.
  • Usa Auto Radius para iterar rápido y cambia a Radius manual cuando ya busques un resultado exacto.
  • Si la malla se rompe visualmente al curvarse, revisa primero el Bend Axis.
  • Usa Pre-Subdivide solo cuando haga falta, porque aumenta coste y densidad geométrica.
  • Si trabajas con prefabs instanciados, suele ser buena idea mantener activo Unpack Prefab Instances.
  • Después de deformar, puede ser muy útil revisar el resultado con Mesh Debug Tool.

Notas de comportamiento

  • La herramienta trabaja sobre geometría, no sobre placement ni sobre splines.
  • La deformación se calcula usando el tramo global de la selección sobre el eje elegido.
  • Si Include Children está activo, varios submeshes pueden deformarse como un conjunto.
  • Additional Vertex Streams solo se deforman si su número de vértices coincide con la malla base.
  • La herramienta recalcula tangentes cuando recompone la malla deformada.
  • Reset Geometry depende de que exista un respaldo previo válido.

Limitaciones

  • No funciona si la selección no contiene MeshFilter válidos.
  • No puede deformar con un Arc Angle efectivo de cero.
  • La subdivision puede aumentar mucho el coste si se usa con valores altos.
  • El resultado depende bastante de la topología original del mesh.
  • Si una pieza tiene una orientación base poco clara, elegir mal el eje puede producir resultados inesperados.
  • La restauración no sustituye a una gestión completa de versiones: está pensada como ayuda de iteración dentro del editor.