Skip to content
Tayakorn

คู่มือ Blender Animation

LEVEL 2 · ระดับกลาง

Skinning กับ weight — จุดที่มือใหม่พังบ่อยที่สุด

ตอนนี้มีกระดูกแล้ว แต่กระดูกกับเนื้อยังไม่รู้จักกัน คำถามคือ จุดแต่ละจุดบนผิวรู้ได้ยังไงว่าต้องตามกระดูกตัวไหน

ความเข้าใจผิดที่พังงานคนมานักต่อนัก: คิดว่าแต่ละจุดถูก "แบ่ง" ให้กระดูกตัวใดตัวหนึ่งเป็นเจ้าของ ถ้าเป็นแบบนั้นจริง รอยต่อทุกข้อจะขาดออกจากกันเวลางอ

ของจริงคือ แต่ละจุดฟังกระดูกหลายตัวพร้อมกัน โดยมีน้ำหนักคนละเท่าไหร่ นั่นคือ weight

ลองผูกแท่งทรงกระบอกเข้ากับกระดูกสองท่อน (ข้อต่ออยู่ที่ความสูง 1.0) แล้วอ่านค่า weight จริงไล่จากล่างขึ้นบน:

  z=+0.00  lower=1.000  upper=0.000
  z=+0.50  lower=0.995  upper=0.000
  z=+0.83  lower=0.896  upper=0.104
  z=+1.00  lower=0.500  upper=0.500     ← ตรงข้อต่อพอดี ฟังคนละครึ่งเป๊ะ
  z=+1.17  lower=0.104  upper=0.896
  z=+1.50  lower=0.000  upper=0.995
  z=+2.00  lower=0.000  upper=1.000

ตรงข้อต่อได้ 0.500 / 0.500 พอดี แล้วไล่ระดับออกไปทั้งสองทางอย่างสมมาตร นี่ไม่ใช่การแบ่งเจ้าของ แต่คือการผสม

weight ไล่จากล่างขึ้นบน (ข้อต่ออยู่ที่ z = 1.0)z=+0.001.000 / 0.000z=+0.500.995 / 0.000z=+0.830.896 / 0.104z=+1.000.500 / 0.500z=+1.170.104 / 0.896z=+1.500.000 / 0.995กระดูก lowerกระดูก upperผลตอนหมุน upper 90°ข้อพับโค้ง ไม่หักมุม0.5 / 0.5จุดล่างไม่ขยับ · จุดบนตามไปเต็ม
FIG 8.1 จุดตรงข้อต่อได้ 0.500 / 0.500 พอดี จึงเคลื่อนครึ่งทางระหว่างอยู่นิ่งกับตามไปเต็ม — นั่นคือเหตุผลที่ข้อพับโค้ง ไม่ใช่หักเป็นมุม

8.1 ผลของการผสม เห็นเป็นตัวเลข

ทีนี้หมุนกระดูกบน 90 องศา แล้ววัดว่าแต่ละความสูงเคลื่อนไปไหน:

  ก่อน z=+0.50  ->  หลัง (x=+0.141, y=+0.141, z=+0.500)   ← ไม่ขยับตามเลย
  ก่อน z=+1.00  ->  หลัง (x=+0.141, y=+0.071, z=+1.071)   ← ขยับครึ่งทาง
  ก่อน z=+1.50  ->  หลัง (x=+0.000, y=-0.500, z=+1.200)   ← ตามไปเต็ม
  ก่อน z=+2.00  ->  หลัง (x=+0.000, y=-1.000, z=+1.200)   ← ตามไปเต็ม

จุดที่ weight เป็น 0.5/0.5 ไปหยุดครึ่งทางระหว่าง "อยู่ที่เดิม" กับ "ตามไปเต็ม" พอดี — นี่คือเหตุผลที่ข้อพับดูโค้งแทนที่จะหักเป็นมุม

8.2 ทำไมมันถึงพังบ่อย

เพราะ automatic weights เดาจากระยะทางเชิงเรขาคณิต ไม่ได้เข้าใจว่าอะไรเป็นอะไร พอสองส่วนของโมเดลอยู่ใกล้กันในอวกาศแต่ควรขยับคนละทาง มันจะเดาผิดทันที — เช่น ต้นขาสองข้างที่ชิดกัน หรือแขนที่แนบลำตัว

อาการที่เห็นคือ "ขยับแขนแล้วเอวยุบตาม" ซึ่งไม่ใช่บั๊ก แต่คือ weight บนเอวติดค่าของกระดูกแขนมานิดหน่อย

เคล็ดลับ: เวลาเจออาการแบบนี้ อย่าเพิ่งไปแก้กระดูก ให้เข้าโหมด Weight Paint แล้วเลือกกระดูกที่ต้องสงสัย จุดที่ติดสีอยู่ผิดที่จะโผล่ให้เห็นทันที ปัญหาเกือบทั้งหมดของ "เนื้อบิดประหลาด" อยู่ที่ weight ไม่ใช่ที่โครงกระดูก

Read the full book