В Unity вы можете использовать пользовательский интерфейс для создания строки ввода, где пользователь сможет ввести номер COM-порта. Для этого вам понадобится следующее:
1. **Создание UI**:
- Откройте Unity и создайте новый проект или используйте существующий.
- Перейдите в меню `GameObject > UI` и выберите `Input Field` для создания поля ввода.
- Также добавьте `Text` для отображения метки (label) для вашего поля ввода.
- Если у вас еще нет `Canvas`, Unity создаст его автоматически.
2. **Скрипт для обработки ввода**:
- Создайте новый C# скрипт в вашей папке `Scripts` (или любой другой подходящей папке) и назовите его, например, `PortSelector`.
- Откройте скрипт и добавьте следующий код:
```csharp
using UnityEngine;
using UnityEngine.UI;
using System.IO.Ports;
public class PortSelector : MonoBehaviour
{
public InputField portInputField;
private SerialPort serialPort;
void Start()
{
// Пример установки COM порта по умолчанию (можно изменить)
if (portInputField)
{
portInputField.text = "COM3"; // Установка порта по умолчанию
}
}
public void ConnectToArduino()
{
string portName = portInputField.text;
try
{
// Создание нового SerialPort объекта
serialPort = new SerialPort(portName, 9600);
serialPort.Open(); // Открываем порт
Debug.Log("Подключено к " + portName);
}
catch (System.Exception e)
{
Debug.LogError("Ошибка подключения к " + portName + ": " + e.Message);
}
}
void OnApplicationQuit()
{
if (serialPort != null && serialPort.IsOpen)
{
serialPort.Close(); // Закрыть порт при выходе
}
}
}
```
3. **Привязка UI к скрипту**:
- Перейдите в ваш `Canvas`, добавьте новый пустой объект (GameObject > Create Empty) и назовите его, например, `PortManager`.
- Перетащите только что созданный скрипт `PortSelector` на объект `PortManager`.
- В инспекторе объекта `PortManager` найдите компонент `PortSelector` и перетащите ваше `InputField` в соответствующее поле `Port Input Field`.
4. **Создание кнопки для подключения**:
- Создайте кнопку через `GameObject > UI > Button`.
- Измените текст кнопки, если это необходимо (например, на "Подключить").
- В компоненте Button в разделе `On Click ()` добавьте ваш объект `PortManager` и выберите метод `PortSelector.ConnectToArduino`.
Теперь вы сможете запустить вашу игру, вводить номер COM-порта в поле и нажимать кнопку для подключения к Arduino. Не забудьте также установить правильные права доступа в зависимости от вашей операционной системы, чтобы избежать проблем с доступом к COM-портам.