Fandom

Thai Blender Wiki

Main Article/3D computer graphics/Animation/Skeletal animation

< Main Article | 3D computer graphics | Animation

105pages on
this wiki
Add New Page
Talk0 Share

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

TODO
  • ใช้ Blender 2.5 อ้างอิงแทน การ upload screenshot ควรระบุเวอร์ชันให้ชัดเจน
  • ไว้เนื้อหานิ่งแล้วค่อยทำส่วน footer สำหรับหน้าก่อน/หน้าต่อไป
  • เพิ่มส่วนเกม
  • ยุบรวมส่วน Blender เข้ากับส่วน 3D computer graphics โดยเพิ่มส่วน User Interface แยกไว้เป็นบท Blender 101
จัดการเมนู


การใช้กระดูกควบคุมการเคลื่อนไหว Edit

ในงานแอนิเมชันและเกมคอมพิวเตอร์แบบ 3 มิติ นิยมใช้กระดูกเพื่อบังคับการเคลื่อนไหวของโมเดลสามมิติ โดยแทนที่จะเก็บ key frame ของแต่ละการเคลื่อนไหวของแต่ละ vert (เช่น shape key) ก็อาจเก็บการเคลื่อนไหวของกระดูกแทน เมื่อมีการขยับกระดูก กระดูกก็จะไปบังคับให้กลุ่มของ vert เคลื่อนที่ไปตามกระดูกนั้นๆ

ลักษณะการเกาะกระดูกของ vertex Edit

Weight Edit

โดยทั่วไปในโมเดลสามมิติหนึ่งๆถ้ามีกระดูกก็มักจะมีกระดูกหลายชิ้น โดย vertex หนึ่งๆอาจเกาะอยู่กับกระดูกมากกว่าหนึ่งชิ้น ด้วยน้ำหนัก (Weight) ที่แตกต่างกันไป เช่นเกาะกระดูก A ด้วยน้ำหนัก 0.7 และเกาะกระดูก B ด้วยน้ำหนัก 0.3 โดยทั่วไปซอฟต์แวร์มักแสดงค่าน้ำหนักรวมเป็น 1.0 หรืออาจคำนวณจากอัตราส่วนต่อค่ารวม weight ทั้งหมดก็ได้ ทั้งนี้ ขึ้นกับซอฟต์แวร์ การใส่ค่า weight เริ่มต้นให้ Vertex นี้สามารถทำได้ทั้งแบบอัตโนมัติด้วยขั้นตอนวิธีที่แตกต่างกันไป หรือใช้การระบายสีน้ำหนักโดยมนุษย์ (paint weight) หรือผสมทั้งสองวิธีการด้วยกันเช่นให้ซอฟต์แวร์ช่วยคำนวณก่อน แล้วค่อยตบแต่งด้วยการ paint weight ในบางจุดเพื่อเก็บรายละเอียด

การเกาะกระดูกแบบนี้เหมาะกับการจำลองการเคลื่อนไหวโมเดลที่มีผิวยืดหยุ่น เช่นคน สัตว์ เสื้อผ้า นอกจากนี้การคำนวณการเกาะกระดูกจากน้ำหนักก็ยังมีหลายขั้นตอนวิธีให้เลือก เช่น Linear Blend Skin (LBS) หรือ Dual quaternion[1] ฯลฯ ซึ่งจะให้ผลลัพธ์ที่แตกต่างกันและใช้เวลาในการประมวลผลไม่เท่ากัน หรือบางครั้งอาจซับซ้อนกว่าการคำนวณโดยใช้กระดูกควบคุม vertex โดยตรง เช่นอาจใช้กระดูกควบคุมโมเดลความละเอียดต่ำ (low poly) แล้วใช้โมเดลความละเอียดต่ำไปทำหน้าที่เป็นกระดูกเพื่อควบคุมโมเดลความละเอียดสูง[2] เป็นต้น

แบบอื่นๆ Edit

การเกาะกระดูกแบบอื่นๆ ใช้การเก็บค่า weight ค่าเดียวแทนที่จะเก็บหลายค่าสำหรับแต่ละ vertex ในลักษณะนี้ ซอฟต์แวร์อาจใช้เทคนิกต่างๆเพื่อช่วยให้รอยพับดูเรียบขึ้น เช่นการคำนวณจากระยะทางระหว่าง vertex กับกระดูก หรือการคำนวณ weight ของแต่ละ vertex โดยใช้หลักการนำความร้อน[3] (แต่วิธีนี้สุดท้ายก็จะกลับไปใช้วิธีแบบเก็บค่า weight ที่คำนวณได้ลงในแต่ละ vertex) หรือบังคับค่า weight ตายตัวกับกลุ่มของ vertex ต่อกระดูกชิ้นหนึ่งๆ ซึ่งวิธีหลังนี้นิยมใช้กับโมเดลประเภทเครื่องกลไก ข้อต่อหุ่นยนต์ เป็นต้น

Forward และ Inverse Kinematic Edit


อ้างอิง Edit

Blender Edit

Also on Fandom

Random Wiki