Unity Engine – การใช้ Game Engine กับการพัฒนาเครื่องมือการเรียนรู้


gogo

ที่มาของโครงงาน

เนื่องจากเกมในปัจจุบันถูกจำกัดอยู่เพียงแค่เล่นกับเมาส์คีย์บอร์ดจอยสติกยังไม่ค่อยมีฮาร์ดแวร์ราคาถูกที่สามารถพัฒนาได้เองเพื่อให้เกิดการควบคุมเกมที่แปลกใหม่และไม่มีรูปแบบการเล่นเกมที่ตายตัวเพื่อให้เกิดสนุกสนานและความสมจริงระหว่างตัวเกมกับผู้เล่น เช่น เกมยิงปืนก็มีอุปกรณ์ที่สามารถสร้างได้เองให้เหมือนเรากำลังยิงปืนอยู่จริงๆ หรือเกมตีเทนนิสก็สามารถสร้างไม้เทนนิสขึ้นมาในการควบคุมเกม

ในปัจจุบันมีเอนจินเกม Unity ที่สามารถสร้างเกมสามมิติที่สมจริงเปิดให้ใช้พัฒนาได้โดยไม่มีค่าใช้จ่ายและมีประสิทธิภาพสูงอีกทั้งเป็นที่ได้รับความนิยมสูงในวงการนักพัฒนาเกมจึงไม่ยากที่จะเรียนรู้การใช้งานจึงเกิดแนวคิดที่จะพัฒนาระบบเชื่อมต่อระหว่างเซนเซอร์และมอเตอร์ เชื่อมต่อกับ Unity ขึ้นมา เพื่อที่จะทำให้สามารถใช้เซ็นเซอร์ และมอเตอร์ชนิดต่างๆ กับตัวเกมได้ ตลอดจนสามารถใช้เกมควบคุมการทำงานของเซนเซอร์ และมอเตอร์ได้เช่นเดียวกัน

วิดีโอสาธิตการทำงาน

โครงสร้างของระบบ

– GoGo API

หลักการทำงาน

gogo

สร้าง Application program Interface สำหรับเชื่อมต่อ GoGo Board กับ Unity Game Engine โดยในส่วนของ GoGo API สามารถเชื่อมต่อกับ GoGo Board ได้โดยตรง

– ตัวอย่างเกมตกปลา

ตกปลา

ในตัวเกมบน Unity ก็จะเป็นเกมตกปลาแบบเสมือนผู้เล่นกำลังตกปลาอยู่หน้าจอ  ในส่วนอุปกรณ์ควบคุมเกมจากภายนอกโดยการสร้างตัวเบ็ดขึ้นมาแบบเสมือนของจริง โดนการเหวี่ยงเบ็ดคือการกดปุ่มสวิตซ์ที่ตัวคันเบ็ด แล้วจะมีสวิตซ์อีกตัวอยู่ข้างในรอกสำหรับนับรอบเวลาหมุนรอกเก็บสายเบ็ดเข้ามา ขณะที่ปลากินเบ็ดอยู่มอเตอร์ก็จะทำงานทำให้เกิดแรงสั่นสะเทือนมาที่มือผู้เล่น

-Virtual Demo Car,Virtual AR.Drone

Virtual

307331_412019542219622_377287858_n

Virtual Demo Car คือการจำลองตัวรถใน Unity โดยการส่งคำสั่งควบคุมตัวรถจาก Blockly ส่งมาเป็นคำสั่ง String ผ่าน Websocket ให้กับ Unity โดย Simulator Car ใน Unity เป็นผลการขับเคลื่อนตัวรถหรือระบบต่างๆมาจากระบบ Physical Engine ของ Unity แล้วสามารถควบคุมรถของจริงได้โดย Unity ส่งคำสั่ง Bits ให้กับตัว GoGo Board

fly

Virtual Demo AR.Drone คือการจำลอง AR.Drone ใน Unity โดยการส่งคำสั่งควบคุมแบบจำลอง AR.Drone จาก Blockly ส่งมาเป็นคำสั่ง String ผ่าน Websocket ให้กับ Unity แล้ว Unity ทำการแสดงผลของคำสั่งทางหน้าจอ

ผลการทดลอง

–   การทดลอง GoGo API ค่อนข้างง่ายในการใช้งาน

–   เกมตัวอย่างมีความน่าสนใจในรูปแบบการเล่น ทำให้เกิดแรงจูงแก่ผู้ทดลองที่จะพัฒนา Applications โดยใช้ GoGo API

–   Virtual Car และ Virtual AR.Drone  สร้างผลที่เกิดขึ้นในคอมพิวเตอร์ ก่อนไปทดลองกับ Robot จริง

ข้อจำกัด

–   การที่จะพัฒนา Applications สำหรับผู้ที่สนใจพัฒนาจากจาก GoGo API ต้องมีพื้นฐานการเขียนโปรแกรมบน Unity อยู่บ้าง(ยังไม่สามารถใช้กับผู้ที่ยังไม่มีพื้นฐานเลยได้)

–   Physical Simulator ต้องการความสมจริงยิ่งขึ้นเมื่อเทียบกับของจริง

Link source code

–   GoGo Monitor on Unity

http://svn.e-cpe.org/svnpub/cpethesis/unitygogo/GoGoBoard/

–   Fishing Game

http://svn.e-cpe.org/svnpub/cpethesis/unitygogo/Fishing/

–   Virtual Car

http://svn.e-cpe.org/svnpub/cpethesis/unitygogo/GoGoBoard/

–   Virtual AR.Drone

http://svn.e-cpe.org/svnpub/cpethesis/unitygogo/Unity%20Websocket%20Demo/

–   Blockly

http://svn.e-cpe.org/svnpub/cpethesis/unitygogo/Blockly/

Link  หนังสือโปรเจค

http://svn.e-cpe.org/svnpub/cpethesis/unitygogo/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%9E%E0%B8%B1%E0%B8%92%E0%B8%99%E0%B8%B2%E0%B8%A3%E0%B8%B0%E0%B8%9A%E0%B8%9A%E0%B9%80%E0%B8%8A%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%A1%E0%B8%95%E0%B9%88%E0%B8%AD%E0%B9%80%E0%B8%8B%E0%B8%99%E0%B9%80%E0%B8%8B%E0%B8%AD%E0%B8%A3%E0%B9%8C%E0%B9%81%E0%B8%A5%E0%B8%B0%E0%B8%A1%E0%B8%AD%E0%B9%80%E0%B8%95%E0%B8%AD%E0%B8%A3%E0%B9%8C%E0%B8%AA%E0%B8%B3%E0%B8%AB%E0%B8%A3%E0%B8%B1%E0%B8%9A%E0%B8%A3%E0%B8%B0%E0%B8%9A%E0%B8%9A%E0%B8%9E%E0%B8%B1%E0%B8%92%E0%B8%99%E0%B8%B2%E0%B9%80%E0%B8%81%E0%B8%A1%20Unity.pdf

ภาพสมาชิก

นริศภูมิ สอนแก้ว 520610404

doE

 

พีรพล บุญสม 520610437

แบงค์