Я делаю гоночную игру в Unity с помощью Unityscript, и я сделал руль с помощью робота Lego Mindstorms EV3. Я разрешаю роботу отправлять информацию по Bluetooth в игру, но не могу найти, как это сделать. У меня уже есть код для Bluetooth, работающего и работающего на C#, но я знаю, что мне нужно знать, как перевести его в unityscript. Я уже пытался найти его в гугле, но мне кажется, что у меня только какой-то софт для взлома робота, но не для того, чтобы сделать код в юнинискрипте для подключения руля.
Ниже находится код С#:
// EV3: The EV3Messenger is used to communicate with the Lego EV3.
private EV3Messenger ev3Messenger;
// EV3: Create an EV3Messenger object which you can use to talk to the EV3.
ev3Messenger = new EV3Messenger();
// EV3: Connect to the EV3 serial port over Bluetooth.
// If the program 'hangs' on a call to ev3Messenger.Connect,
// then your EV3 is not paired with your PC yet/anymore.
// To pair: Remove the EV3 from the Windows Bluetooth device list and add it again.
ev3Messenger.Connect("COM3"); // Hardcoded serial port: put the serial port
// of the Bluetooth connection to your EV3 here!
}
/// <summary>
/// UnloadContent will be called once per game and is the place to unload
/// all content.
/// </summary>
protected override void UnloadContent()
{
// Unload any non ContentManager content here
// EV3: Disconnect
if (ev3Messenger.IsConnected)
{
ev3Messenger.Disconnect();
}
}
// EV3: send Brake message to mailbox with name "MakeNoise"
if (ev3Messenger.IsConnected)
{
ev3Messenger.SendMessage("MakeNoise", "Brake");
}
// Game can be controlled by both the arrow keys and the Steer, gas and brake paddle of the connected EV3
UpdatePaddlePositionUsingKeys();
UpdatePaddlePositionUsingEV3();
base.Update(gameTime);
}
///Steer update
private void UpdatePaddlePositionUsingEV3()
{
if (ev3Messenger.IsConnected)
{
// EV3: Receive a new command from mailbox "COMMAND" of the EV3
// and use it to change the direction of the paddle or to exit the game.
EV3Message message = ev3Messenger.ReadMessage();
if (message != null
&& message.MailboxTitle == "Command")
{
if (message.ValueAsText == "")
{
}
{
ev3Messenger.Disconnect();
Exit();
}
}
}
}
Я надеюсь, что вы знаете, где я могу найти, как я могу это сделать или даже помочь мне в дальнейшем. Если вам нужен исходный код небольшой игры в понг, откуда я черпал вдохновение, просто прокомментируйте его.
Я надеюсь, что вы можете мне помочь.