สารบัญ:
- ขั้นตอนที่ 1: รายการช้อปปิ้ง
- ขั้นตอนที่ 2: การเชื่อมต่อ
- ขั้นตอนที่ 3: รหัส Arduino
- ขั้นตอนที่ 4: ใน Game Engine: คลิก Team 2.5
วีดีโอ: Arduino Video Game Controller: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
คุณมีชุด Arduino วางอยู่รอบ ๆ แต่ไม่รู้ว่าจะทำอย่างไรกับมัน? อาจไม่ใช่ แต่ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นทีละขั้นตอนถึงวิธีการสร้าง โค้ด และรวม Arduino เข้ากับโครงการของคุณ ในขณะนี้ คู่มือนี้ทดสอบกับ Clickteam Fusion Developer 2.5 เท่านั้น แต่สามารถใช้ขั้นตอนโค้ด build และ Arduino ได้ในระดับสากล คู่มือนี้อาจได้รับการอัปเดตสำหรับ Unreal และ Unity ในอนาคต
ขั้นตอนที่ 1: รายการช้อปปิ้ง
- Arduino Uno หรือใกล้เคียง
- สาย USB
- (400 คะแนน) Breadboard หรือ 1 x perf/strip board
- สายไฟที่เข้ากันได้กับ Arduino
- เซนเซอร์ต่างๆ ฉันใช้สิ่งต่อไปนี้ในโครงการตัวอย่างของฉัน:
- แผงเมาท์โพเทนชิออมิเตอร์ 10K เขียงหั่นขนมที่เป็นมิตร
- โฟโตรีซีสเตอร์
- ตัวต้านทานที่ไวต่อแรงกด
ขั้นตอนที่ 2: การเชื่อมต่อ
หมายเหตุ: นี่เป็นเพียงเซ็นเซอร์ที่ฉันใช้เป็นการส่วนตัวสำหรับโครงการของฉัน ซึ่งหมายความว่ามีตัวเลือกอีกมากมาย คำแนะนำทีละขั้นตอนเกี่ยวกับวิธีการวางสายเหล่านั้นสามารถพบได้ในไซต์ต่างๆ ขึ้นอยู่กับเซ็นเซอร์
ขั้นตอนที่ 3: รหัส Arduino
คัดลอกและอัปโหลดรหัสนี้ไปยัง Arduino หากคุณต้องการใช้เซ็นเซอร์ประเภทเดียวกับฉัน มิฉะนั้น คุณสามารถใช้รหัสของคุณเองสำหรับเซ็นเซอร์ได้ สิ่งเดียวที่สำคัญระดับโลกที่จำเป็นคือตัวแปรที่คุณต้องการใช้ในเอ็นจิ้นเกมของคุณจะถูกพิมพ์ไปยังจอภาพแบบอนุกรมหรือสามารถอ่านได้ด้วยวิธีอื่น
// สิ่งเหล่านี้ถูกตั้งค่าไว้ที่จุดเริ่มต้นและไม่เปลี่ยนแปลงเมื่อโปรแกรมกำลังทำงาน เช่นเดียวกับที่ ANALOG IN พินใช้
const int potPin = A0; const int fsrAnalogPin = 5; const int photocellPin = 2; //ตัวแปร: //LIGHT SENSOR: //ตัวแปรปริมาณแสง: int photocellReading; //POTENTIOMETER //ค่าของค่า int ของโพเทนชิออมิเตอร์ //PRESSURE SENSOR //นี่คือตัวแปรข้อมูลดิบจากเซ็นเซอร์ความดัน int fsrReading; //เวอร์ชันที่แมปของแรงดัน int ตัวแปร fsrReading; การตั้งค่าเป็นโมฆะ () { // ใส่รหัสการตั้งค่าของคุณที่นี่เพื่อเรียกใช้ครั้งเดียว: pinMode (potPin, INPUT); Serial.begin(9600); } void loop() { // PRESSURE SENSOR // ที่นี่เราใช้ fsrAnalogPin ที่ระบุเพื่ออ่านข้อมูลจากพินนั้น fsrReading = analogRead (fsrAnalogPin); // ค่าแผนที่ 0-1023 ถึง 0-255 ความดัน = แผนที่(fsrReading, 0, 1023, 0, 255); //ตรวจสอบว่าแรงดันต่ำกว่าหรือเกินจำนวนที่กำหนดหรือไม่ พิมพ์ค่าใดค่าหนึ่งจากสองค่านี้ ตัวแปรที่พิมพ์ออกมานี้ใช้ในภายหลังในเอ็นจิ้นเกม ถ้า (ความดัน 70) { Serial.print ("6"); } // ค่าโพเทนชิโอมิเตอร์ = analogRead (potPin); // อ่านและบันทึกค่าแอนะล็อกจากค่าโพเทนชิออมิเตอร์ = แผนที่ (ค่า 0, 1023, 0, 360); // ค่าแผนที่ 0-1023 ถึง 0-360 // ที่นี่เราแบ่ง 360 ออกเป็นหกส่วนที่แตกต่างกัน //คุณสามารถเปลี่ยนจำนวนเซ็กเมนต์เป็นจำนวนที่สูงขึ้นได้ แต่ละส่วนจะมีช่วงที่เล็กกว่า ตัวอย่างเช่น 8 เซ็กเมนต์จะมีช่วงละ 45 (360 / จำนวนเซ็กเมนต์) //หากค่าปัจจุบันอยู่ในเซ็กเมนต์ มันจะพิมพ์ชื่อของกลุ่มนั้น ถ้า (ค่า 60 และค่า 120 และค่า 180 และค่า 240 และค่า 300 และค่า < 375) Serial.print("Six"); // LIGHT SENSOR // ที่นี่เราอ่านและตั้งค่าตัวแปรอีกครั้ง ในกรณีนี้ photocellReading photocellReading = analogRead (ตาแมวพิน); //เราตรวจสอบปริมาณของแสง โดยพิมพ์ที่มืดและมืดมากเป็น 3 และพิมพ์ค่าแสงปกติ 4. if (photocellReading < 10) { Serial.println(" - 3"); } else if (photocellReading < 200) { Serial.println(" - 3 -"); } else if (photocellReading < 500) { Serial.println(" - 4 -"); } // ตัวเลขใน Serial: // ตัวเลขแรกคือเซ็นเซอร์ความดัน 5 ไม่ได้กดและ 6 ถูกกด //หลังจากนั้นเป็นส่วนที่โพเทนชิออมิเตอร์เปิดอยู่ //และตัวเลขสุดท้ายอาจเป็น 3 = มืด หรือ 4 = สว่าง
ขั้นตอนที่ 4: ใน Game Engine: คลิก Team 2.5
ใน Extension Manager ค้นหา Serial Object และติดตั้งสิ่งนี้
วาง Serial Object ตัวนับ และสตริงลงในเฟรมของคุณ (คลิกขวาในกรอบ - แทรกวัตถุ)
ในตัวแก้ไขเหตุการณ์ สร้างเหตุการณ์: หากข้อมูลกำลังรอ: ตั้งค่าสตริงที่ปรับเปลี่ยนได้เป็น GetData("Serial Object")
การดำเนินการนี้จะตั้งค่าสตริงเป็นข้อมูลที่ส่งโดย Arduino ตอนนี้สตริงควรมีลักษณะคล้ายกับ Serial Monitor
สร้างเหตุการณ์อื่นเสมอ: ตั้งค่าตัวนับเป็น: Find(string$("String"), "4", 0)
ตัวอย่างนี้จะพยายามหา 4 ซึ่งเท่ากับแสงที่สามารถเห็นได้ในรหัส Arduino
หากพบ 4 จะตั้งค่าตัวนับเป็น 4 หากไม่พบ 4 ตัวนับจะเป็น -1
ตอนนี้คุณสามารถเพิ่มกิจกรรมใหม่เพื่อทำบางสิ่งกับผลลัพธ์นี้:
ถ้าตัวนับ = -1: คุณสามารถใส่สิ่งที่ควรเกิดขึ้นได้หากเป็นเท็จ เช่น การปิดแอนิเมชั่นของหลอดไฟ
หากตัวนับ = -1: หมายความว่าพบตัวแปรแล้วและตัวนับได้รับการตั้งค่าเป็นตัวแปรใดก็ตามที่อาจเป็น (ตราบใดที่ไม่ใช่ -1) คุณสามารถสร้างมันขึ้นมาเพื่อให้แอนิเมชั่นหลอดไฟสลับเป็นเปิดได้
โดยพื้นฐานแล้วโดยใช้ตัวนับที่ตั้งค่าเป็น -1 ซึ่งเป็นเท็จหรือ -1 ซึ่งเป็นจริง คุณสามารถทำให้เหตุการณ์เกิดขึ้นได้
แนะนำ:
Arduino Game Controller: 5 ขั้นตอน
Arduino Game Controller: ตัวควบคุมเกมเป็นอุปกรณ์ที่ใช้ในการป้อนข้อมูลในวิดีโอเกมเพื่อทำให้ตัวละครหรือวัตถุเคลื่อนที่ การออกแบบและฟังก์ชันการทำงานของตัวควบคุมเกมนั้นง่าย และจะทำให้คุณได้รับประสบการณ์การเล่นเกมที่น่าตื่นตาตื่นใจอย่างแน่นอน และมันจะเป็น
USB Paddle Game Controller: 7 ขั้นตอน (พร้อมรูปภาพ)
USB Paddle Game Controller: ลูกชายของฉันกำลังเล่นเกมย้อนยุคในตอนกลางคืนสำหรับวันเกิดของเขา และในตอนเช้าของวัน ฉันตัดสินใจว่าฉันจะทำคอนโทรลเลอร์เกมพาย USB สำหรับ Pong โดยใช้เครื่องพิมพ์ 3 มิติและ อุปกรณ์อิเล็กทรอนิกส์จากที่ซ่อนของฉัน ในขณะที่ฉันทำมานา
DIY USB Video Game Controller: 6 ขั้นตอน
ตัวควบคุมวิดีโอเกม USB แบบ DIY: มีตัวควบคุมแบบกำหนดเองที่ทำขึ้นเองได้หลากหลายแบบ ตั้งแต่เกมอาร์เคดแบบคลาสสิกไปจนถึงการสร้างตัวควบคุมสมัยใหม่ ซึ่งมักจะทำมาจากส่วนหลักเดียวกัน สำหรับโปรเจ็กต์สุดท้ายของเราในชั้นเรียนวิศวกรรมขั้นสูงของโรงเรียนมัธยมศึกษาตอนปลาย , เรามีเ
Arduino Rhythm Game Controller (สำหรับเกมของฉัน): 6 ขั้นตอน
Arduino Rhythm Game Controller (สำหรับเกมของฉันเอง): ในคำแนะนำนี้ฉันจะแสดงให้คุณเห็นว่าฉันสร้าง Rhythm Game Controller ได้อย่างไรตั้งแต่เริ่มต้น มันเกี่ยวข้องกับทักษะงานไม้ขั้นพื้นฐาน ทักษะการพิมพ์ 3 มิติขั้นพื้นฐาน และทักษะการบัดกรีขั้นพื้นฐาน คุณสามารถสร้างโครงการนี้ได้สำเร็จถ้าคุณมีศูนย์ เช่น
Arduino Game Controller + Unity Game: 5 ขั้นตอน
Arduino Game Controller + Unity Game: ในคำแนะนำนี้ฉันจะแสดงวิธีสร้าง / โปรแกรมคอนโทรลเลอร์เกม Arduino ซึ่งสามารถเชื่อมต่อกับความสามัคคี