🕹️
New Input System: Кроссплатформенное управление Что это? Новая система ввода от Unity. Управляй игроком с клавиатуры, мыши, тача или геймпада через единый интерфейс.
Зачем переходить? • Поддержка любых устройств "из коробки"
• Четкое разделение действий (Actions) и устройств (Devices)
• Проще ремаппинг (смена клавиш)
• Мощная система событий и состояний
• Визуальная отладка через
Input Debugger Как начать? 1. Установи пакет
Input System через Package Manager
2. Создай
Input Actions Asset (ПКМ в Project View → Create → Input Actions)
3. Настрой Actions (например: "Move", "Jump", "Shoot")
4. Привяжи устройства к Actions (WASD/Стрелки/Стик геймпада → "Move")
5. Добавь компонент
Player Input на игрока
Пример кода (чтение ввода): public class Movement : MonoBehaviour
{
private InputActions controls;
void Awake()
{
controls = new InputActions();
controls.Player.Move.performed += ctx => Move(ctx.ReadValue<Vector2>());
}
void Move(Vector2 direction)
{
// Перемещаем объект (напр., Rigidbody.velocity = direction * speed)
Debug.Log("Движение: " + direction);
}
void OnEnable() => controls.Enable();
void OnDisable() => controls.Disable();
}
Важно! • Используй
Input Action Assets вместо старых
Input.GetKey() • Для UI используй
Input System UI Input Module • Настрой
Control Schemes для разных устройств (PC, Mobile, Gamepad)
• Тестируй ремаппинг через
Rebinding UI 💡
Применение: - Плавное переключение между геймпадом и мышью
- Кастомизация управления в настройках игры
- Мобильные джойстики за 5 минут
Переходи на New Input System — пиши универсальный код! #Unity #GameDev #InputSystem #Gamedevelopment