U.S. Patent no. 10,078,410: System to locomote an entity in three dimensional space
Issued September 18, 2018 to Electronic Arts Inc.
Priority Date March 30, 2015
Summary:
U.S. Patent No. 10,078,410 (the ‘410 Patent) relates to video game input devices. These input devices typically take the form of controllers with buttons, joysticks, and control pads. A recent rise in popularity of mobile devices such as smartphones and tablets has allowed for new input devices with touchscreens. The ‘410 Patent covers touch-based control of a game application. The computer system turns the touch-based tactile input data into a command that is executed within the game application. The computer system can store this data and then act on it upon receiving new inputs. This touch-based input method allows for more accessibility for playing video games by combining with the ease of access and familiarity of mobile devices.
Abstract:
The disclosure includes embodiments directed to a system for controlling the operation of the character that can recognize and process touch inputs at any location on the touchscreen. The system can track the movement of a touch input and generate a game command, such as movement of a character, based on the received touch input. The game command can be stored in a movement buffer. If the position of the touch input changes, the system can update the game command based on the movement of the touch input. If the movement of the touch input exceeds a directional threshold, the system can clear the movement buffer and initiate a new game command based on the touch input. This allows for new game commands to correspond to quick changes in direction provided by the user.
Illustrative Claim:
1. A computer-implemented method for touch-based control of a game application, the method comprising: by a hardware processor executing a game application, receiving, by the game application, a touch input via a touchscreen, wherein the touch input is configured to control operation of a virtual entity within a game environment of the game application; determining, by the game application, first movement data associated with the touch input, wherein the first movement data defines a first direction; storing, by the game application, the first movement data in a movement buffer; determining, by the game application, a movement command for the virtual entity within the game environment of the game application based, at least in part on the first movement data stored in the movement buffer; executing, by the game application, the first movement command by the virtual entity within the game environment; responsive to movement of the touch input in a second direction, determining, by the game application, second movement data associated with the touch input, wherein the second movement data defines the second direction; determining, by the game application, whether the second movement data associated with the touch input overcomes a directional threshold by comparing the first movement data to the second movement data, wherein the directional threshold defines an angular value; if the second movement data satisfies the directional threshold, clearing the first movement data from the movement buffer; storing the second movement data in the movement buffer; determining a second movement command for the virtual entity within the game environment based, at least in part on the second movement data stored in the movement buffer; and executing, by the game application, the second movement command by the virtual entity within the game environment; if the second movement data does not overcome the directional threshold, storing the second movement data in the movement buffer; and determining a third movement command for a character within a game environment based, at least in part on the first movement data and the second movement data and executing, by the game application, the third movement command by the virtual entity within the game environment.