You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/th/6-space-game/4-collision-detection/assignment.md

62 lines
7.9 KiB

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "124efddbb65166cddb38075ad6dae324",
"translation_date": "2025-10-23T21:20:44+00:00",
"source_file": "6-space-game/4-collision-detection/assignment.md",
"language_code": "th"
}
-->
# สำรวจการชนกัน
## คำแนะนำ
นำความรู้เกี่ยวกับการตรวจจับการชนมาใช้โดยการสร้างเกมขนาดเล็กที่แสดงให้เห็นถึงการโต้ตอบของวัตถุในรูปแบบต่างๆ งานนี้จะช่วยให้คุณเข้าใจกลไกการชนผ่านการสร้างสรรค์และการทดลอง
### ข้อกำหนดของโปรเจกต์
**สร้างเกมแบบโต้ตอบขนาดเล็กที่มี:**
- **วัตถุที่เคลื่อนที่หลายชิ้น** ซึ่งสามารถควบคุมได้ผ่านแป้นพิมพ์หรือเมาส์
- **ระบบตรวจจับการชน** โดยใช้หลักการการตัดกันของสี่เหลี่ยมจากบทเรียน
- **การตอบสนองทางภาพ** เมื่อเกิดการชน (การทำลายวัตถุ, การเปลี่ยนสี, เอฟเฟกต์ต่างๆ)
- **กฎของเกม** ที่ทำให้การชนมีความหมายและน่าสนใจ
### ข้อเสนอแนะเชิงสร้างสรรค์
**ลองพิจารณาสร้างสถานการณ์เหล่านี้:**
- **สนามดาวเคราะห์น้อย**: นำทางยานอวกาศผ่านเศษซากอวกาศที่อันตราย
- **รถบัมพ์**: สร้างสนามชนที่มีพื้นฐานจากฟิสิกส์
- **ป้องกันดาวตก**: ปกป้องโลกจากหินอวกาศที่กำลังพุ่งเข้ามา
- **เกมเก็บของ**: รวบรวมไอเท็มในขณะที่หลบหลีกสิ่งกีดขวาง
- **การควบคุมพื้นที่**: วัตถุที่แข่งขันกันเพื่อครอบครองพื้นที่
### การดำเนินการทางเทคนิค
**โซลูชันของคุณควรแสดงให้เห็นถึง:**
- การใช้การตรวจจับการชนแบบสี่เหลี่ยมอย่างถูกต้อง
- การเขียนโปรแกรมที่ขับเคลื่อนด้วยเหตุการณ์สำหรับการป้อนข้อมูลของผู้ใช้
- การจัดการวงจรชีวิตของวัตถุ (การสร้างและการทำลาย)
- การจัดระเบียบโค้ดที่สะอาดและมีโครงสร้างคลาสที่เหมาะสม
### ความท้าทายเพิ่มเติม
**เพิ่มคุณสมบัติพิเศษให้กับเกมของคุณ:**
- **เอฟเฟกต์อนุภาค** เมื่อเกิดการชน
- **เอฟเฟกต์เสียง** สำหรับการชนในรูปแบบต่างๆ
- **ระบบคะแนน** ที่ขึ้นอยู่กับผลลัพธ์ของการชน
- **ประเภทการชนที่หลากหลาย** พร้อมพฤติกรรมที่แตกต่างกัน
- **ความยากที่เพิ่มขึ้น** เมื่อเวลาผ่านไป
## เกณฑ์การประเมิน
| เกณฑ์ | ยอดเยี่ยม | เพียงพอ | ต้องปรับปรุง |
|-------|-----------|----------|---------------|
| **การตรวจจับการชน** | ใช้การตรวจจับการชนแบบสี่เหลี่ยมได้อย่างแม่นยำกับวัตถุหลายประเภทและมีกฎการโต้ตอบที่ซับซ้อน | การตรวจจับการชนพื้นฐานทำงานได้ถูกต้องกับการโต้ตอบของวัตถุแบบง่าย | การตรวจจับการชนมีปัญหาหรือทำงานไม่สม่ำเสมอ |
| **คุณภาพของโค้ด** | โค้ดสะอาดและจัดระเบียบดี มีโครงสร้างคลาสที่เหมาะสม ชื่อตัวแปรที่มีความหมาย และมีคำอธิบายที่เหมาะสม | โค้ดทำงานได้แต่ยังสามารถจัดระเบียบหรืออธิบายได้ดีกว่านี้ | โค้ดเข้าใจยากหรือจัดระเบียบไม่ดี |
| **การโต้ตอบกับผู้ใช้** | การควบคุมตอบสนองได้ดี มีการเล่นเกมที่ราบรื่น การตอบสนองทางภาพที่ชัดเจน และกลไกที่น่าสนใจ | การควบคุมพื้นฐานทำงานได้พร้อมการตอบสนองที่เพียงพอ | การควบคุมไม่ตอบสนองหรือสับสน |
| **ความสร้างสรรค์** | แนวคิดดั้งเดิมที่มีคุณสมบัติพิเศษ การตกแต่งภาพที่สวยงาม และพฤติกรรมการชนที่สร้างสรรค์ | การดำเนินการมาตรฐานพร้อมองค์ประกอบที่สร้างสรรค์บางส่วน | ฟังก์ชันพื้นฐานโดยไม่มีการปรับปรุงที่สร้างสรรค์ |
---
**ข้อจำกัดความรับผิดชอบ**:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI [Co-op Translator](https://github.com/Azure/co-op-translator) แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลโดยอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลสำคัญ ขอแนะนำให้ใช้บริการแปลภาษามืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้