Mục lục:

Bộ điều khiển Unity đơn giản: 5 bước
Bộ điều khiển Unity đơn giản: 5 bước

Video: Bộ điều khiển Unity đơn giản: 5 bước

Video: Bộ điều khiển Unity đơn giản: 5 bước
Video: [Unity] Hướng Dẫn Làm Game Cơ Bản | Bài 1: Cài Đặt và Làm Quen 2024, Tháng mười hai
Anonim
Bộ điều khiển Unity đơn giản
Bộ điều khiển Unity đơn giản

Sự miêu tả

Dự án này là một bộ điều khiển rất đơn giản có thể cung cấp đầu vào cho Unity khi nhấn các nút do tôi thiết kế để điều khiển trò chơi mà tôi thực hiện trong đó người chơi có thể đi sang trái và phải. Tất nhiên bạn luôn có thể điều chỉnh nó để có nhiều điều khiển hơn. Không cần phải sử dụng thêm bất kỳ thư viện nào.

Bước 1: Vật liệu

Các thành phần cần thiết

  • -Arduino 2x điện trở
  • - [~ 220 Ohm
  • -Dây điện
  • -2x Nút
  • -Breadboard

Bước 2: Breadboarding

Breadboarding
Breadboarding

Tôi bắt đầu bằng cách kết nối cổng arduino GND với chân âm (-) ở phía bên trái của breadboard và kết nối 5V với chân dương (+) ở phía bên phải của breadboard.

Sau đó, tôi đặt các nút ở nơi tôi muốn. Và kết nối chúng bằng cách sử dụng dây và điện trở.

Bước 3: Mã hóa Arduino

Trước hết, bạn sẽ cần viết một số mã để Arduino chạy. Tôi đặt các nhận xét trong mã giải thích những gì nó làm.

// Khai báo các chân mà các nút được kết nối với.

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

void setup ()

{// Bắt đầu nối tiếp Serial.begin (9600); // Cấu hình các chân làm đầu ra. pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }

void loop ()

{// Đọc trạng thái của nút if (digitalRead (buttonPin1) == HIGH) {// in dòng này nếu trạng thái là HIGH. Serial.println ("Trái"); chậm trễ (20); } if (digitalRead (buttonPin2) == HIGH) {// in dòng này nếu trạng thái là HIGH. Serial.println ("Đúng"); chậm trễ (20); }}

Bước 4: Thống nhất

Nếu bạn chưa có trò chơi sẵn sàng, mã này sẽ hoạt động thống nhất trên bất kỳ đối tượng trò chơi nào.

nếu đây là trường hợp, bạn sẽ cần một đối tượng trò chơi để di chuyển.

Để đơn giản, chúng ta sẽ tạo một khối lập phương bằng cách vào GameObject-> 3D Object-> Cube

khi khối lập phương ở trong cảnh của bạn, hãy chọn nó và nhấn nút Thêm thành phần, và tạo tập lệnh mới.

Ngoài ra, bạn sẽ cần thay đổi mức độ tương thích Api để thư viện System. IO. Ports hoạt động.

Để thực hiện việc này, hãy vào Edit-> Project Settings-> Player

cuộn xuống trong menu này cho đến khi bạn tìm thấy Mức tương thích Api và chọn. NET 2.0 thay vì tập con. Net 2.0

Bây giờ bạn đã sẵn sàng để bắt đầu viết mã.

using System. Collections; using System. Collections. Generic; sử dụng UnityEngine; sử dụng System. IO. Ports;

người chơi lớp công cộngMovement: MonoBehaviour

{public float speed; chuyển động phao;

SerialPort sp = new SerialPort ("COM3", 9600);

void Start ()

{// Chạy mã để mở cổng nối tiếp OpenSerialPort (); }

void OpenSerialPort ()

{// Mở cổng nối tiếp sp. Open (); sp. ReadTimeout = 1; }

void Movement (string Direction)

{// Kiểm tra hướng đi của arduino if (Direction == "Left") {movement = -1; } if (Direction == "Right") {movement = 1; } // tính toán số lượng mà đối tượng trò chơi sẽ được di chuyển float translate = movement * speed; // Áp dụng chuyển động cho biến đổi gameobject. Translate (dịch, 0, 0); }

void Update ()

{if (sp. IsOpen) {try {// trong khi cổng nối tiếp đang mở, di chuyển thực hiện hàm chuyển động và chuyển dòng mà Arduino đang in Movement (sp. ReadLine ()); } catch (System. Exception) {

}

}

} }

Bước 5: Ghi chú cuối cùng

Kiểm tra xem các thành phần của bạn có hoạt động không

Một vấn đề mà tôi gặp phải trong quá trình tạo ra nó là tất cả các dây và mã đều đúng và không có vấn đề gì cả, nhưng nó không hoạt động. Trong trường hợp của tôi, đó là một dây không hoạt động, mặc dù điều tương tự có thể xảy ra với một số thành phần khác của bạn.

Đề xuất: