บทที่ 7: การทดสอบและปรับปรุงเกม

7.1 การทดสอบเกม

การทดสอบเกมเป็นขั้นตอนสำคัญในการตรวจสอบว่าเกมที่พัฒนาไปนั้นทำงานได้ตามที่ตั้งใจหรือไม่ การทดสอบจะช่วยให้เรารู้ว่าเกมมีข้อผิดพลาด (bugs) หรือปัญหาอะไรบ้าง เพื่อที่จะสามารถแก้ไขได้ก่อนนำเกมไปให้ผู้เล่นได้สัมผัส

วิธีการทดสอบเกมใน Unity
  1. การใช้โหมด Play ใน Unity:

    • Unity มีโหมด Play Mode ที่ช่วยให้คุณสามารถทดสอบเกมได้ภายใน Unity Editor โดยตรง
    • คุณสามารถเริ่มทดสอบเกมได้โดยการคลิกที่ปุ่ม Play ซึ่งอยู่ที่มุมบนกลางของ Unity Editor
    • เมื่อคุณกดปุ่ม Play, Unity จะเปลี่ยนเป็นโหมดการเล่นจริง ๆ ที่คุณสามารถควบคุมตัวละครและเล่นเกมได้เช่นเดียวกับผู้เล่นในโลกจริง
  2. การตรวจสอบการทำงานของเกม:

    • ในโหมด Play คุณสามารถตรวจสอบว่าตัวละครสามารถเคลื่อนที่ได้หรือไม่, การเก็บเหรียญเพิ่มคะแนนหรือเปล่า, และระบบอื่น ๆ ทำงานตามที่คาดหวังไว้หรือไม่
    • ระหว่างทดสอบ คุณสามารถดูค่าต่าง ๆ ใน Inspector และ Console เพื่อดูว่าข้อมูลถูกต้องหรือไม่ เช่น คะแนนถูกเพิ่มขึ้นเมื่อเก็บเหรียญหรือไม่ หรือฟังก์ชันต่าง ๆ ทำงานตามที่ตั้งใจหรือไม่
  3. การตรวจสอบ Console สำหรับการตรวจจับข้อผิดพลาด:

      • Console ใน Unity เป็นเครื่องมือที่ใช้ในการตรวจสอบและแสดงผลการทำงานของเกม รวมถึงข้อความแจ้งเตือนและข้อผิดพลาด
      • หากเกิดข้อผิดพลาดในโค้ดหรือการทำงานของเกม Console จะเตือนให้คุณทราบว่ามีข้อผิดพลาดเกิดขึ้น พร้อมกับแสดงรายละเอียดของข้อผิดพลาดนั้น
      • คุณสามารถเพิ่มข้อความตรวจสอบการทำงานของโค้ดโดยใช้ Debug.Log() เพื่อช่วยในการตรวจสอบปัญหาต่าง ๆ เช่น:
    
    Debug.Log("ผู้เล่นได้เก็บเหรียญแล้ว!");
    
    
  4. การทดสอบกับอุปกรณ์จริง:

    • หากเกมของคุณจะถูกนำไปเล่นบนอุปกรณ์ต่าง ๆ เช่น โทรศัพท์มือถือหรือเครื่องคอนโซล คุณควรทดสอบเกมบนอุปกรณ์จริงเพื่อให้แน่ใจว่าเกมทำงานได้อย่างราบรื่น
    • คุณสามารถใช้ Unity Remote สำหรับการทดสอบเกมบนมือถือในขณะที่เกมกำลังพัฒนาหรือทำการ Build เกมและติดตั้งบนอุปกรณ์นั้น ๆ
การแก้ไขปัญหาที่พบในขณะทดสอบ
  1. การระบุข้อผิดพลาด (Bugs):

    • เมื่อทดสอบเกม คุณอาจพบข้อผิดพลาดที่ต้องแก้ไข เช่น ตัวละครเคลื่อนที่ผิดพลาด หรือคะแนนไม่ถูกเพิ่มเมื่อเก็บเหรียญ
    • การแก้ไขข้อผิดพลาดเริ่มต้นจากการระบุว่าเกิดข้อผิดพลาดที่ไหนในโค้ดหรือระบบของเกม
  2. การใช้ Debugging Tools:

    • Unity มีเครื่องมือ Debugger ที่ช่วยให้คุณสามารถติดตามโค้ดในขณะที่กำลังทำงานได้ เช่น การหยุดโค้ดในบางจุด (breakpoint) เพื่อตรวจสอบค่าตัวแปรหรือผลลัพธ์ที่เกิดขึ้น
    • นอกจากนี้ คุณสามารถใช้ Debug.Log() เพื่อแสดงข้อมูลใน Console และตรวจสอบว่าโค้ดทำงานตามที่คาดหวังหรือไม่
  3. การตรวจสอบ Console Logs:

    • Console Logs จะช่วยให้คุณเห็นข้อผิดพลาดหรือคำเตือนที่เกิดขึ้นในระหว่างการทดสอบ เช่น การเรียกฟังก์ชันที่ไม่มีอยู่ หรือการเข้าถึงตัวแปรที่ไม่ได้รับการกำหนดค่า
    • ตัวอย่างข้อความข้อผิดพลาดที่ Console อาจแสดง เช่น NullReferenceException ซึ่งมักเกิดขึ้นเมื่อคุณพยายามเข้าถึงตัวแปรที่ยังไม่ได้กำหนดค่า
  4. การแก้ไขข้อผิดพลาดในโค้ด:

    • เมื่อคุณระบุข้อผิดพลาดได้แล้ว คุณสามารถกลับไปแก้ไขโค้ดในสคริปต์ได้ ตัวอย่างเช่น หากพบว่าโค้ดบางส่วนไม่ทำงานเพราะตัวแปรที่ไม่มีการกำหนดค่า คุณสามารถแก้ไขโดยการตรวจสอบและกำหนดค่าตัวแปรก่อนเรียกใช้งาน
  5. การทดสอบซ้ำ:

    • หลังจากแก้ไขข้อผิดพลาดแล้ว คุณควรทดสอบเกมอีกครั้งเพื่อดูว่าปัญหาได้รับการแก้ไขหรือไม่ และเกมทำงานได้อย่างถูกต้องตามที่คาดหวัง

สรุป:
  • การทดสอบเกมใน Unity สามารถทำได้โดยการใช้โหมด Play เพื่อทดสอบการเล่นเกมและตรวจสอบการทำงานของระบบต่าง ๆ ในเกม
  • การแก้ไขปัญหาที่พบในขณะทดสอบ สามารถทำได้โดยการระบุข้อผิดพลาดจาก Console Logs หรือใช้ Debugging Tools เพื่อตรวจสอบการทำงานของโค้ด จากนั้นทำการแก้ไขปัญหาในโค้ดและทดสอบซ้ำจนกว่าจะแน่ใจว่าเกมทำงานได้ถูกต้อง