ใครสนเรื่องราวเบื้องหลังอะไรมากมาย
มาลุยกันเลยดีกว่า!
ST6: The Ultimate Custom-Language Gaming Console
ST6 มันไม่ใช่แค่เกมมือถือธรรมดาๆ นะน้อง มันคือการประกาศศักดาในวงการ Embedded System เลยล่ะ ด้วยการไม่ใช้ไลบรารี่มาตรฐาน และสร้างภาษาเฉพาะตัวขึ้นมาเองที่เรียกว่า "Self Defined Language" (SDL) โปรเจกต์นี้จะพาน้องๆ ดิ่งลึกลงไปถึงแก่นของระบบ ว่าคำสั่งถูกแยกวิเคราะห์และประมวลผลในเกมได้ยังไง
ฮาร์ดแวร์ระดับเทพเพื่อเกมลื่นปรื๊ด
- Arduino Due & Mega 2560: ในขณะที่คอนโซลส่วนใหญ่ใช้ชิปตัวเดียว ST6 ของเราใช้พลัง 32-bit ของ Arduino Due คู่กับพอร์ต I/O เยอะแยะของ Mega 2560 สถาปัตยกรรมแบบ Dual-Processor นี้ทำให้ชิปหนึ่งจัดการคำนวณกราฟิกส์หนักๆ ส่วนอีกตัวจัดการ I/O และการแยกวิเคราะห์ภาษาที่เราสร้างขึ้นเอง
- MPU6050 6-DOF Sensor: ไอซีตัวนี้มาพร้อม Gyroscope 3 แกน และ Accelerometer 3 แกน ทำให้เราสร้างเกมที่ควบคุมด้วยการขยับตัวได้เลย แค่เอียงหรือเขย่าคอนโซล ก็สั่งการในเกมได้ทันที
นวัตกรรมด้านซอฟต์แวร์: Processing + ST6 Library
โปรเจกต์นี้ใช้ Processing ซึ่งเป็นทั้งซอฟต์แวร์สเก็ตช์บุ๊กและภาษาโปรแกรมมิ่งที่ยืดหยุ่น ไว้เรียนรู้การโค้ดในบริบทของงานศิลปะ
- Custom Serial Protocol: ข้อมูลจากเซ็นเซอร์ตรวจจับการเคลื่อนไหวและปุ่มกด จะถูกแพ็คในรูปแบบ Binary ที่เรากำหนดเอง แล้วส่งสตรีมไปยังคอมพิวเตอร์โฮสต์
- The ST6 Library: ไลบรารี่ลิขสิทธิ์เฉพาะของเรานี้ จะถอดรหัสข้อมูลการเคลื่อนไหวที่เข้ามา และแมปมันเข้ากับโทเค็นของภาษาที่เราสร้างขึ้น ชั้น Abstract นี้ทำให้การพัฒนาเกมเร็วขึ้นมากเมื่อเทียบกับ C++ แบบดั้งเดิม เพราะการเคลื่อนไหวที่ซับซ้อนสามารถอธิบายได้ด้วยคำสั่งระดับสูงที่เรียบง่าย
การสร้าง ST6 จะสอนคอนเซปต์ขั้นสูงเกี่ยวกับการสื่อสารระหว่างบอร์ดหลายตัว การเพิ่มประสิทธิภาพข้อมูล Serial และกลไกพื้นฐานที่ทำให้ภาษาคอมพิวเตอร์เปลี่ยนความตั้งใจของมนุษย์เป็นการกระทำของเครื่อง