บันทึก Mocap ใบหน้าไปใช้กับ Meta Human ด้วย Rokoko Face Capture

บันทึก Mocap ใบหน้าไปใช้กับ Meta Human ด้วย Rokoko Face Capture

ในยุคที่โลกดิจิทัลกำลังเติบโตอย่างมาก ทำให้เทคโนโลยีดิจิทัลพัฒนาไปอย่างรวดเร็วไม่ว่าจะเป็นเทคโนโลยีที่นำวัตถุ 3D มาจำลองเข้าสู่โลกจริงอย่าง AR การจำลองสถานที่ขึ้นมาเป็นโลกเสมือนอย่าง VR
หรือการบันทึกพื้นที่เสมือนจริงแบบ 3D อย่าง Virtual Space และอีกสิ่งที่น่าสนใจเป็นอย่างมากนั่นคือ การจำลองมนุษย์เสมือนจริงขึ้นมาในโลกดิจิทัลอย่าง Metahumen จาก Unreal Engine
โดย Meta Human นี้มีความคล้ายคลึงคนจริงมาก เนื่องจาก Meta Human มี Database มูลภาพถ่ายและงานสแกน 3 มิติคนจำนวนมาก นำมาสร้างเป็น Preset ให้เราเลือก

และด้วยความสมจริงของ Meta Human ทำให้งานดูน่าสนใจขึ้นอย่างมากหากนำไปใช้ในงาน Game หรืองาน Amation โดยผ่านการบันทึก Mocap เพื่อให้มีการเคลื่อนไหวที่สมจริง
โดยหลังจากที่เราแสดงให้เห็นถึงการบันทึก Mocap ของร่างกายด้วย Rokoko Smart Suit Pro II มาหลายครั้งแล้ว วันนี้เราจะมาแชร์อีกหนึ่งเครื่องมือสำคัญในการบันทึก Mocap ในส่วนของใบหน้า
นั่นก็คือ Rokoko Face Capture เครื่องมือสุดเจ๋งที่ใช้งานได้ง่ายๆ ผ่านมือถือระบบ iOS ผ่าน Aplication Rokoko Face Capture

ขั้นตอนการบันทึก Mocap และนำไปใช้กับ Meta Human บน Unreal Engine
1.เริ่มสร้าง Meta Human
2.Import to Unreal Engine
3.Record Face Capture
4.Live to Unreal

เริ่มสร้าง Meta Human
Metahuman เป็นหนึ่งใน Add-On จาก Unreal Engine ซึ่งแน่นอนว่าสามารถทำงานร่วมกับ Unreal Engine ได้อย่างดีแน่นอน โดยเราสามารถสร้าง Meta Human ได้ผ่านทางเว็บไซต์
ของ Unreal Engine โดย Login ผ่าน Account ของ Epic Game สามารถสมัคร Account ได้เลยซึ่ง Account นี้จะทำให้เราสามารถเก็บข้อมูลการสร้าง Meta Human ไว้ และส่งไปยัง
Unreal Engine ได้

เลือก Version Unreal Engine ที่เราใช้จากนั้นกด Launch MetaHuman Creator และรอรันซักครู่

เลือก Preset Model เริ่มต้นสำหรับสร้าง Meta Human โดยเลือกจาก Model ที่มีหน้าตาไกล้เคียงตัวละครที่เราอยากจะได้ ซึ่งตัวละครเริ่มต้นก็มีให้เลือกมากมายและมีความหลากหลาย
ต่างกันทั้งช่วงอายุ เพศ เชื้อชาติ สีผิว เราจะเลือก Model หลักมาก่อนจากนั้นเลือกตัว Model รองเพื่อนำไปใช้สำหรับ Blend หน้าตาตัวละครเข้าหากัน โดยอาจเลือกตัวละครจากเอกลักษ์
ที่เราอยากให้มี เช่นอยากได้รูปคางตัวนึง อยากได้ทรงจมูกของอีกตัวนึง ก็สามารถนำมาผสมกันได้ และนอกจากการ Blend หน้าตัวละครยังมีเครื่องมือปรับรายละเอียดใบหน้าเพิ่มเติมอีกด้วย

ซึ่งการปรับแต่งหลักๆจะมีทั้งหมด 3 ส่วน ได้แก่ใบหน้า ส่วนผมและหนวด และส่วนลำตัว โดยในแต่ละส่วนก็จะมีการปรับแต่งย่อยๆให้ เช่น สีผิว สีตา แม้กระทั่งกระทั่งสีเหงือกก็สามารถปรับแต่งได้
ซึ่งถือว่าสามารถปรับแต่งได้อย่างละเอียดเลย โดยที่การปรับแต่งทั้งหมดจะถูก Save เก็บไว้โดยอัตโนมัติและส่งไปยัง Unreal ภายหลังได้ Model

Model ที่ได้นั้นมีความเหมาะสม หรือเรียกว่ารองรับการนำไปทำงาน Animation หรืองาน Game ต่ออย่างมากเพราะมีการ Rigging ใส่กระดูกมาให้เรียบร้อยแล้ว ซึ่งทำได้อย่างสมจริงมาก
การขยับใบหน้าแต่ละครั้ง เกิดการเคลื่อนไหวของกล้ามเนื้อเสมือนใบหน้าคนจริงๆ นอกจากนี้ยังรองรับระบบ LOD ( Level Of Detail) ซึ่งสามารถเพิ่ม-ลด Detail ของ Model ได้
ตามความต้องการใช้งาน

Import to Unreal Engine
หลังจากสร้าง Meta Human เสร็จแล้ว เราจะมาทำงานต่อใน โปรแกรม Unreal Engine โปรแกรมสำหรับสร้าง Game หรือ Animation ที่มีจุดเด่นตรงระบบ Real-time Render
ที่สมจริงเป็นอย่างมาก และที่สำคัญคือโหลดได้ฟรี!!…โดยโหลดผ่าน Platform Game ชื่อดังอย่าง Epic Game


การทำงานของเราในวันนี้นอกจาก Unreal Engine แล้ว ยังต้องอาศัย Plug-in สำคัญอีก 3 ตัวได้แก่ MetaHuman, Quixel Bridge, และ Rokoko Studio Live ซึ่งสามารถโหลดได้ใน Epic Game
เช่นกันโดยค้นหาจาก Unreal Engine และไปยัง Tab Marketplace

เมื่อโหลดโปรแกมและ Plug-in ทั้งหมดครบแล้ว เปิดโปรแกรมเพื่อ Import Meta Human โดยใช้ Plug-in Quixel Bridge โดย Login Account ของ Epicgame ทำการ Download Meta Human
ที่หัวข้อ My Meta Human จากนั้น Meta Human จะเข้าไปอยู่ใน Local จากนั้นกด Export เข้า Unreal ได้เลย

ที่ Tab Content Drawer ด้านล่างใน Folder Content>Meta Human เราจะเห็นตัวละครที่เราสร้าง สามารถลากเข้า Scene ได้เลย

Record Facecapture

การ Record Motion ด้วยแอป Face Capture แอปจะทำการบันทึกภาพเพื่อ Tracking การเคลื่อนไหวของใบหน้าและส่งข้อมูล Motion ไปยัง Rokoko Studio ก่อนอื่นก็ติดตั้งแอป Rokoko Face Capture ก่อน
จากนั้นเชื่อมต่อมือถือเข้ากับโปรแกรม Rokoko Studio ซึ่งทำได้ง่ายๆ โดยการเปิดแอป จากนั้นกด Connect ในโปรแกรม แล้วกด Allow บนแอป เพียงแค่นี้ก็สามารถ Record Motion ของใบหน้าได้แล้ว


ซึ่งการ Record ใบหน้าผ่านแอป Face Capture ถือว่าทำได้ดีพอสมควร รองรับการขยับปาก การยิ้ม หรือ การอ้าปาก การหลับตากระพริบตา การยักคิ้ว รวมทั้งยังจับการเคลื่อนไหวของการกลอกตาอีกด้วย
เพื่อการจับการเคลื่อนไหวได้อย่างมีประสิทธิภาพ อย่าลืมระวังไม่ให้ระยะของใบหน้าอยู่ห่างจากกล้องมากเกินไป

Live to Unreal
การ Link Motion ของเราไปยัง Meta Human ใน Unreal รองรับทั้งการเคลื่อนไหวแบบ Real-time และการเคลื่อนไหวที่ Record ไว้ โดยกด Play Clip ที่ Record ไว้ จากนั้นติ้กถูกเพื่อเปิดฟังชั่น Live Steaming ไปยัง Unreal

ที่โปรแกรม Unreal ก่อนอื่นต้องเปิดการทำงานของ Plug-in Rokoko Studio Live ก่อน โดยสามารถเปิดได้ใน Edit>Plug-in จากนั้นค้นหา Rokoko Studio Live แล้วติ้กถูกเพื่อ Enable โปรแกรมจะขึ้นเตือนให้เรา Restart โปรแกรม

หลัง Restart โปรแกรมในหน้าต่าง Place Actor ให้เราค้นหา Rokoko Remote และ Add ลงไปใน Scene

จากนั้นไปที่ Window>Virtual Production>Livelink เพื่อเชื่อมต่อการ Live Steaming จาก Rokoko คลิกที่ไอคอน +Source>Rokoko Studio Source>Studio จะปรากฎการ Link Motion ที่มาจาก Rokoko
ทั้ง Body และ Face

เลือกที่ตัว Model ในแถบ Live Linkg เลือก Actor:Face ที่ Link มาจาก Rokoko และติ้กถูกที่ Use ARkit Face เพียงแค่นี้การเชื่อมการ Link Motion ก็ทำงานแล้ว รองรับทั้งการเคลื่อนไหวแบบ Real-Time
และ Motion ที่อัดไว้

วิดีโอแสดงการทำงานร่วมกันระหว่าง Meta Human และ Face Capture