~ mmdpaimaya ~ แปลงโมเดล MMD มาใส่ในมายา
เขียนเมื่อ 2017/02/21 08:47
แก้ไขล่าสุด 2021/09/28 16:42
เพิ่งได้ทำโปรแกรมสำหรับแปลงโมเดล MMD มาใส่ในมายาขึ้นมา ชื่อโปรแกรมคือ mmdpaimaya (MMD ไปมายา) เป็นชื่อที่ตรงไปตรงมาไม่ต้องคิดอะไรมากให้ปวดหัว
ลงเอาไว้ใน github พร้อมเขียนคำอธิบายไว้
>> https://github.com/phyblas/mmdpaimaya
นี่เป็นครั้งแรกที่ลองใช้ github เพื่อแจกจ่ายโปรแกรมของตัวเอง หลังจากที่ทุกทีมีแต่จะเข้าไปโหลด
ความคิดที่ว่าอยากเอาโมเดลจาก MMD มาใช้ในมายานั้นที่จริงเคยคิดอยากทำตั้งนานแล้ว ตั้งแต่ช่วงปี 2015 ซึ่งเริ่มหัดใช้มายา แต่ยังไม่มีโปรแกรมที่สามารถทำเช่นนั้นได้โดยสมบูรณ์
ก่อนหน้านี้เคยมีคนเขียนโค้ดโปรแกรมสำหรับแปลงโมเดลใน MMD มาใส่ในมายา โดยเท่าที่เคยเจอมีอยู่ ๒ โปรแกรม เขียนโดยคนญี่ปุ่น
ได้แก่โปรแกรม PmxIO http://mayatech.blog.jp/archives/3009881.html
และ mmd-transporter http://www.nicovideo.jp/watch/sm23644737
สำหรับ PmxIO นั้นความสามารถถือว่ายังค่อนข้างน้อย ไม่ได้ดึงความสามารถอะไรหลายๆอย่างจากโมเดลของ MMD มาใส่ อีกทั้งมีบั๊กเยอะ ใช้กับโมเดลได้ค่อนข้างจำกัด
ส่วน mmd-transporter นั้นเท่าที่ลองใช้ดูพบว่าไม่สามารถใช้งานได้เนื่องจากบั๊กที่แม้จะพยายามลองดูแล้วก็ยังไม่สามารถแก้ไขได้
อย่างไรก็ตามโค้ดทั้งหมดของทั้งสองโปรแกรมนี้เขียนด้วยภาษาไพธอน ซึ่งเราก็ค่อนข้างคุ้นเคยอยู่แล้ว จึงเกิดความคิดว่าลองเอาโค้ดมาศึกษาแล้วปรับปรุงสร้างของตัวเองขึั้นมาซะเลย
ช่วงปี 2015 ตอนนั้นยังเพิ่งหัดภาษาไพธอนได้ไม่นาน ยังไม่ค่อยคล่องนักจึงไม่สามารถทำอะไรได้มาก แต่ตอนนี้พอกลับมาลองจับดูอีกครั้งก็พบว่าไม่ได้ยากอย่างที่คิด
การแปลงข้อมูลของ pmd และ pmx มาใส่ในมายานั้นมีอะไรท้าทายมากมายอยู่พอสมควร ด้วยความที่ MMD และมายาถูกออกแบบมาค่อนข้างแตกต่างกัน
แนวทางในการแปลงนั้นยึดตาม ๒ โปรแกรมที่ใช้เป็นต้นแบบ โดยรวมแล้วมีแนวโน้มเหมือนกัน แต่ก็มีบางส่วนที่ทั้งสองโปรแกรมเขียนต่างกัน เราจึงลองเขียนทั้งสองแบบดูเปรียบเทียบว่าอันไหนดูจะดีกว่าแล้วก็ใช้แนวทางตามนั้น
อย่างไรก็ตามความสามารถของโมเดล MMD ไม่สามารถดึงมาลงในมายาได้ทั้งหมด มีอะไรหลายอย่างที่ต้องตัดใจ ดังที่อธิบายไว้ในคำอธิบายโปรแกรม
ส่วนหนึ่งที่สำคัญคือเรื่องการทำฟิสิกส์ ส่วนที่ทำให้เส้นผมและเสื้อผ้าพริ้วไหว
ที่จริงเรื่องการดึงฟิสิกส์จาก MMD มาใช้ในมายานั้น mmd-transporter ดูเหมือนจะสามารถทำได้ โดยใช้ bullet ซึ่งเป็นความสามารถเสริมอย่างหนึ่งในมายา
อย่างไรก็ตาม เราพยายามทำตามแล้วพบว่ามันออกมาแปลกๆ การเคลื่อนไหวยังห่างไกลจากที่ควรจะเป็น ดังนั้นจึงตัดตรงส่วนนี้ออก
ฉะนั้นหากต้องการทำเส้นผมและเสื้อผ้าพริ้วไหวก็ต้องมาขยับเอาเอง ถ้าทำดีๆอาจทำได้สมจริงกว่าใน MMD เองก็เป็นได้
อีกความสามารถหนึ่งที่ PmxIO มีแต่เราไม่ได้ลองทำก็คือการแปลงโมเดลจากมายาไปเป็น MMD
แต่ไหนแต่ไรเราต้องการเล่นในมายาเป็นหลัก เลยต้องการดึงโมเดลจาก MMD มาเล่นในมายาเท่านั้น
แต่ในอนาคตหากตัวเองสามารถสร้างโมเดลดีๆขึ้นมาได้มากเข้าก็คงอยากจะมาลองทำโปรแกรมสำหรับแปลงเป็น pmx เพื่อจะนำมาแจกให้คนอื่นใช้ใน MMD อีกที
มีเรื่องที่อยากทำมากมายอยู่ โปรแกรมนี้เองก็อยากปรับปรุงให้ดีกว่านี้ไปอีก แต่ว่าตอนนี้คงต้องรอไปก่อน เนื่องจากว่าน่าจะไม่มีเวลา
เดิมทีช่วงที่เริ่มเขียนโค้ดนี้ขึ้นมานั้คือในช่วงหัวเลี้ยวหัวต่อตอนก่อนจะเริ่มเรียนปริญญาเอก มีช่วงที่ให้พักว่างๆระหว่างเตรียมตัว แต่จากนี้ไปคงกำลังจะยุ่งมากขึ้นเรื่อยๆ คงจะหาเวลามาทำอะไรต่อยาก
อย่างไรก็ตาม ใครมีอะไรสงสัยเกี่ยวกับโปรแกรม หรือตรวจเจอบั๊กก็สามารถแจ้งมาได้ หากมีเวลาก็จะรีบดู
-----------------------------------------
囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧
ไม่อนุญาตให้นำเนื้อหาของบทความไปลงที่อื่นโดยไม่ได้ขออนุญาตโดยเด็ดขาด หากต้องการนำบางส่วนไปลงสามารถทำได้โดยต้องไม่ใช่การก๊อปแปะแต่ให้เปลี่ยนคำพูดเป็นของตัวเอง หรือไม่ก็เขียนในลักษณะการยกข้อความอ้างอิง และไม่ว่ากรณีไหนก็ตาม ต้องให้เครดิตพร้อมใส่ลิงก์ของทุกบทความที่มีการใช้เนื้อหาเสมอ