รหัสย้อนยุค: Space Invaders สไตล์ Arcade
โปรเจกต์ Arduino Space Invaders เป็นบททดสอบสำคัญสำหรับนักพัฒนาเกม มันต้องการให้คุณจัดการวัตถุที่เคลื่อนไหวจำนวนมาก (lasers, aliens, ยานของผู้เล่น) พร้อมกันภายใต้ข้อจำกัดด้านหน่วยความจำที่เข้มงวดของ 8-bit microcontroller

Object-Oriented Programming (OOP)
เมื่อต้องจัดการ aliens 20 ตัวบนหน้าจอ คุณไม่สามารถสร้างตัวแปร X และ Y 20 ตัวด้วยมือได้ โปรเจกต์นี้เป็นข้ออ้างที่สมบูรณ์แบบในการเรียนรู้ Structs หรือ Classes
- คุณสร้าง
Alienclass ที่เก็บตำแหน่ง X, ตำแหน่ง Y และความเร็ว - คุณสร้าง Array ของ
Alienobjects - ใน
loop()หลักของคุณ คุณใช้forloop เดียวเพื่อสั่งให้ alien object ทุกตัว.moveDown()และ.checkCollision()
ส่วนประกอบที่จำเป็น
- Arduino Uno หรือ ESP32 (สำหรับกราฟิกที่ลื่นไหลและมี FPS สูง)
- 0.96" OLED I2C Display (128x64): สามารถเรนเดอร์ complex sprites ได้
- Push Buttons (x3): ปุ่ม Left, Right และ FIRE!
- Piezo Buzzer: จำเป็นสำหรับจังหวะการเต้นของหัวใจที่ลดลงของฝูง alien
การจัดการหน่วยความจำ
เนื่องจาก Uno มี RAM เพียง 2KB คุณต้องใช้ PROGMEM เพื่อจัดเก็บอาร์เรย์กราฟิกยานอวกาศของคุณใน flash memory มิฉะนั้น Arduino จะ crash ทันทีที่คุณเปิดเครื่อง เป็นโปรเจกต์ที่ท้าทายและคุ้มค่าอย่างยิ่งสำหรับ intermediate coders