การจัดอุปกรณ์, การปิดบัง
❗️ คำเตือน คอร์สนี้ค่อนข้างท้าทาย ทำตามคำแนะนำทีละขั้นตอนและหากคุณติดขัด ให้ดูวิดีโอที่ด้านล่าง
การทำ Rigging คือกระบวนการเตรียมตัวละครให้พร้อมสำหรับการเคลื่อนไหว มันเกี่ยวข้องกับการผูกวัตถุที่คุณสร้างขึ้นกับโครงกระดูกและสร้างตัวควบคุมสำหรับการเคลื่อนไหว สำหรับการสร้างไอเท็มสำหรับ ZEPETO จะทำเฉพาะขั้นตอนการผูกเท่านั้น
ในการเคลื่อนย้ายอวาตาร์ของ ZEPETO คุณจะต้องมีตาข่ายวัตถุและโครงกระดูก แต่ละส่วนของตาข่ายจะเคลื่อนไหวตามกระดูกที่เฉพาะเจาะจง และแต่ละกระดูกจะสร้างการเคลื่อนไหวของอวาตาร์
เพื่อให้ตาข่ายตามการเคลื่อนไหวของโครงกระดูก คุณสามารถตั้งค่าค่าผลกระทบสำหรับแต่ละจุดยอดว่าจะตามกระดูกที่สอดคล้องกันมากน้อยเพียงใด ค่าผลกระทบนี้เรียกว่า Weight
โครงสร้างโครงกระดูกของ ZEPETO Avatar ประกอบด้วยกระดูกสเกลและกระดูกฐาน กระดูกสเกลเกี่ยวข้องกับการเปลี่ยนแปลงรูปร่างของร่างกาย ในขณะที่กระดูกฐานเปลี่ยนแปลงท่าทางและการเคลื่อนไหว
เราจะติดตาข่ายวัตถุกับกระดูกสเกลเพื่อเคลื่อนย้ายสิ่งของตามการเปลี่ยนแปลงของการเคลื่อนไหวในขณะที่รักษารูปร่างของร่างกายอวาตาร์
การแก้ไขน้ำหนักจะทำในโหมดการทาสีน้ำหนัก เมื่อคุณเลือกหน้ากากและเปลี่ยนไปที่โหมดการทาสีน้ำหนัก ตาข่ายหน้ากากจะเปลี่ยนสี
ในหน้าต่างคุณสมบัติ การกดไอคอนกลุ่มเวอร์เท็กซ์จะนำรายการที่แสดงให้คุณเห็นว่าส่วนใดของหน้ากากได้รับผลกระทบจากการจัดกรอบใด
ใน Blender ค่าของน้ำหนักจะแสดงด้วยสี
- น้ำเงิน: 0, แดง: 1, เขียว: 0.5
คุณสามารถใช้เครื่องมือในโหมด Weight Paint เพื่อปรับค่าน้ำหนักได้
- 1 - เครื่องมือแปรงวาด: ใช้เพื่อกำหนดค่าน้ำหนักโดยตรงด้วยแปรงและเพิ่มหรือลดน้ำหนักในกลุ่มจุดยอด
- 2 - เครื่องมือแปรงเบลอ: ใช้เพื่อเบลอหรือทำให้กลุ่มจุดยอดและน้ำหนักระหว่างกลุ่มจุดยอดเรียบเนียน
- 3 - เครื่องมือแปรงป้าย: ใช้เพื่อทำให้น้ำหนักเรียบเนียน คุณยังสามารถดันหรือย้ายผลกระทบของน้ำหนักไปรอบๆ ตาข่ายได้
- ก่อนที่เราจะเข้าสู่รายละเอียดของการทำงานกับน้ำหนัก เราจำเป็นต้องตั้งค่าวัตถุและโครงกระดูกของเรา ก่อนอื่นให้เปลี่ยนเป็นโหมดวัตถุ
2. ตรวจสอบให้แน่ใจว่าไม่มีตัวปรับแต่งกระจกหรือดัดแปลงที่ใช้งานอยู่บนรายการ
❗️ Caution การทำ Rigging เป็นงานที่ใช้เวลามาก และยังส่งผลกระทบอย่างมากต่อเมชของวัตถุ ควรตรวจสอบอย่างละเอียดเพื่อไม่ให้ทำสิ่งเดียวกันซ้ำสอง
3. ระบบ Rigging ของ Blender ถูกออกแบบมาให้ผูกกับท่าเริ่มต้นของอวาตาร์ หากวัตถุถูกสร้างในท่า A เฟรมที่เราทำ Rigging ควรอยู่ในท่าเดียวกัน หากคุณสร้างวัตถุในท่า T คุณสามารถข้ามขั้นตอนนี้ได้
❗️ Caution หากวัตถุถูกสร้างในท่าที่ไม่ใช่ท่า T คุณจะต้องแปลงการสร้างวัตถุให้เข้ากับท่า T
4. แนะนำให้คุณทำสำเนา creatorBaseSet rig เพื่อเก็บต้นฉบับก่อนที่จะทำงานกับมัน ในโหมด Object ให้เลือก armature และ mask objects ของ creatorBaseSet และทำสำเนาโดยกดปุ่มลัด Shift+D หรือโดยการเลือก Object > Duplicate Objects ใน viewport
5. สร้างคอลเลกชันใหม่เพื่อเก็บวัตถุและ armatures ที่ทำสำเนา
6. เปลี่ยนชื่อคอลเลกชันที่สร้างในขั้นตอนที่ 5 ด้วยชื่อที่มีคำว่า Apose เพื่อให้ง่ายต่อการจัดการ
7. ท่าที่เรากำลังทำงานอยู่ตอนนี้คือท่า A ในท่า A กระดูกสะบักจะหมุน -7.5 องศาบนแกน z และกระดูกต้นแขนจะหมุน -40 องศาบนแกน z
8. ซ่อนวัตถุและโครงกระดูกที่มีอยู่ เลือกคอลเลกชันที่สร้างขึ้นใหม่ และเข้าสู่โหมดโพส
เพื่อให้การถ่วงน้ำหนักของหน้ากากตามโครงกระดูกในท่าใหม่ ให้ใช้โครงกระดูกที่แก้ไขแล้วกับวัตถุหน้ากากอีกครั้ง
- เปลี่ยนเป็นโหมดวัตถุ จากนั้นเลือกวัตถุหน้ากาก แล้วกดตัวปรับแต่งในแผงคุณสมบัติ
2. เลือกใช้จากเมนูแบบเลื่อนลง ตอนนี้ตาข่ายถูกใช้กับท่าแล้ว
3. ในการใช้ Rest Pose กับ A-pose ให้เลือก armature ของ A-pose และเข้าสู่โหมด Pose
4. เลือกโครงกระดูกทั้งหมดและคลิก Pose > Apply > Apply Pose as Rest Pose
5. Rest Pose ของ armature ตอนนี้ถูกตั้งค่าเป็นตำแหน่งท่าของวัตถุแล้ว คุณสามารถผูกวัตถุของคุณกับ armature ได้อย่างมีประสิทธิภาพมากขึ้น
เมื่อคุณตั้งค่า default pose ที่เหมาะสมแล้ว คุณสามารถผูกไอเท็มกับ armature ได้
- เลือกไอเท็ม จากนั้นเลือก armature แล้วกด Object > Parent > With Empty Groups
- สิ่งนี้จะทำให้ Object Mesh เป็นพาเรนต์ของ CreatorBaseSet armature และ armature modifier จะถูกวางไว้ใต้ object mesh สร้างกลุ่มเวอร์เท็กซ์ที่คุณสามารถผูกน้ำหนักกับ object mesh ได้
- กลุ่มเวอร์เท็กซ์เป็นบล็อกของข้อมูลเมชที่เก็บข้อมูลที่เวอร์เท็กซ์
- คุณสามารถดูกลุ่มเวอร์เท็กซ์สำหรับวัตถุได้โดยการเลือกมันและไปที่คุณสมบัติข้อมูลวัตถุ คุณสามารถใช้กลุ่มเวอร์เท็กซ์ในสถานการณ์ต่างๆ รวมถึงการใช้ม็อดดิฟายเออร์บางตัวแบบเลือกสรร กลุ่มเวอร์เท็กซ์ยังใช้ในการกำหนดน้ำหนักให้กับกระดูกแต่ละชิ้นด้วย
- หากคุณดูที่กลุ่มเวอร์เท็กซ์ คุณจะสังเกตเห็นว่ากลุ่มเวอร์เท็กซ์ตรงกับชื่อของกระดูกแต่ละชิ้น
ในขั้นตอนก่อนหน้านี้ ขณะตั้งค่าความสัมพันธ์ระหว่างพ่อแม่และลูก เราใช้ตัวเลือกน้ำหนักว่างเปล่า ในการทำเช่นนี้ กลุ่มเวอร์เท็กซ์ถูกสร้างขึ้นสำหรับรายการทั้งหมดที่ไม่มีการกำหนดน้ำหนักให้พวกเขา
อย่างไรก็ตาม เมื่อเราย้ายโครงกระดูก รายการต่างๆ ไม่ได้ตามการเคลื่อนไหว เพื่อแก้ไขปัญหานี้ เราจำเป็นต้องกำหนดน้ำหนักโดยตรงให้กับส่วนต่างๆ ของกระดูกแต่ละชิ้น ปกติแล้วเมื่อทำเช่นนี้ คุณจะต้องตั้งค่าน้ำหนักจากศูนย์ แต่วัตถุหน้ากากที่เราใช้อยู่มีแม่แบบที่มีน้ำหนักถูกกำหนดไว้แล้ว แม่แบบนี้เป็นน้ำหนักเดียวกับที่ถูกกำหนดให้กับอวาตาร์เริ่มต้นของ ZEPETO
ดังนั้นสิ่งที่เราต้องทำคือคัดลอกและวางแม่แบบน้ำหนักนั้นลงในรายการของเรา
- เลือกหน้ากากในโหมดวัตถุ กด Shift, แล้วเลือกวัตถุรายการ นี้จะทำให้วัตถุรายการเป็นวัตถุที่ใช้งานและไฮไลต์ด้วยสีที่สว่างขึ้น
2. ในขณะที่ยังอยู่ในสถานะนี้ ให้เปลี่ยนเป็นโหมด Weight Paint และเลือก Weights > Transfer Weights.
3. ในเมนู Options ที่ด้านล่างของ viewport ให้เปลี่ยน Source Layer Selection เป็น By Name ทันทีด้านล่าง ภายใต้ Destination Layers Matching ให้เปลี่ยนเป็น All Layers.
- หลังจากเลือกตัวเลือกเหล่านี้ สีของวัตถุควรเปลี่ยนไป ซึ่งบ่งบอกว่าการถ่ายโอนน้ำหนักสำเร็จแล้ว
- ในเมนู Options ภายใต้ Vertex Mapping คุณสามารถทำให้การแมปเวอร์เท็กซ์ราบรื่นขึ้นได้ ลองเล่นกับตัวเลือกเหล่านี้เพื่อดูว่าอันไหนเหมาะกับวัตถุของคุณที่สุด
4. น้ำหนักจากหน้ากากได้ถูกคัดลอกไปยังวัตถุแล้ว ในขั้นตอนต่อไป คุณจะต้องตรวจสอบและปรับเปลี่ยนน้ำหนักที่ใช้กับวัตถุ
- เพื่อตรวจสอบน้ำหนัก ให้เปลี่ยนเป็นโหมด Pose หมุนกระดูกหน้าอกตรงกลางเพื่อดูว่าออบเจ็กต์ไอเท็มตามถูกต้องหรือไม่
2. หากคุณต้องการเปลี่ยนวิธีที่ออบเจ็กต์ตาม ใช้เครื่องมือ Weight Painting เพื่อแก้ไขค่าน้ำหนัก เปลี่ยนกลับไปที่โหมด Weight Painting และในกลุ่ม Vertex ให้หากลุ่มเวอร์เท็กซ์ที่มีชื่อของโครงกระดูกที่หมุน
👍 หากไม่มีการตั้งค่าน้ำหนักสำหรับกลุ่มนั้น (ไม่ได้ระบายสี) น้ำหนักจะถูกตั้งค่าสำหรับสเกลที่มีชื่อเดียวกัน เช่น) หากไม่มีการตั้งค่าน้ำหนักสำหรับกระดูกสันหลัง ให้หากลุ่ม spine_scale และเลือก
3. เมื่อคุณตรวจสอบแล้วว่าน้ำหนักมีผลต่อกระดูกนั้นมากน้อยเพียงใด คุณสามารถแก้ไขน้ำหนักด้วยเครื่องมือ Weights ก่อนใช้เครื่องมือ อย่าลืมตรวจสอบ Auto Normalize ในเมนู Options ที่มุมขวาบน การตั้งค่านี้ช่วยให้คุณเพิ่มหรือลดอิทธิพลของกลุ่มเวอร์เท็กซ์โดยอัตโนมัติเมื่อทำการระบายสี
เมื่อคุณเลือกเครื่องมือแปรงวาดน้ำหนักของกลุ่มเวอร์เท็กซ์ที่เลือกด้วยแปรงนี้จะมีผลต่อวัตถุไอเท็ม คุณสามารถเปลี่ยนเงื่อนไขของแปรงได้ที่ด้านบนของเครื่องมือแปรง การตั้งค่าความแข็งแรงเป็น 0.2 และทำงานกับมันควรจะเพียงพอ
- ในการลบผลกระทบต่อกระดูกแต่ละชิ้นให้เปลี่ยนโหมดแปรงโดยเลือกการลบในส่วนแปรง
- คุณสามารถเลือกกลุ่มเวอร์เท็กซ์บนกระดูกที่อยู่ใกล้เคียงเพื่อแก้ไขน้ำหนักของพวกเขา คุณสามารถดูว่ากลุ่มเวอร์เท็กซ์มีผลต่อวัตถุไอเท็มโดยการกดชื่อกลุ่มในรายการกลุ่มเวอร์เท็กซ์
- เครื่องมือแปรงเบลอมีหน้าที่ในการผสมน้ำหนักของเวอร์เท็กซ์กับน้ำหนักของเวอร์เท็กซ์ที่อยู่ใกล้เคียง คุณสามารถปรับความแข็งแรงของแปรงเพื่อใช้มันตามที่คุณต้องการ แปรงเบลอเหมาะอย่างยิ่งที่จะใช้ในที่ที่ไอเท็มโค้งงอ
- แปรง Smear ผสมผสานน้ำหนักที่จุดเริ่มต้นของแปรงกับน้ำหนักที่ปลายแปรง แปรง Smear มีเอฟเฟกต์การปัดนิ้ว ดังนั้นจึงเป็นวิธีที่ดีในการยกเลิกการวาดภาพโดยไม่ได้ตั้งใจ
- เมื่อคุณตั้งค่าน้ำหนักวัตถุของไอเท็มให้เหมาะสมกับโครงกระดูกแล้ว ให้เลือกโครงกระดูกและเลือก Pose > Clear Transform > Rotation เพื่อจัดตำแหน่งโครงกระดูกใหม่ จากนั้นหมุนกระดูกในส่วนต่างๆ ของโครงกระดูกเพื่อดูว่าน้ำหนักวัตถุของไอเท็มถูกตั้งค่าอย่างไรในแต่ละส่วน
👍 โดยการหมุนโครงกระดูกไปยังรูปร่างที่รุนแรงขึ้น คุณจะได้แนวคิดที่ดีขึ้นว่าวัตถุเปลี่ยนแปลงไปอย่างไรกับการเคลื่อนไหวของโครงกระดูก
❗️ Caution นี่เป็นงานที่ซ้ำซากและใช้เวลานานมาก ดังนั้นคุณจะต้องอดทน การจัดการกระโปรงที่เราทำเป็นตัวอย่างในคู่มือนี้ใช้เวลาประมาณ 2 ชั่วโมง
- ระวังบริเวณที่หน้ากากโค้งงอและผ่านวัตถุ นั่นหมายความว่าน้ำหนักถูกกระจายอย่างนุ่มนวลเกินไป
- สามารถแก้ไขได้โดยใช้แปรงน้ำหนักเพื่อเพิ่มน้ำหนักให้กับกระดูกเหล่านั้น
- ทดสอบโดยการหมุนกระดูกหลาย ๆ ชิ้น หากกระบวนการนี้ยากเกินไป คุณควรพิจารณาเปลี่ยนตาข่ายของวัตถุของคุณ
2. หากการโค้งงอของวัตถุของคุณหยาบเกินไป คุณอาจต้องเพิ่มลูปขอบเพิ่มเติม
📘 โปรดดูคำแนะนำต่อไปนี้[Modeling Basics]
- การเปลี่ยนจำนวนโพลีของวัตถุจะเปลี่ยน UVs ของมัน ดังนั้นคุณอาจต้องปรับแต่งพื้นผิวของคุณใหม่
เมื่อจัดการน้ำหนักทั้งหมดเรียบร้อยแล้ว ก็ถึงเวลาที่จะเปลี่ยนเป็นท่า T-pose
- กระดูกสะบักหมุน 7.5 องศาบนแกน z (ดูวงกลมในภาพ)
2. กระดูกแขนบนหมุน 40 องศาบนแกน z (ดูวงกลมในภาพ)
3. เลือกวัตถุในโหมด Object และไปที่แท็บ Modifier ใน Properties กดเมนูแบบเลื่อนลงและเลือก Apply
4. เลือก Add Modifier > Armature เพื่อเพิ่ม armature modifier อีกครั้ง
5. ภายใต้ Object เลือก zepeto_creatorBaseSet เพื่อให้ไอเท็มกลับมาอยู่ในท่า A-pose อีกครั้ง
6. ซ่อน armature ในท่า A-pose และเลือกกระดูก zepeto_creatorBaseSet เพื่อให้แน่ใจว่าไอเท็มเคลื่อนที่ตามการเคลื่อนไหวของอวาตาร์
7. หากไอเท็มเปลี่ยนรูปร่างโดยไม่คาดคิดขณะ rigging ให้เข้าไปในโหมดแก้ไขและย้าย vertices เพื่อแก้ไข
การปิดบังคือการระบุว่าส่วนใดของวัตถุที่สวมใส่โดยอวาตาร์ที่ใช้งานหรือไม่ใช้งานโดยการระบายสีหน้ากากอวาตาร์ด้วยสีขาวและสีดำ
- สีดำคือพื้นที่ที่ถูกปิดใช้งาน สีขาวคือพื้นที่ที่ถูกเปิดใช้งาน ใน Unity ใบหน้าอวาตาร์จะถูกปิดใช้งานโดยค่าเริ่มต้น
- เลือกหน้ากากและเปลี่ยนเป็นโหมด Vertex Paint ซึ่งจะทำให้หน้ากากปรากฏเป็นสีขาว
- สีของแปรงถูกตั้งค่าเป็นสีขาวและสีดำ
- เปลี่ยนตัวเลือก Brush Falloff เป็น Constant การตั้งค่านี้ช่วยให้แปรงมองเห็นได้ชัดเจนเป็นสีขาวและสีดำ หลีกเลี่ยงพื้นที่สีเทา
- เปิด X-mirror เพื่อให้คุณสามารถวาดด้านซ้ายและขวาได้พร้อมกัน
2. ซ่อนวัตถุไอเท็มเพื่อให้แน่ใจว่ามันถูกวาดอย่างถูกต้อง
นั่นคือทุกขั้นตอนในการสร้างไอเท็ม!