input-system-new

Create a decoupled Unity input system using ScriptableObject events for multi-device support.

2|Updated Apr 26, 2026
One-click install
npx skills add https://github.com/paek678/BuildUp --skill input-system-new-paek678
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: input-system-new
Source: https://github.com/paek678/BuildUp/tree/main/skills/05-ui-ux/input-system-new
Command: npx skills add https://github.com/paek678/BuildUp --skill input-system-new-paek678

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

Unity projects often couple input handling directly to devices or controllers, making reuse across platforms hard. This skill provides a ScriptableObject-based input reader that decouples input from gameplay logic and enables multi-device support.

Core Features & Use Cases

  • Decoupled input surface via ScriptableObject events for moves, actions, and UI navigation
  • Multi-device support (keyboard/mouse, gamepad, touch) with easy rebinds
  • Seamless switching between gameplay and UI input, plus multiplayer readiness

Quick Start

Create an InputReader ScriptableObject and wire its events to your game logic.

Frequently Asked Questions about input-system-new

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I decouple input handling from gameplay logic in Unity?

To decouple input handling in Unity, you can use a ScriptableObject-based input reader that exposes events for moves and actions, separating device detection from gameplay code. This allows multi-device support.

How does the Unity New Input System handle multiple devices like keyboard, gamepad, and touch?

The Unity New Input System handles multiple devices by routing input through a unified ScriptableObject event surface. This allows seamless switching between keyboard, gamepad, and touch inputs without altering gameplay logic.

How do I set up UI navigation and gameplay input switching with the Unity New Input System?

Set up UI navigation and gameplay input switching by mapping action events through an InputReader ScriptableObject. This enables seamless switching between gameplay and UI input maps, allowing multi-device navigation.

Can I implement input rebinding for gamepad and keyboard in Unity without rewriting game logic?

Yes, you can implement input rebinding for gamepad and keyboard without rewriting game logic by using a decoupled ScriptableObject input reader. This approach exposes rebindable events, keeping control mapping separate.

Is multiplayer input ready out of the box when using ScriptableObject events in Unity?

Multiplayer input readiness is supported when using ScriptableObject events in Unity, as the decoupled input reader architecture allows multiple devices to route events independently, preparing the system for multiplayer.

What are the limitations of using ScriptableObject events for input switching in Unity?

A limitation of using ScriptableObject events for input switching in Unity is that ScriptableObjects are assets, meaning event state might persist across play sessions if not properly reset, requiring careful test scaffolding.