Мазмуну:
- 1 -кадам: соода тизмеси
- 2 -кадам: Байланыштар
- 3 -кадам: Arduino коду
- 4 -кадам: Оюн кыймылдаткычында: Команда 2.5 чыкылдатыңыз
Video: Arduino Video Game Controller: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Сизде Arduino комплект бар, бирок аны менен эмне кылуу керек экенин билбейсизби? Балким, андай эмес, бирок бул Нускоодо мен сизге кадам сайын кадамды көрсөтөм, кантип Arduino'yу долбооруңузга курууну, коддоону жана интеграциялоону. Учурда бул колдонмо Clickteam Fusion Developer 2.5 менен гана сыналган, бирок куруу жана Arduino кодунун кадамдары универсалдуу түрдө колдонулушу мүмкүн. Бул колдонмо келечекте Unreal жана Unity үчүн жаңыртылышы мүмкүн.
1 -кадам: соода тизмеси
- Arduino Uno же окшош
- USB кабели
- (400 упай) Нан тактасы же 1 x perf/strip board
- Arduino менен шайкеш келген зымдар.
- Ар кандай сенсорлор. Мен мисал долбоорумда төмөнкүлөрдү колдондум:
- Панелдик потенциометрдин 10K панелине ылайыктуу
- Photoresistor
- Сезимге каршы резистор
2 -кадам: Байланыштар
Эскертүү: Булар менин долбоорум үчүн жеке колдонгон сенсорлор. Бул жерде дагы көптөгөн варианттар бар экенин билдирет. Сенсорго жараша ар кандай сайттарда аларды кантип зым кылуу боюнча этап -этабы менен көрсөтмөлөрдү табууга болот.
3 -кадам: Arduino коду
Мен сыяктуу сенсорлорду колдонууну кааласаңыз, бул кодду Arduinoго көчүрүп жүктөңүз. Болбосо сенсорлор үчүн өзүңүздүн кодуңузду колдоно аласыз. Жалгыз глобалдык маанилүү нерсе - бул сиздин оюн кыймылдаткычыңызда колдонууну каалаган өзгөрмөлөр сериялык мониторго басып чыгарылышы же башка жол менен окулушу.
// Булар башында коюлган жана программа иштеп жатканда өзгөртүлбөйт. Кандай ANALOG IN пин колдонот.
const int potPin = A0; const int fsrAnalogPin = 5; const int photocellPin = 2; // Variables: // LIGHT SENSOR: // Жарыктын өлчөмү өзгөрмөлүү: int photocellReading; // ПОТЕНТИОМЕТР // Потенциометрдин мааниси int мааниси; // КЫСЫМ СЕНСОРУ // Бул басым сенсорунун чийки маалымат өзгөрмөсү. int fsrReading; // fsrReading өзгөрмөлүү int басымынын картага түшүрүлгөн версиясы; void setup () {// бир жолу иштетүү үчүн орнотуу кодуңузду бул жерге коюңуз: pinMode (potPin, INPUT); Serial.begin (9600); } void loop () {// PRESSURE SENSOR // Бул жерде биз ошол пинден маалыматтарды окуу үчүн көрсөтүлгөн fsrAnalogPin колдонобуз. fsrReading = analogRead (fsrAnalogPin); // Картанын мааниси 0-1023тен 0-255ке чейин. басым = карта (fsrReading, 0, 1023, 0, 255); // Кысымдын төмөндүгүн же белгилүү бир өлчөмдө экөөнүн бирин басып чыгарганын текшериңиз. Бул басылган өзгөрмө кийинчерээк оюн кыймылдаткычында колдонулат. if (басым 70) {Serial.print ("6"); } // POTENTIOMETER мааниси = analogRead (potPin); // Окуу жана потенциометрдин маанисинен аналогдук маанини сактоо = карта (маани, 0, 1023, 0, 360); // Картанын мааниси 0-1023төн 0-360ка чейин // Бул жерде биз 360ты алты башка сегментке бөлөбүз. // Сиз сегменттердин суммасын жогорку суммага өзгөртө аласыз. Ар бир сегмент андан кичирээк диапазонго ээ болмок. Мисалы, 8 сегменттин ар биринин диапазону 45 болмок. (360 /сегменттердин суммасы) // Эгерде учурдагы мааниси сегментке түшсө, анда ал ошол сегменттин атын басып чыгарат. if (мааниси 60 жана мааниси 120 жана мааниси 180 жана мааниси 240 жана мааниси 300 жана мааниси <375) Serial.print ("Алты"); // LIGHT SENSOR // Бул жерде биз дагы бир жолу өзгөрмөнү окуйбуз жана орнотобуз, бул учурда photocellReading. photocellReading = analogRead (photocellPin); // Биз жарыктын көлөмүн текшеребиз, караңгы жана өтө караңгы басуу менен 3 жана кадимки жарык маанилерин басып чыгаруу 4. if (photocellReading <10) {Serial.println (" - 3"); } else if (photocellReading <200) {Serial.println (" - 3 -"); } else if (photocellReading <500) {Serial.println (" - 4 -"); } // Сериалдагы сандар: // Биринчи сан - басым сенсору, 5 басылбайт жана 6 басылат. // Андан кийин потенциометр кайсы сегментте турат. // Ал эми акыркы сан 3 = караңгы же 4 = жарык.
4 -кадам: Оюн кыймылдаткычында: Команда 2.5 чыкылдатыңыз
Кеңейтүү менеджеринен Сериялык объектти таап, аны орнотуңуз.
Сериялык объектти, эсептегичти жана жипти алкагыңызга коюңуз. (Кадрдын оң баскычы - объектти киргизүү)
Окуя редакторунда бир окуя түзүңүз: Эгерде маалыматтар күтүп жатса: GetData ("Сериялык объект") үчүн өзгөрүлүүчү сапты коюңуз.
Бул сапты Arduino жөнөтүп жаткан бардык маалыматтарга орнотот, сап эми Сериялык Мониторго окшош болушу керек.
Дагы бир окуя түзүңүз Ар дайым: Эсептегичти төмөнкүгө коюу: Табуу ($ ("String"), "4", 0)
Бул мисал Arduino кодексинде көрүнүп тургандай, жарыкка барабар 4тү табууга аракет кылат.
Эгерде ал 4тү тапса, эсептегичти 4кө коёт, эгер 4тү таба албаса, эсептегич -1 болот.
Эми сиз бул натыйжа менен бир нерсе кылуу үчүн жаңы окуя кошо аласыз:
Эгерде эсептегич = -1: Бул жерде жалган болсо, эмне болушу керектигин коюуга болот, мисалы, чырактын анимациясы.
Эгерде эсептегич = -1: Бул өзгөрмөнү тапкандыгын жана эсептегич бул өзгөрмөнүн кандай болбосун коюлганын билдирет (эгер -1 эмес болсо), бул жерде чырак анимациясы күйгүзүлгөндөй кылып жасай аласыз.
Негизи эсептегичтерди колдонуу менен -1 -бул жалган же -1 -бул окуяларды ишке ашырууга мүмкүндүк берет.
Сунушталууда:
Arduino Game Controller: 5 кадам
Arduino Game Controller: Оюн контролери - бул каарманды же объектти кыймылга келтирүү үчүн видео оюнга киргизүү үчүн колдонулган түзмөк. Оюн контроллеринин дизайны жана иштеши оңой жана сизге укмуштуудай оюн тажрыйбасын берет, жана бул дагы инвойо болот
DIY USB Video Game Controller: 6 кадам
DIY USB Video Game Controller: Классикалык аркада таякчаларынан баштап, заманбап контроллерлердин эс алуусуна чейин, адатта, ошол негизги бөлүктөрдөн жасалган, өзүңүз жасай ала турган атайын контроллерлер бар. , бизде жок
Arduino Rhythm Game Controller (Менин Оюнум үчүн): 6 кадам
Arduino Rhythm Game Controller (Менин Оюнум үчүн): Бул нускамада мен бул ритм оюн контроллерин нөлдөн кантип кураарымды көрсөтөм. Бул жыгач иштетүүнүн негизги көндүмдөрүн, негизги 3d басып чыгаруу көндүмдөрүн жана негизги ширетүү көндүмдөрүн камтыйт. Сиз, балким, бул долбоорду ийгиликтүү кура аласыз, эгерде сизде мурунку нөлүңүз бар болсо
Arduino Game Controller + Unity Game: 5 кадам
Arduino Game Controller + Unity Game: Бул көрсөтмөдө мен сизге биримдикке туташа турган arduino оюн контроллерин кантип курууну/программалоону көрсөтөм
DIY Video Game Arduino колдонуу (Arduboy Clone): 7 кадам (Сүрөттөр менен)
DIY Video Game Arduino аркылуу (Arduboy Clone): Ардубой деп аталган 8 биттик, кредиттик карта өлчөмүндөгү оюн платформасы бар, бул ачык булак оюндарын үйрөнүүгө, бөлүшүүгө жана ойногонго жеңил кылат. Бул түзмөктө башкалар жасаган 8-бит оюндарынан ырахат ала аласыз же өзүңүздүн оюндарыңызды жасай аласыз. Бул ачык булак долбоор болгондуктан