Оглавление:
- Шаг 1: материалы
- Шаг 2: макетирование
- Шаг 3: кодирование Arduino
- Шаг 4: единство
- Шаг 5: Заключительные примечания
Видео: Простой контроллер Unity: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
Описание
Этот проект представляет собой очень простой контроллер, который может вводить данные в Unity при нажатии кнопок, которые я разработал для управления созданной мной игрой, в которой игрок может перемещаться влево и вправо. Конечно, вы всегда можете настроить его для большего количества элементов управления. Нет необходимости использовать какие-либо дополнительные библиотеки.
Шаг 1: материалы
Необходимые компоненты
- -Arduino 2x резистор
- - [~ 220 Ом
- -Провода
- -2x кнопки
- - макетная плата
Шаг 2: макетирование
Я начал с подключения порта GND Arduino к отрицательному (-) контакту на левой стороне макета, а 5 В - к положительному (+) на правой стороне макета.
После этого я поставил кнопки на то место, где хотел, чтобы они были. И подключил их с помощью проводов и резисторов.
Шаг 3: кодирование Arduino
Прежде всего, вам нужно будет написать код для запуска Arduino. Я добавляю в код комментарии, объясняющие, что он делает.
// Объявляем контакты, к которым подключены кнопки.
const int buttonPin1 = 3; const int buttonPin2 = 4;
установка void ()
{// Запускаем серийник Serial.begin (9600); // Настраиваем выводы как выходные. pinMode (buttonPin1, ВХОД); pinMode (buttonPin2, ВХОД); }
пустой цикл ()
{// Считываем состояние кнопки if (digitalRead (buttonPin1) == HIGH) {// выводим эту строку, если состояние HIGH. Serial.println («Левый»); задержка (20); } if (digitalRead (buttonPin2) == HIGH) {// выводим эту строку, если состояние HIGH. Serial.println («Право»); задержка (20); }}
Шаг 4: единство
Если у вас нет готовой игры, этот код будет работать с любым игровым объектом в единстве.
в этом случае вам понадобится игровой объект для перемещения.
Для простоты создадим куб, перейдя в GameObject-> 3D Object-> Cube.
как только куб окажется в вашей сцене, выберите его, нажмите кнопку «Добавить компонент» и создайте новый скрипт.
Также вам нужно будет изменить уровень совместимости Api, чтобы библиотека System. IO. Ports работала.
Для этого перейдите в Edit-> Project Settings-> Player.
прокрутите вниз в этом меню, пока не найдете уровень совместимости Api, и выберите. NET 2.0 вместо подмножества. Net 2.0.
Теперь вы готовы начать кодирование.
используя System. Collections; используя System. Collections. Generic; using UnityEngine; используя System. IO. Ports;
открытый класс PlayerMovement: MonoBehaviour
{скорость публичного плавания; поплавковое движение;
SerialPort sp = новый SerialPort ("COM3", 9600);
void Start ()
{// Запускаем код, чтобы открыть последовательный порт OpenSerialPort (); }
void OpenSerialPort ()
{// Открываем последовательный порт sp. Open (); sp. ReadTimeout = 1; }
void Movement (направление строки)
{// Проверяем, в каком направлении прошел Arduino if (Direction == "Left") {motion = -1; } если (Направление == "Вправо") {движение = 1; } // вычисляем величину, на которую будет перемещен игровой объект float translation = движение * скорость; // Применим движение к игровому объекту transform. Translate (translation, 0, 0); }
void Update ()
{if (sp. IsOpen) {try {// пока последовательный порт открыт move выполнить функцию перемещения и передать строку, которую Arduino печатает Movement (sp. ReadLine ()); } catch (System. Exception) {
}
}
} }
Шаг 5: Заключительные примечания
Проверьте, работают ли ваши компоненты
Проблема, с которой я столкнулся во время создания этого, заключалась в том, что все провода и код были правильными, и не должно быть никаких проблем, но он не работал. В моем случае это был провод, который не работал, хотя то же самое может случиться с некоторыми другими вашими компонентами.
Рекомендуемые:
Более простой контроллер клонирования Guitar Hero !: 10 шагов (с изображениями)
Более простой контроллер Guitar Hero Clone !: Это вдохновлено отличной идеей Realities, но я использовал контроллер ПК вместо печатной платы клавиатуры, что устраняет необходимость в сложной сборке флиппера
Контроллер DIY на базе Arduino - Игровой контроллер Arduino PS2 - Игра в Tekken с DIY-геймпадом Arduino: 7 шагов
Контроллер DIY на базе Arduino | Игровой контроллер Arduino PS2 | Игра в Tekken с помощью DIY Arduino Gamepad: Здравствуйте, ребята, играть в игры всегда весело, но играть с вашим собственным игровым контроллером DIY еще веселее. Поэтому мы создадим игровой контроллер с использованием arduino pro micro в этих инструкциях
Более простой контроллер светодиодной ленты WiFi: 8 шагов (с изображениями)
Более простой контроллер светодиодных лент WiFi: прошлой весной я начал разрабатывать специальное оборудование и программное обеспечение для управления двумя полосами светодиодных фонарей с помощью одной платы разработки NodeMCU ESP8266-12E. Во время этого процесса я научился делать свои собственные печатные платы (PCB) на фрезерном станке с ЧПУ, и я
Простой контроллер и схема насоса: 13 шагов (с изображениями)
Простой контроллер и контур насоса: в недавнем рабочем проекте мне требовалось периодически сливать воду из двух резервуаров. Поскольку оба слива резервуара расположены ниже уровня всех сливов в комнате, я бы наполнял ведра и перенаправлял воду в канализацию вручную. Скоро я
Как собрать простой и мощный контроллер ручки - на основе Micro: Bit: 10 шагов (с изображениями)
Как собрать простой и мощный контроллер ручки - на основе Micro: Bit: ручка называется Handlebit. Форма ручки, и она выглядит очень круто! Теперь мы можем познакомиться с Handlebit, давайте перейдем к нему