Probablemente hayas oído hablar de cinemática inversa. IK es una herramienta popular en Unity y gráficos por computadora, pero si es la primera vez que intenta crear o utilizar un sistema de cinemática inversa, es posible que desee más detalles. Voy a explicar qué es IK, definir el vocabulario y revisar los usos. ¿Cuál es el vocabulario necesario para entender IK?
Antes de entrar en el corazón de IK, necesitamos definir un vocabulario relacionado con IK. IK es un método que se aplica a un cuerpo articulado. ¿Qué es un cuerpo articulado?
Cuerpo articulado
Un cuerpo articulado puede representar la mayoría de los cuerpos animados, como humanos y animales con esqueletos. En pocas palabras, un cuerpo articulado es un árbol de cadenas unidas. Las cadenas unidas están formadas por uniones y enlaces, donde un enlace es un cilindro rígido.
Tipos de articulaciones
En cuanto a las articulaciones, hay dos tipos. El primer tipo de articulación es una articulación revoluta. Está conectado a un enlace que gira a su alrededor.
Una articulación giratoria es muy parecida al pasador central de un reloj, con una manecilla de reloj como enlace.
Una articulación prismática es una articulación tal que el enlace conectado se traduce desde la articulación para extender / acortar el enlace.
Una articulación prismática actúa de manera muy similar a extender / retraer la longitud del asa retráctil de su equipaje. Si observa de cerca, un asa de equipaje retráctil tiene 4 articulaciones prismáticas. 2 articulaciones prismáticas a la mitad del asa y otras 2 articulaciones prismáticas en la parte superior del equipaje.
Si te confunden las articulaciones prismáticas, no te preocupes. No se usan con tanta frecuencia en cinemática inversa, y como se puede ver, ningún humano tiene articulaciones prismáticas, solo articulaciones revolutivas.
Estructura jerarquica
Un cuerpo articulado tiene una articulación de raíz. La unión de la raíz es la base de la estructura. La articulación de la raíz de un humanoide suele ser el centro de las caderas. El cuerpo articulado está formado por un árbol de articulaciones y enlaces, comenzando en la articulación de la raíz. Una nueva unión y enlace es similar a una nueva rama en un árbol. Un enlace / unión interno es un enlace / unión que está más cerca de la unión raíz dentro de la jerarquía de árbol del cuerpo articulado, en lo que se refiere a la unión / enlace dado. Un enlace / articulación externa es un enlace / articulación que está más lejos de la articulación raíz dentro de la jerarquía de árbol del cuerpo articulado.
Efector final
Un efector final es una posición en la posición más externa del enlace más externo. Es el extremo libre de la cadena de articulaciones y eslabones alternos. El efector final no es una articulación. El efector final es simplemente la posición al final de un cuerpo articulado. Un cuerpo articulado puede tener múltiples efectores finales, al igual que un árbol binario puede tener múltiples hojas.
End Effector se representa como un círculo verde aquí.
Articulaciones y poses
Una articulación es una rotación / traslación de una articulación que mueve un enlace conectado. Por otro lado, una pose es un conjunto de articulaciones articulares que resulta en la colocación del cuerpo articulado. En otras palabras, la pose es un valor vectorial de en lugar de un valor escalar.
¿Qué es la cinemática directa?
Antes de que podamos adentrarnos en lo que es la cinemática inversa, necesitamos descubrir qué es la cinemática directa. La función / algoritmo de cinemática directa adopta una pose como entrada y calcula la posición del efector final como salida. La cinemática directa es la función inversa de la cinemática inversa. Con Forward Kinematics, debe definir la pose completa de un cuerpo articulado para proporcionar la función / algoritmo con la entrada de pose. Esto significa que debe definir la articulación de cada articulación en el cuerpo articulado. Esto podría estar bien si tiene un número bajo de articulaciones, pero con un número elevado de articulaciones esto tiende a ser tedioso.
¿Qué es la cinemática inversa?
Ahora, imagine si desea que el efector final de su cuerpo articulado alcance una posición objetivo particular. Esto significa que conoce la posición del efector final a la que le gustaría apuntar, pero no sabe cuál debe ser la postura del cuerpo articulado para que el efector final alcance esta posición objetivo. ¡Aquí es donde brilla la cinemática inversa!
La cinemática inversa es la función / algoritmo inverso de la cinemática directa. La función / algoritmo de cinemática directa toma una posición de destino como entrada y calcula la pose requerida para que el efector final alcance la posición de destino: la pose es la salida.
Como puede ver, la entrada y la salida se cambian entre FK e IK. Con la cinemática inversa, no necesita definir toda la pose de un cuerpo articulado; esto se calcula para usted mediante el algoritmo IK. Con IK, solo necesita definir una posición como entrada.
La cinemática inversa hace todo el desafiante trabajo computacional de calcular cuál es la pose. En el estado anterior, hay un cuerpo articulado con alguna pose conocida. Define una posición objetivo para que el efector final intente alcanzar. Una vez que el algoritmo IK se aplica al cuerpo articulado, hemos alcanzado el estado posterior. El estado posterior muestra que se ha calculado una nueva pose, de modo que el efector final está ahora en la posición de destino.
¿Cuáles son los usos de IK?
En este punto, sabemos que IK se aplica a un cuerpo articulado, sabemos de qué está compuesto un cuerpo articulado y sabemos la diferencia entre IK y FK. Tenemos una buena visión general de IK hasta ahora, pero completémosla con algunos buenos casos de uso de IK también. IK puede usarse para que un brazo humanoide alcance un objeto / objetivo, como hemos visto. IK también se puede usar para pisar los pies, de modo que le decimos al pie dónde pisar y el IK descubre cómo configurar las articulaciones de las piernas. IK generalmente no se usa como una animación en sí misma (buscando un objeto), sino más bien como una herramienta de animación. Por lo tanto, si está implementando un ciclo de caminata, podría colocar algunos de los fotogramas clave utilizando la herramienta IK.
Otro punto clave sobre IK es que su objetivo / objetivo no se limita a la posición sola: su objetivo se puede definir como una rotación. Por ejemplo, si sus pies necesitan rotar en función de un terreno irregular, su objetivo de rotación IK puede definirse según la normalidad del piso. De esta manera, sus pies están inclinados a lo largo del piso, como cuando camina por una pendiente. Tenga en cuenta que también puede usar IK para que su cabeza (o incluso sus ojos) miren en cierta dirección. Si desea que su cabeza siga un objeto, puede usar IK para que la cabeza siga al objeto.