Агуулгын хүснэгт:

Энгийн нэгдлийн хянагч: 5 алхам
Энгийн нэгдлийн хянагч: 5 алхам

Видео: Энгийн нэгдлийн хянагч: 5 алхам

Видео: Энгийн нэгдлийн хянагч: 5 алхам
Видео: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Арванхоёрдугаар сар
Anonim
Энгийн нэгдлийн хянагч
Энгийн нэгдлийн хянагч

Тодорхойлолт

Энэ төсөл бол тоглогч зүүн, баруун тийш тоглож болох тоглоомыг удирдахын тулд товчлууруудыг дарахад Unity -д оролт өгөх маш энгийн хянагч юм. Мэдээжийн хэрэг та үүнийг илүү их хяналтанд байлгахын тулд тохируулж болно. Нэмэлт номын сан ашиглах шаардлагагүй.

Алхам 1: Материал

Шаардлагатай бүрэлдэхүүн хэсгүүд

  • -Arduino 2x эсэргүүцэл
  • -[~ 220 Ом
  • -Утаснууд
  • -2x товчлуур
  • -Талхны самбар

Алхам 2: Breadboard хийх

Breadboard хийх
Breadboard хийх

Би arduino GND портыг талхны зүүн талд сөрөг (-) зүүгээр холбож, 5V-ийг талхны баруун талд эерэг (+) холбож эхлэв.

Үүний дараа би товчлууруудыг хүссэн байрандаа хийв. Мөн тэдгээрийг утас, резистор ашиглан холбосон.

Алхам 3: Arduino -г кодлох

Юуны өмнө та Arduino -г ажиллуулахын тулд код бичих хэрэгтэй болно. Би кодонд юу хийж байгааг тайлбарласан тайлбар оруулсан.

// Товчнууд холбогдсон тээглүүрийг зарлах.

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

хүчингүй тохиргоо ()

{// Serial.begin (9600) цувралыг эхлүүлэх; // Зүүг гаралт болгон тохируулна уу. pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }

хоосон давталт ()

{// Хэрэв (digitalRead (buttonPin1) == HIGH) бол товчлуурын төлөвийг уншина уу. Serial.println ("Зүүн"); саатал (20); } if (digitalRead (buttonPin2) == HIGH) {// төлөв HIGH бол энэ мөрийг хэвлэ. Serial.println ("Баруун"); саатал (20); }}

Алхам 4: Эв нэгдэл

Хэрэв танд бэлэн тоглоом байхгүй бол энэ код нь аливаа тоглоомын объект дээр эв нэгдэлтэй ажиллах болно.

Хэрэв тийм бол танд хөдлөх тоглоомын объект хэрэгтэй болно.

Энгийн болгох үүднээс бид GameObject-> 3D Object-> Cube руу орж куб үүсгэх болно.

шоо таны дүрд орсны дараа үүнийг сонгоод Бүрэлдэхүүн хэсэг нэмэх товчийг дараад шинэ скрипт үүсгэнэ үү.

Мөн System. IO. Ports номын сан ажиллахын тулд Api нийцтэй байдлын түвшинг өөрчлөх шаардлагатай болно.

Үүнийг хийхийн тулд Edit-> Project Settings-> Player рүү очно уу

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; }

хоосон хөдөлгөөн (мөрийн чиглэл)

{// (Direction == "Left") {хөдөлгөөн = -1; } if (Чиглэл == "Баруун") {хөдөлгөөн = 1; } // тоглоомын объектыг шилжүүлэх хэмжээг тооцоолох float translation = хөдөлгөөн * хурд; // Тоглоомын объектын хувиргалтанд хөдөлгөөн хийх. Орчуулах (орчуулга, 0, 0); }

хүчингүй шинэчлэлт ()

{if (sp. IsOpen) {try {// serialport нээлттэй байхад хөдөлгөөний функцийг гүйцэтгэж, Arduino -ийн хэвлэж буй мөрийг дамжуулна Move (sp. ReadLine ()); } барих (System. Exception) {

}

}

} }

Алхам 5: Эцсийн тэмдэглэл

Таны бүрэлдэхүүн хэсгүүд ажиллаж байгаа эсэхийг шалгаарай

Үүнийг бүтээх явцад надад тулгарч байсан асуудал бол бүх утас, код зөв байсан бөгөөд ямар ч асуудал байх ёсгүй, гэхдээ энэ нь ажиллахгүй байсан. Миний хувьд энэ нь ажиллахгүй байсан утас байсан. Үүнтэй ижил зүйл таны бусад бүрэлдэхүүн хэсгүүдэд тохиолдож болно.

Зөвлөмж болгож буй: