หลังจากที่อาทิตย์ที่ผ่านมาใน Class TD Animation(Rigging)ในครั้งนั้นได้มีการอธิบายในเรื่องของการ Rigging รายละเอียดต่างๆ ที่ชาว Riger จำเป็นต้องทราบรวมไปถึงการทำงานใน Hypergraph การฝึกความคุ้นเคยในการตั้งชื่อให้เหมาะสม การฝึกมองให้ลึกลงไปโดย วัตถุที่เห็นใน Viewport นั้นจะแยกเป็น Shape Node และ Transform Node
ในสัปดาห์นี้ ก็ได้มีการเพิ่มเติมทางด้านทฤษฏีต่างๆ ที่เป็นข้อควรจำและควรทำความเข้าใจก่อนจะเข้าสู่การ Rig จ๋า
โดยคราวนี้ผมสรุปไว้จากชั้นเรียน(เท่าที่เข้าใจ)ดังนี้...
- RRP Concept เป็นสิ่งที่ต้องมีความเข้าใจคำนี้ย่อมาจาก Rig Relocation Program ซึ่งทำหน้าที่สำหรับควบคุมการ position, rotation, and scale หลักของโมเดลเพื่อควบคุม joint shape controller ทั้งหมด
- Double Transformation เป็นผลมาจากการที่ Node เป้าหมาย มีการรับค่า Transform มากกว่า 1 ที่ เช่น ถ้าเรามี Polygon ชิ้น 1 มีการ Joint และสร้างตัว Control ไว้ หากมีการ Transform position จะเป็นปกติอยู่ หากเมื่อใดก็ตามที่เรา จับเอา Polygon นั้นเข้าไป Parent กับตัว Joint อีกทีหนึ่งนั้น ปัญหาจะเกิดทันที เรียกว่า Double Transformation คือมีการรับค่าการเปลี่ยนแปลง 2 ครั้ง ซึ่งจะเกิดการคลาดเคลื่อนทันที
- ในการ Rig นั้นให้เรามองการ Group เป็นการสร้าง Transform Node เพราะว่า Transform Node ในมายาไม่สามารถที่จะเปลี่ยนแกนหมุนได้ สามารถทดลองได้โดย สั่ง Rotation Shape ใน Viewport สังเกตุแกนของวัตถุนั้นๆ ให้ดีแล้วจากนั้น เลือก Freeze ดูค่า Transition Rotation Scale จะกลับเป็น 0 ทั้งหมด รวมทั้งแกนวัตถุนั้นก็จะกลับมาอยู่ในแนวแกนโลกเหมือนเดิมด้วย ดังนั้นเพิ่มที่จะฝืนแกน การใช้วิธี Group จึงแก้ไขจุดนี้ได้(การ Freeze หากมีการเปลี่ยน Pivot เราจะใช้ Mel หาตำแหน่งได้ยาก)
โดยสรุป _zGrp ไว้ตามเข้าใจดังนี้
Transform
สามารถ Freeze ได้
ไม่สามารถ เปลี่ยนจุดหมุน ได้
Joint
สามารถ เปลี่ยนจุดหมุน ได้
ไม่สามารถ Freeze ได้
ในการหมุน Rotation มาตราฐานนั้นตัวโปรแกรมจะตั้งมาเป็นชนิด Local เพื่อให้สามารถทำงานได้ง่าย(ง่ายต่อการเข้าใจเบื้องต้น) แต่ในการทำงานจริงๆ นั้น พี่เป้กได้กล่าวว่า Gimbal นั้นจะนิยมมากกว่า
คุณสมบัติของ Gimbal นั้น
- Scale X > แกนจะไม่หมุนไปตาม Transform
- Scale Y,Z > แกนนั้นๆ จะไปตาม Transform
จากข้อมูลข้างต้นนั้น เมื่อการใช้งานจริงเกิดขึ้นจึงมีโอกาสสิ่งที่เรียกว่า "Gimbal Lock" คือ
เมื่อ Rotation Y ไปที่ 90 องศา จะเกิดการซ้อนกันของแกน YZ ทำให้ไม่สามารถหมุนแกน X ได้นั้นเอง
เมื่อมีปัญหาดังกล่าว จึงมีทางออกเกิดขึ้นเรียกว่า "Gimbal Helper" เพื่อแก้ไขการเกิด Gimbal Lock (การสร้าง Control Layer ขึ้นอีกชั้นจะช่วยตรงจุดนี้ได้)
โดยสรุปคือ เมื่อ Control หลักเกิดการ Gimbal Lock ขึ้น จะมีตัว Control รองมาช่วยแก้ไขปัญหาที่เกิดขึ้น
**คีย์ลัด "Alt+Shift+d" คือการ Delete By Type > History**
***Attribule ที่ไม่ต้องการ Keyframe ให้ Add เพิ่มไว้ที่ Shape Node***
2 comments:
อ่า สำหรับบล๊อคนี้ ได้แต่ใบ้กิน ไม่มีคอมเม้นท์ใดๆ นอกจากจะบอกว่า อัฐสู้สู้...วู้..
ก็อ่านอยู่
Post a Comment