Saya sangat menyarankan tautan di atas untuk ikhtisar tingkat tinggi Invers Kinematics. Ini melampaui jargon IK, penggunaan / aplikasi IK, dan deskripsi tingkat tinggi dari kinematika maju dan kinematika terbalik.
Apa kegunaan IK?
IK dapat digunakan untuk lengan humanoid untuk meraih objek / target, seperti yang telah kita lihat. IK juga dapat digunakan untuk loncatan kaki, sehingga kami memberi tahu kaki di mana harus melangkah dan figur IK bagaimana mengkonfigurasi sambungan kaki. IK biasanya tidak digunakan sebagai animasi itu sendiri (meraih objek), tetapi lebih sebagai alat animasi. Jadi, jika Anda menerapkan siklus berjalan, Anda bisa memposisikan beberapa bingkai kunci menggunakan alat IK.
Poin kunci lain tentang IK adalah bahwa sasaran / target Anda tidak terbatas pada posisi saja - tujuan Anda dapat didefinisikan sebagai rotasi. Misalnya, jika kaki Anda perlu berputar berdasarkan medan yang tidak rata, sasaran rotasi IK Anda dapat ditentukan berdasarkan normal lantai. Dengan cara ini kaki Anda condong di lantai, seperti saat Anda berjalan menanjak. Perhatikan bahwa Anda juga dapat menggunakan IK untuk membuat kepala Anda (atau bahkan mata) melihat ke arah tertentu. Jika Anda ingin kepala Anda mengikuti objek, Anda dapat menggunakan IK agar kepala mengikuti objek di sekitar.
Bagaimana cara menerapkan batas bersama?
Saya biasanya menerapkan batas bersama dengan pernyataan if sederhana. Sebagai contoh, ini akan bekerja untuk sambungan revolute.
if (limb.rotation > 45.0f) limb.rotation = 45.0f;
if (limb.rotation < -45.0f) limb.rotation = -45.0f;
Ini jauh lebih sedikit matematis daripada Jacobian, dan sangat mudah diimplementasikan setelah Anda memiliki Jacobian bekerja.