คุณอาจเคยได้ยินเรื่อง Inverse Kinematics IK เป็นเครื่องมือยอดนิยมใน Unity และคอมพิวเตอร์กราฟิก แต่ถ้านี่เป็นครั้งแรกที่คุณพยายามสร้างหรือใช้ระบบ Inverse Kinematics คุณอาจต้องการรายละเอียดเพิ่มเติม ฉันจะอธิบายว่า IK คืออะไรนิยามคำศัพท์และทบทวนการใช้งาน คำศัพท์ที่จำเป็นต่อการเข้าใจ IK คืออะไร?
ก่อนที่เราจะเข้าสู่ใจกลางของ IK เราต้องกำหนดคำศัพท์ที่เกี่ยวข้องกับ IK IK เป็นวิธีการที่นำไปใช้กับร่างกายที่พูดชัดแจ้ง ร่างกายที่ประกบคืออะไร?
ก้องร่างกาย
ร่างกายที่เปล่งเสียงสามารถเป็นตัวแทนของร่างกายเคลื่อนไหวส่วนใหญ่เช่นมนุษย์และสัตว์ที่มีโครงกระดูก พูดง่ายๆก็คือร่างกายที่เชื่อมต่อเป็นต้นไม้ที่เชื่อมโยงกัน โซ่ที่เชื่อมโยงนั้นประกอบไปด้วยข้อต่อและตัวเชื่อมโยงซึ่งการเชื่อมโยงนั้นเป็นกระบอกสูบที่แข็ง
ประเภทของข้อต่อ
สำหรับข้อต่อมีสองประเภท ข้อต่อชนิดแรกคือข้อต่อแบบหมุนรอบ มันเชื่อมต่อกับลิงค์ที่หมุนรอบ ๆ
รอยต่อที่หมุนรอบนั้นคล้ายกับหมุดกลางของนาฬิกา - โดยใช้เข็มนาฬิกาเป็นลิงค์
ข้อต่อที่เป็นแท่งปริซึมเป็นข้อต่อที่ทำให้การเชื่อมต่อนั้นแปลจากข้อต่อเพื่อขยาย / ย่อการเชื่อมโยง
ข้อต่อที่เป็นแท่งปริซึมทำหน้าที่คล้ายกับการยืด / หดความยาวของที่จับซึ่งพับเก็บได้บนกระเป๋าของคุณ หากคุณมองอย่างใกล้ชิดที่จับกระเป๋าแบบยืดหดได้มีข้อต่อปริซึม 4 จุด ข้อต่อที่เป็นแท่งปริซึม 2 อันครึ่งหนึ่งลงที่จับและอีก 2 ข้อต่อที่เป็นแท่งปริซึมลงไปจนถึงที่จับที่ด้านบนของกระเป๋า
หากคุณกำลังสับสนกับข้อต่อปริซึมไม่ต้องกังวล พวกมันไม่ได้ใช้บ่อยใน Inverse Kinematics และอย่างที่คุณสามารถบอกได้ว่าไม่มีมนุษย์คนไหนที่มีข้อต่อปริซึม - เพียงแค่หมุนรอบข้อต่อ
โครงสร้างลำดับชั้น
ร่างกายที่มีข้อต่อมีข้อต่อราก รอยต่อรากเป็นฐานของโครงสร้าง ข้อต่อรากของแอนดรอยด์มักเป็นจุดศูนย์กลางของสะโพก ร่างกายที่เชื่อมต่อนั้นประกอบขึ้นจากต้นไม้ของข้อต่อและจุดเชื่อมต่อโดยเริ่มจากข้อต่อราก ข้อต่อและลิงก์ใหม่คล้ายกับกิ่งใหม่บนต้นไม้ ลิงค์ในบอร์ด / ข้อต่อคือลิงค์ / ข้อต่อที่อยู่ใกล้กับข้อต่อรากในลำดับชั้นต้นไม้ของลำตัวที่พูดชัดแจ้งเนื่องจากมันเกี่ยวข้องกับข้อต่อที่ได้รับ / ลิงก์นอก / ข้อต่อคือการเชื่อมโยง / การเชื่อมต่อที่อยู่ห่างจากรอยต่อรากในลำดับชั้นต้นไม้ของลำตัวที่เชื่อมต่อ
สิ้นสุด Effector
เอฟเฟกต์สุดท้ายคือตำแหน่งที่อยู่นอกตำแหน่งที่สุดของลิงค์นอกสุด มันเป็นจุดสิ้นสุดของโซ่ของข้อต่อและการเชื่อมโยงที่สลับกันฟรี เอฟเฟกต์ท้ายไม่ได้เป็นข้อต่อ end effector เป็นเพียงตำแหน่งที่ส่วนท้ายของร่างกายที่พูดชัดแจ้ง ร่างกายที่มีข้อต่อสามารถมีเอฟเฟกต์ท้ายหลายแบบเช่นเดียวกับต้นไม้ไบนารีสามารถมีหลายใบ
End Effector เป็นภาพวงกลมสีเขียวที่นี่
ข้อต่อและโพสท่า
ข้อต่อคือการหมุน / แปลของข้อต่อซึ่งย้ายลิงค์ที่เชื่อมต่อ ในทางตรงกันข้ามท่าทางเป็นชุดของข้อต่อที่ส่งผลในการวางตำแหน่งร่างกายที่พูดชัดแจ้ง กล่าวอีกนัยหนึ่งท่าทางเป็นค่าเวกเตอร์แทนค่าสเกลาร์
Kinematics ส่งต่อคืออะไร?
ก่อนที่เราจะรู้ว่า Inverse Kinematics นั้นคืออะไรเราต้องหาว่า Kinematics ล่วงหน้าคืออะไร ฟังก์ชัน / อัลกอริธึมไปข้างหน้าใช้ท่าทางเป็นอินพุตและคำนวณตำแหน่งของเอฟเฟกต์ท้ายเป็นเอาต์พุต ส่งต่อ Kinematics เป็นฟังก์ชันผกผันของ Inverse Kinematics ด้วยการส่งต่อ Kinematics คุณต้องกำหนดท่าทางทั้งหมดของร่างกายที่เชื่อมต่อเพื่อที่จะให้ฟังก์ชั่น / อัลกอริทึมที่มีการป้อนข้อมูลท่าทาง ซึ่งหมายความว่าคุณจำเป็นต้องกำหนดข้อต่อของข้อต่อแต่ละข้อในร่างกายที่เชื่อมต่อ นี่อาจเป็นเรื่องที่ดีถ้าคุณมีข้อต่อจำนวนน้อย แต่ด้วยข้อต่อจำนวนมากซึ่งมีแนวโน้มที่จะน่าเบื่อ
Kinematics ผกผันคืออะไร
ทีนี้ลองคิดดูว่าคุณต้องการให้เอฟเฟกต์สุดท้ายของร่างกายคุณเชื่อมต่อไปยังตำแหน่งเป้าหมายที่ต้องการหรือไม่ ซึ่งหมายความว่าคุณทราบตำแหน่งเอฟเฟกต์สุดท้ายที่คุณต้องการกำหนดเป้าหมาย แต่คุณไม่ทราบว่ารูปแบบของร่างกายที่เปล่งออกมานั้นต้องเป็นอะไรสำหรับเอฟเฟกต์สุดท้ายเพื่อไปยังตำแหน่งเป้าหมายนี้ นี่คือสิ่งที่ Inverse Kinematics ส่องประกาย!
Inverse Kinematics เป็นฟังก์ชัน / อัลกอริทึมของ Inverse Kinematics ฟังก์ชัน / อัลกอริธึมไปข้างหน้ารับตำแหน่งเป้าหมายเป็นอินพุทและคำนวณท่าทางที่ต้องการสำหรับเอฟเฟกต์ท้ายถึงตำแหน่งเป้าหมาย - โพสต์นั้นเป็นเอาต์พุต
อย่างที่คุณเห็นอินพุตและเอาต์พุตถูกสลับระหว่าง FK และ IK ด้วย Inverse Kinematics คุณไม่จำเป็นต้องกำหนดท่าทางทั้งหมดของตัวประกบซึ่งจะถูกคำนวณโดยอัลกอริทึม IK ของคุณ ด้วย IK คุณจะต้องกำหนดตำแหน่งเป็นอินพุต
Inverse Kinematics ทำผลงานการคำนวณที่ท้าทายทั้งหมดในการคำนวณว่ารูปแบบใด ในรัฐก่อนมีร่างกายก้องกับท่าที่รู้จักกันบางอย่าง มันกำหนดตำแหน่งเป้าหมายสำหรับเอฟเฟกต์ท้ายให้พยายามเข้าถึง เมื่ออัลกอริทึม IK ถูกนำไปใช้กับร่างกายที่พูดชัดแจ้งเราได้มาถึงหลังจากรัฐ The After State แสดงให้เห็นว่ามีการคำนวณท่าทางใหม่เช่นว่าเอฟเฟกต์ท้ายจะอยู่ที่ตำแหน่งเป้าหมาย
ผลิตภัณฑ์ IK ใช้อย่างไร
ณ จุดนี้เรารู้ว่า IK ถูกนำไปใช้กับร่างกายที่มีข้อต่อเรารู้ว่าร่างกายที่ทำขึ้นนั้นเป็นอะไรและเรารู้ถึงความแตกต่างระหว่าง IK และ FK เรามีภาพรวมที่ดีของ IK จนถึงตอนนี้ แต่ลองปัดเศษด้วยกรณีการใช้งานที่ดีของ IK ด้วย IK สามารถใช้แขนมนุษย์ในการเข้าถึงวัตถุ / เป้าหมายตามที่เราเห็น IK ยังสามารถใช้สำหรับการเหยียบเท้าเช่นที่เราบอกเท้าว่าจะไปยังตำแหน่งใดและ IK จะอธิบายวิธีการกำหนดค่าข้อต่อขา IK มักจะไม่ได้ใช้เป็นภาพเคลื่อนไหว (เข้าถึงวัตถุ) แต่เป็นเครื่องมือภาพเคลื่อนไหว ดังนั้นหากคุณกำลังใช้วงจรการเดินคุณสามารถกำหนดตำแหน่งของเฟรมหลักบางส่วนโดยใช้เครื่องมือ IK
อีกประเด็นสำคัญเกี่ยวกับ IK คือเป้าหมาย / เป้าหมายของคุณไม่ได้ จำกัด อยู่ที่ตำแหน่งเพียงอย่างเดียว - เป้าหมายของคุณสามารถกำหนดเป็นการหมุนเวียน ตัวอย่างเช่นหากเท้าของคุณจำเป็นต้องหมุนตามภูมิประเทศที่ไม่สม่ำเสมอเป้าหมายการหมุน IK ของคุณสามารถกำหนดได้ตามปกติของพื้น วิธีนี้ทำให้เท้าของคุณเอียงไปตามพื้นเช่นเมื่อคุณกำลังเดินขึ้นทางลาด โปรดทราบว่าคุณสามารถใช้ IK เพื่อให้หัวของคุณ (หรือแม้กระทั่งดวงตา) มองไปในทิศทางที่แน่นอน หากคุณต้องการให้หัวติดตามวัตถุคุณสามารถใช้ IK เพื่อให้หัวติดตามวัตถุได้