Мазмұны:

Қарапайым бірлік контроллері: 5 қадам
Қарапайым бірлік контроллері: 5 қадам

Бейне: Қарапайым бірлік контроллері: 5 қадам

Бейне: Қарапайым бірлік контроллері: 5 қадам
Бейне: Аз қаражатпен бастауға болатын 5 кәсіп түрі 2024, Шілде
Anonim
Қарапайым бірлік контроллері
Қарапайым бірлік контроллері

Сипаттама

Бұл жоба - бұл ойыншы солға және оңға жүре алатын ойынды басқаруға арналған түймешіктерді басқанда, Unity -ге кіріс бере алатын өте қарапайым контроллер. Әрине, сіз оны қосымша басқару элементтері үшін реттей аласыз. Қосымша кітапханаларды пайдаланудың қажеті жоқ.

1 -қадам: материалдар

Қажетті компоненттер

  • -Arduino 2x резисторы
  • -[~ 220 Ом
  • -Сымдар
  • -2x түймелері
  • -Нан тақтасы

2 -қадам: Нан тарату

Breadboard
Breadboard

Мен arduino GND портын нан тақтасының сол жағындағы теріс (-) түйреуішке және 5В оң жақтағы оңға (+) жалғаудан бастадым.

Осыдан кейін мен түймелерді қалаған жерге қойдым. Оларды сымдар мен резисторлардың көмегімен жалғады.

3 -қадам: Arduino кодтау

Алдымен сізге Arduino іске қосу үшін код жазу керек. Мен кодқа түсініктеме беремін, ол не істейтінін түсіндіреді.

// Түймелер қосылған түйреуіштерді жариялаңыз.

const int buttonPin1 = 3; const int buttonPin2 = 4;

жарамсыз орнату ()

{// Serial.begin (9600) сериясын бастаңыз; // түйреуіштерді шығыс ретінде конфигурациялаңыз. pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }

бос цикл ()

{// Егер (digitalRead (buttonPin1) == HIGH) if түймесінің күйін оқыңыз {// күйі HIGH болса, осы жолды басып шығарыңыз. Serial.println («Сол жақта»); кешіктіру (20); } if (digitalRead (buttonPin2) == HIGH) {// күй ЖОҒАРЫ болса, осы жолды басып шығарыңыз. Serial.println («Оң жақта»); кешіктіру (20); }}

4 -қадам: Бірлік

Егер сізде дайын ойын болмаса, бұл код кез келген ойын объектісінде бірлікте жұмыс істейді.

егер бұлай болса, сізге қозғалу үшін ойын объектісі қажет болады.

Қарапайымдылық үшін GameObject-> 3D Object-> Cube тармағына өту арқылы текше жасаймыз.

текше сіздің сахнада болғаннан кейін, оны таңдап, Компонент қосу түймесін басып, жаңа сценарий жасаңыз.

System. IO. Ports кітапханасы жұмыс істеуі үшін сізге Api үйлесімділік деңгейін өзгерту қажет болады.

Ол үшін Өңдеу-> Жоба параметрлері-> Ойнатқышқа өтіңіз

Api үйлесімділік деңгейін тапқанша осы мәзірде төмен қарай жылжытыңыз және. Net 2.0 ішкі жиынының орнына. NET 2.0 таңдаңыз.

Сіз енді кодтауды бастауға дайынсыз.

System. Collections пайдалану; System. Collections. Generic пайдалану; UnityEngine пайдалану; System. IO. Ports пайдалану;

қоғамдық сынып PlayerMovement: MonoBehaviour

{ашық жүзу жылдамдығы; жүзу қозғалысы;

SerialPort sp = жаңа SerialPort («COM3», 9600);

жарамсыз Бастау ()

{// OpenSerialPort () сериялық портын ашу үшін кодты іске қосыңыз; }

жарамсыз OpenSerialPort ()

{// sp. Open () сериялық портын ашу; sp. ReadTimeout = 1; }

бос қозғалыс (жол бағыты)

{// arduino қай бағытқа өткенін тексеріңіз, егер (Бағыт == «Солға») {қозғалыс = -1; } if (Бағыт == «Оңға») {қозғалыс = 1; } // gameobject жылжытылатын соманы есептеңіз float translation = қозғалыс * жылдамдық; // Қозғалысты ойын түрлендіруіне қолданыңыз. Трансляция (аударма, 0, 0); }

жарамсыз жаңарту ()

{if (sp. IsOpen) {try {// сериялық порт ашық болғанда қозғалыс функциясын орындайды және Arduino Movement (sp. ReadLine ()) басып шығаратын жолды өтеді; } catch (System. Exception) {

}

}

} }

5 -қадам: Қорытынды жазбалар

Сіздің компоненттеріңіз жұмыс істейтінін тексеріңіз

Мұны жасау кезінде мен тап болған мәселе - барлық сымдар мен кодтардың дұрыс екендігі және ешқандай проблема болмауы керек еді, бірақ ол жұмыс істемеді. Менің жағдайда бұл жұмыс істемейтін сым болды. бұл сіздің басқа компоненттеріңізбен де болуы мүмкін.

Ұсынылған: