Software Input Mapping Layer for Cross-Platform Controller Compatibility
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software applications face challenges in effectively mapping inputs from various controllers or user interfaces, especially across different operating systems, leading to inefficiencies and unavailability of controls when executed in virtual machine environments.
Innovation Solution
A method and system for mapping inputs from controllers to instructions recognizable by software applications, utilizing a keymapping layer that translates inputs using lookup tables and adaptive keymapping based on predefined states or parameters, with visual overlays for user guidance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a software application is executed in a virtual machine environment across different operating systems, then the application can achieve broader platform compatibility, but input control mapping becomes unavailable or inefficient
Solution Approach 1:
The patent introduces a keymapping layer as an intermediary component between the virtual machine environment and the input devices. This layer translates inputs from various controllers into instructions that the software application can recognize, effectively mediating the communication gap created by cross-platform execution in virtual machine environments.
Solution Approach 2:
The keymapping layer is designed to handle multiple types of input devices and controllers universally, providing a single solution that works across different operating systems and virtual machine configurations. This multi-functional approach allows the same layer to adapt to various input sources and platform combinations.
2Device complexity
If fixed input mappings are used in software applications, then the system structure remains simple, but the application cannot adapt to different user preferences or diverse input devices
Solution Approach 1:
The patent implements dynamic keymapping that can be adjusted at runtime based on user preferences and the specific input device being used. Rather than fixed mappings, the system allows configurations to be changed adaptively, enabling the same software application to work with different controllers and user setups without requiring structural changes to the core application.
3Adaptability or versatility
If comprehensive input mapping support is implemented across all controllers, then user customization options increase, but the complexity of managing and synchronizing keymaps across virtual machine and host systems increases
Solution Approach 1:
The patent extracts the complex keymapping management functionality into a separate, dedicated layer that operates independently from the core software application. This extraction allows the application to remain simple while the keymapping layer handles the complexity of managing multiple controllers, configurations, and synchronizations between virtual machine and host systems.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The invention enables mapping inputs to a software application. The invention comprises (i) receiving a keymap that correlates a first set of input events capable of being generated through an input device, with a second set of input events recognized by the software application, (ii) receiving from an input device within the first set of input devices, a first data signal associated with a first input event within the first set of input events, (iii) identifying based on the received keymap, a second input event within the second set of input events, wherein the second input event is mapped to the first input event by the received keymap, (iv) generating a second data signal, wherein the second data signal is recognizable by the software application as corresponding to the second input event, and (v) implementing a state change in the software application based on the second data signal.