| CPC G06F 3/0484 (2013.01) [G06F 3/0488 (2013.01); G06F 3/14 (2013.01); G06F 9/451 (2018.02); G06T 1/20 (2013.01); G06F 3/03545 (2013.01); G06F 3/04817 (2013.01); G06F 3/04847 (2013.01)] | 20 Claims |

|
1. A method for processing user input, comprising:
maintaining state information relating to an existing state of at least one of a low-latency subsystem and a high-latency subsystem, wherein the state information is maintained with at least one of the high-latency subsystem and the low-latency subsystem and the low-latency subsystem operates independently of the high-latency subsystem;
receiving signals via a user input;
obtaining the state information relating to the existing state of at least one of the low-latency subsystem and the high-latency subsystem, wherein the state information is directly obtained from the low-latency subsystem or the high-latency subsystem using at least one of the low-latency subsystem and the high-latency subsystem;
generating at least one low-latency output based at least in part on the state information relating to the existing state of at least one of the low-latency subsystem and the high-latency subsystem and at least some of the signals, the low-latency output being output with low latency relative to the high-latency subsystem;
generating at least one high-latency output using at least some of the signals, wherein the high-latency output is generated by the high-latency subsystem; and
wherein the low-latency subsystem processes at least some of the signals independently of the high-latency subsystem and synchronizes with the high-latency subsystem.
|