1. ที่มาและความตั้งใจ
โครงการนี้พัฒนาขึ้นเพื่อแก้ไขปัญหาความซับซ้อนและภาระงานที่เกิดขึ้นในกระบวนการสร้างวิดีโอไทม์แลปส์ (Timelapse) สำหรับเกม Minecraft ซึ่งโดยปกติแล้วต้องอาศัยการเรนเดอร์ภาพจากโลกในเกม (Minecraft Worlds) หลายช่วงเวลาและนำมาตัดต่อด้วยมือ ระบบนี้จึงถูกออกแบบมาเพื่อเปลี่ยนกระบวนการดังกล่าวให้เป็นอัตโนมัติทั้งหมด ตั้งแต่การจัดการไฟล์โลก การเรนเดอร์ ไปจนถึงการผลิตไฟล์วิดีโอสำเร็จรูป
2. การผสานระบบเรนเดอร์ Chunky อัตโนมัติ (Automated Render Integration)
หัวใจสำคัญของโครงการคือการเชื่อมต่อกับ Chunky Renderer ซึ่งเป็นโปรแกรมเรนเดอร์ประสิทธิภาพสูงสำหรับ Minecraft โดยระบบสามารถควบคุมกระบวนการเรนเดอร์ผ่าน Batch Processing ได้อย่างอิสระ ผู้ใช้สามารถกำหนด Scene และมุมกล้องไว้เพียงครั้งเดียว จากนั้นโปรแกรมจะทำการเรนเดอร์ภาพจากทุกโลกที่เลือกไว้อย่างต่อเนื่องโดยไม่ต้องเฝ้าสังเกตการณ์
3. ระบบจัดเรียงลำดับเวลาอัจฉริยะและการอ่าน Metadata
เพื่อให้วิดีโอแสดงวิวัฒนาการได้อย่างถูกต้อง โปรแกรมมีอัลกอริทึมในการสแกนและจัดเรียงโฟลเดอร์โลกตามรูปแบบวันที่ (YYMMDD) โดยอัตโนมัติ นอกจากนี้ยังมีการใช้ห้องสมุด mcworldlib เพื่อเข้าถึงไฟล์ level.dat ของแต่ละโลก เพื่อดึงข้อมูลเชิงลึก เช่น จำนวนวันที่ผ่านไปในเกม (In-game Day Count) มาใช้เป็นข้อมูลอ้างอิง
4. การผลิตสื่อวิดีโอและการแสดงผลข้อมูล (Video Engineering & Overlay)
ในขั้นตอนสุดท้าย ระบบใช้เทคโนโลยี OpenCV (Open Source Computer Vision Library) ในการรวบรวมภาพสแนปชอตที่เรนเดอร์เสร็จสิ้นมาสร้างเป็นวิดีโอคุณภาพสูง โดยมีการเพิ่ม "Day Counter Overlay" ลงบนเฟรมภาพโดยอัตโนมัติ เพื่อให้ผู้ชมเห็นความเปลี่ยนแปลงควบคู่ไปกับระยะเวลาที่ผ่านไปในเกม
5. ความปลอดภัยและประสิทธิภาพของระบบ
สถาปัตยกรรมของซอฟต์แวร์ถูกออกแบบโดยใช้หลักการ Multi-threading ผ่าน PyQt6 เพื่อแยกส่วนการประมวลผลการเรนเดอร์ที่หนักหน่วงออกจากส่วนติดต่อผู้ใช้ (GUI) ทำให้โปรแกรมยังคงตอบสนองได้ในขณะทำงาน พร้อมทั้งมีระบบตรวจสอบสถานะของ Chunky Launcher และการดาวน์โหลดคอมโพเนนต์ที่จำเป็นโดยอัตโนมัติผ่านโปรโตคอล HTTP เพื่อความสะดวกในการติดตั้งและใช้งาน
