กินามิกส์ย้อนกลับ (IK) เป็นเทคนิคทั่วไปในการแอนิเมชั่นคอมพิวเตอร์เพื่อทำให้ตัวละครเคลื่อนไหวและโต้ตอบอย่างจริงจังกับสภาพแวดล้อมได้อย่างมีประสิทธิภาพกระบวนการสร้างการเคลื่อนไหวที่สมจริงสำหรับตัวละครมักต้องใช้การหมุนหลายรอบและการปรับเล็กน้อยของข้อต่อต่างๆด้วย IK คุณสามารถโพสต์และแอนิเมชั่นส่วนตัวละครหลายส่วนโดยโพสต์หรือปรับแต่งวัตถุเดียว
เทคนิคแอนิเมชั่นนี้สามารถให้ทางออกสำหรับตัวอย่างต่อไปนี้:
การควบคุม IK
คุณสามารถใช้ IKControl เพื่อเพิ่ม IK ให้กับตัวละครของคุณภายนอกเอเดอร์แอนิเมชันสตูดิโอช่วยให้คุณสามารถใช้ IK โดยอัตโนมัติกับตัวละครทั้งหมด เช่น R15, Rthro และตัวละครสกินที่นำเข้าแบบกำหนดเองเพื่อสร้างการเคลื่อนไหวและการโต้ตอบที่สมจริงในประสบการณ์ของคุณ
เมื่อเพิ่ม IKControl ให้ตั้งค่า คุณสมบัติที่จำเป็น อย่างถูกต้องเพื่อหลีกเลี่ยงผลการแสดงอันไม่คาดคิดและไม่เป็นธรรมชาติเช่นเดียวกับทุกแอนิเมชั่น ทดสอบ IKControls ของคุณ เพื่อให้แน่ใจว่าคุณได้รับพฤติกรรมที่ต้องการ
คุณสมบัติที่จำเป็น
เมื่อเพิ่ม IKControl ให้กับตัวละครของคุณ Humanoid หรือ AnimationController คุณต้องตั้งค่าคุณสมบัติที่จำเป็นต่อไปนี้เพื่อเปิดใช้งาน IK:
คุณสมบัติ | คําอธิบาย |
---|---|
Type | ระบุประเภทพฤติกรรมของการควบคุม IK ดู Enum.IKControlType สำหรับรายการตัวเลือกพฤติกรรม ประเภทพฤติกรรมทั่วไปคือ Position หรือ Transform |
EndEffector | A BasePart หรือ Bone ในตัวละครของคุณที่ติดตามไปที่ Targetตัวอย่างเช่น คุณสามารถตั้งค่ากระดูก มือซ้าย เป็น EndEffector เพื่อเข้าถึงชุดของวัตถุที่กำหนดเป็น Target |
Target | วัตถุที่ EndEffector ไปถึงหรือชี้ไปที่ วัตถุ Target สามารถเป็นวัตถุใดก็ได้ที่มีตำแหน่งในโลก |
ChainRoot | กำหนดลำดับของ BaseParts หรือ Bones ที่ IKControl มีผลกระทบชิ้นส่วนทั้งหมดที่เชื่อมต่อระหว่าง และ ได้รับผลกระทบจากประเภทพฤติกรรมที่กำหนดไว้ตัวอย่างเช่น หากตัวละครของคุณมี มือซ้าย ถูกตั้งค่าเป็น Target คุณสามารถใช้ IK กับแขนซ้ายทั้งหมดโดยการตั้ง ChainRoot ให้เป็น แขนซ้ายบนสุด เพื่อใช้ IK เฉพาะส่วนที่อยู่ด้านล่างข้อศอก ตั้ง ChainRoot ไปยัง แขนล่างซ้าย |
ทดสอบ IKControls
คุณสามารถเพิ่มและแก้ไขโปรแกรม IKControl ได้โดยตรงหรือผ่าน Explorerคุณสามารถเพิ่มและทำการเปลี่ยนแปลงต่อ IKControl ในระหว่างการทดสอบการเล่นเพื่อตรวจสอบอย่างรวดเร็วว่าคุณสมบัติต่างๆ ส่งผลต่อการเคลื่อนไหวของตัวละครอย่างไร
เพื่อทดสอบ IKControl อย่างรวดเร็วโดยใช้ Attachment เป็นเป้าหมาย:
ในแท็บ ทดสอบ ของแถบเครื่องมือ เลือก เล่น เพื่อเริ่มการทดสอบเล่น
คลิกไอคอน ⊕ ที่อยู่ติดกับรูปแบบตัวละครของคุณ HumanoidRootPart และเพิ่ม ส่วนแนบ
เลือก แนบไฟล์ และใช้เครื่องมือ ย้าย เพื่อตำแหน่งวัตถุข้างหน้าตัวละครของคุณในหน้าต่างมุมมอง
ในหน้าต่าง สํารวจ เลือกไอคอน ⊕ ที่อยู่ติดกับตัวละครของคุณ Humanoid และเพิ่ม IKControl
เลือก IKControl และตั้งค่าคุณสมบัติต่อไปนี้ในแผง คุณสมบัติ :
- ประเภท : เลือก Transform จากกล่องเลื่อน
- เป้าหมาย : เลือกวัตถุ แนบแน่น ที่สร้างขึ้นใหม่ใน Explorer
คุณสมบัติของ IKControl แผงนักสํารวจ - โมเดลตัวละคร แขนซ้ายของตัวละครของคุณควรไปถึงเป้าหมายแล้ว Attachmentคุณสามารถทดลองกับการย้าย Attachment หรือแก้ไขคุณสมบัติ IKControl เพื่อให้ได้ผลลัพธ์ที่แตกต่างกัน
เพิ่มข้อจํากัด
คุณสามารถใช้ Constraints เพื่อจำกัดวิธีที่ข้อต่อสามารถเคลื่อนที่ได้เมื่อถึงเป้าหมายข้อจำกัดสามารถรับประกันข้อต่อเช่นข้อศอกและเข่าโค้งตามธรรมชาติหรือทำให้ข้อต่อเครื่องกลหมุนในทิศทางเฉพาะได้


เพื่อเพิ่มข้อจํากัดให้กับตัวละครของคุณโดยใช้ IKControl คุณ IKControl และข้อจํากัดต้องตรงตามเงื่อนไขต่อไปนี้:
- ไฟล์แนบที่อ้างถึงในคุณสมบัติของข้อจํากัด Attachment0 / Attachment1 จะติดกับชิ้นส่วนเดียวกับ Class.Motor6D``Class.Motor6D.Part0|Part0 / Part1
- ตําแหน่งที่สัมพันธ์ของ Attachment0 / Attachment1 ต้องเท่ากับตําแหน่งที่ตรงกันของ Class.Motor6D``Class.Motor6D.C0|C0 / C1 CFrames
- ข้อจํากัดและ IKControl แชร์พ่อเดียวกัน Model
คำแนะนำต่อไปนี้อธิบายขั้นตอนการเพิ่ม HingeConstraint เพื่อจํากัดการหมุนข้อศอกของตัวละครและเพิ่ม BallSocketConstraint เพื่อจํากัดมุมการหมุน
ข้อศอก
ตัวละคร Roblox R15 มีการแนบไฟล์ในข้อต่อแล้วที่คุณสามารถใช้เพื่อใช้ข้อจำกัดของข้อศอกสำหรับข้อศอกทั้ง LeftUpperArm และ LeftLowerArm รวมถึง LeftElbowRigAttachmentนอกจากการเพิ่มข้อจำกัดแล้ว คุณยังต้องเพิ่มการแนบทางเด็กเพิ่มเติมให้กับแต่ละส่วน LeftElbowRigAttachment เพื่อระบุว่าแขนของข้อศอกสามารถหมุนได้เกี่ยวกับแกนไหน
เพื่อเพิ่ม HingeConstraint และสิ่งแนบที่เป็นลูก:
ใน Explorer ค้นหา แขนซ้ายล่างของโมเดล และคลิกที่ปุ่ม ⊕
เพิ่ม ข้อจำกัดบานพับ ด้วยชื่อ LeftElbowConstraint
ใน Explorer นําไปยัง LeftUpperArm.LeftElbowRigAttachment และเพิ่มการแนบประกอบ:
คลิกที่ปุ่ม ⊕ เพื่อเพิ่ม แนบไฟล์ ด้วยชื่อ LeftElbowConstraintAttachment0
ในหน้าต่างดูภาพ เลือกส่วนแนบและใช้เครื่องมือ หมุน เพื่อหมุนส่วนแนบให้สีเหลือง เป็นแกนหมุนของข้อศอกที่คาดว่าจะหมุน
ตั้งค่าความจํากัดข้อศอกซ้าย LeftElbowConstraint.Attachment0 ไปยังแนบในใหม่นี้
ใน Explorer นําทางไปยัง LeftLowerArm.LeftElbowRigAttachment ของโมเดลของคุณเพื่อเพิ่มการแนบประกอบ:
- คลิกที่ปุ่ม ⊕ และเพิ่ม แนบไฟล์ ด้วยชื่อ LeftElbowConstraintAttachment1
- ตั้งค่าคุณสมบัติ LeftUpperArm.LeftElbowConstraint.Attachment1 ให้กับส่วนแนบใหม่นี้
- คัดลอกคุณสมบัติ LeftElbowConstraintAttachment0.CFrameOrientation และวางลงในค่า LeftElbowConstraint.Attachment1.CFrameOrientation
ทดสอบ IKControl ของคุณเพื่อตรวจสอบว่าข้อศอกหมุนเฉพาะเกี่ยวกับแกนหมุนของมันเท่านั้น:
ข้อมือ
แม้จะมีข้อจำกัดข้อศอก แต่ IKControl ยังสามารถผลิตท่าทางที่ไม่สมจริงกับข้อศอกได้

คุณสามารถปรับปรุงสิ่งนี้โดยการเพิ่ม BallSocketConstraint เพื่อจำกัดการหมุนของข้อศอกแม้ว่าจะคล้ายกับกระบวนการเพิ่ม HingeConstraint ในข้อศอก คุณสามารถใช้คุณสมบัติ LimitsEnabled บนข้อจํากัดนี้เพื่อควบคุมช่วงการเคลื่อนไหวของข้อศอกต่อไป
เพื่อเพิ่ม BallSocketConstraint สําหรับข้อมือ:
- ในสํารวจค้นหารุ่นของคุณ มือซ้าย และคลิกที่ปุ่ม ⊕ 1. เพิ่ม BallSocketConstraint ด้วยชื่อ LeftWristConstraint
- ค้นหา LeftLowerArm.LeftWristRigAttachment ของโมเดลของคุณและเพิ่มอุปกรณ์เสริม:
- คลิกที่ปุ่ม ⊕ และเพิ่ม แนบไฟล์ ด้วยชื่อ LeftWristConstraintAttachment0
- ในหน้าต่างดูภาพ เลือกส่วนแนบและใช้เครื่องมือ หมุน เพื่อหมุนส่วนแนบให้สีเหลืองของ PrimaryAxis ชี้ไปที่ปลายนิ้วของรูปแบบ
- ตั้งค่าคุณสมบัติ LeftWristConstraint.Attachment0 ให้เป็น LeftWristConstraintAttachment0 ใหม่
- ค้นหา LeftHand.LeftWristRigAttachment ของโมเดลของคุณและเพิ่มอะแดปเตอร์:
- คลิกที่ปุ่ม ⊕ และเพิ่ม แนบไฟล์ ด้วยชื่อ LeftWristConstraintAttachment1
- คัดลอกคุณสมบัติ LeftWristConstraintAttachment0.CFrameOrientation และวางลงในคุณสมบัติ LeftWristConstraintAttachment1.CFrameOrientation 3. ตั้งค่าคุณสมบัติ LeftWristConstraint.Attachment1 เป็น LeftWristConstraintAttachment1 ใหม่
- ใน Explorer เลือก ข้อจํากัดข้อศอกซ้าย 5. ในตัวแก้ไขคุณสมบัติ กำลังติดตาม:
- เปิดใช้งาน ขีดจํากัดที่เปิดใช้งาน .
- ตั้ง มุมบนสุด เป็น 80 .สิ่งนี้ควบคุมว่าแกนของข้อจํากัดสามารถหมุนได้เท่าใดและ 80 องศาเป็นจํานวนที่ข้อศอกควรสามารถโค้งได้
- ขึ้นอยู่กับตัวละครของคุณคุณอาจต้องปรับเปลี่ยนทิศทางที่กรวยชี้ไปคุณสามารถทำเช่นนี้โดยใช้เครื่องมือ หมุน เพื่อหมุนความจํากัด แนบเนียน0 เมื่อเลือก ข้อจํากัดข้อศอกซ้าย จะปรากฏกรวยสีเขียวที่แสดงถึงช่วงการเคลื่อนไหวของข้อศอก

เมื่อตั้งควบคุมแล้ว ทดสอบ IKControl ด้วยมือชี้ลงข้างหน้าตัวละครและข้อศอกควรหมุนและโค้งอย่างเป็นจริงมากขึ้น