Grasp simulation of a virtual object
AssigneeMicrosoft Corporation
InventorAndrew D. Wilson
Life of this patent
Estimating the term…
Abstract
The claimed subject matter provides a system and/or a method for simulating grasping of a virtual object. Virtual 3D objects receive simulated user input forces via a 2D input surface adjacent to them. An exemplary method comprises receiving a user input corresponding to a grasping gesture that includes at least two simulated contacts with the virtual object. The grasping gesture is modeled as a simulation of frictional forces on the virtual object. A simulated physical effect on the virtual object by the frictional forces is determined. At least one microprocessor is used to display a visual image of the virtual object moving according to the simulated physical effect.
Claims17
A computer-implemented method of simulating grasping of a virtual object, comprising:
- receiving a user input corresponding to a simulated grasping gesture that includes at least two simulated contacts with the virtual object, the simulated grasping gesture comprising a simulated application of multiple persistent contacts on two or more places on a virtual object, the virtual object comprising at least a three-dimensional virtual object, and the user input comprising a two-dimensional (2D) input;
- modeling the simulated grasping gesture as a simulation of frictional forces on the virtual object by representing the multiple persistent contacts on two or more places on the virtual object as exerting normal forces that persist on the object, the normal forces being proportional to an incursion of one or more of the multiple persistent contacts within the virtual object on the two-dimensional (2D) input;
- determining a simulated physical effect on the virtual object by the frictional forces so that the virtual object is modeled as behaving as though grasped at the two or more places on the virtual object, wherein behaving as though grasped at the two or more places comprises moving the virtual object to restore mechanical equilibrium when the simulated contacts move;
- and
- displaying, using at least one microprocessor, a visual image of the virtual object moving according to the simulated physical effect.
A system that facilitates a simulated interaction of an input object with a virtual object, comprising:
- a detection component that detects multiple inputs by the input object, the multiple detected inputs enabling a simulated physical interaction of the multiple detected inputs with the virtual object, the input object comprising a two-dimensional input, the virtual object comprising a three-dimensional object, wherein the simulated physical interaction comprises grasping the virtual object by the sides and rotating the virtual object;
- and
- a physics engine that models each of the multiple detected inputs as persistent particle proxy objects to employ physics-based principles into the simulated interaction with the virtual object in order to model an effect of at least one of a force, a mass, a velocity or a friction on the virtual object, wherein the persistent particle proxy objects are modeled as exerting a normal force on two or more surfaces of the virtual object, the effect being proportional to an incursion of one or more of the multiple detected inputs within the virtual object on the input object, and the persistent particle proxy objects being modeled as behaving as though the virtual object is grasped at the two or more surfaces on the virtual object, wherein behaving as though the virtual object is grasped at the two or more surfaces comprises moving the virtual object to restore mechanical equilibrium when at least two of the persistent particle proxy objects move.
A computer-implemented method of simulating motion of a virtual object, comprising:
- receiving a first user input of at least two simulated contacts with the virtual object;
- defining a first plurality of persistent particle proxies to represent the at least two simulated contacts of the first user input;
- modeling a first frame of a simulation by representing each of the at least two simulated contacts of the first user input as the first plurality of persistent particle proxies, and by representing the first plurality of persistent particle proxies as exerting normal forces that persist on the virtual object, the normal forces being proportional to an incursion of one or more of the first plurality of persistent particle proxies within the virtual object on the two-dimensional inputs so that the virtual object is modeled as behaving as though it is grasped at the at least two simulated contacts on the virtual object;
- receiving a second user input of at least two simulated contacts with the virtual object, the first user input and the second user input corresponding to a grasping gesture comprising a simulated application of multiple persistent contacts on two or more surfaces of a virtual object, the virtual object comprising at least a three-dimensional virtual object, the first user input and the second user input comprising two-dimensional inputs;
- defining a second plurality of persistent particle proxies to represent the second user input by determining whether any of the plurality of persistent particle proxies present in the first user input is also present in the second user input, by determining whether any of the plurality of persistent particle proxies present in the first user input is not present in the second user input, and by determining whether the second user input comprises any persistent particle proxies that were not present in the first user input;
- modeling a second frame of the simulation by representing each of the at least two simulated contacts of the second user input as the second plurality of persistent particle proxies, and by representing the second plurality of persistent particle proxies as exerting normal forces that persist on the virtual object, the normal forces being proportional to an incursion of one or more of the second plurality of persistent particle proxies within the virtual object on the two-dimensional inputs so that the virtual object is modeled as behaving as though it is grasped at the at least two simulated contacts, wherein behaving as though grasped at the at least two simulated contacts comprises moving the virtual object to restore mechanical equilibrium when the at least two simulated contacts move;
- and
- displaying, using at least one microprocessor, a visual image of the virtual object in which a position of the virtual object changes according to a simulation of a difference in physical forces represented by the second plurality of persistent particle proxies relative to the first plurality of persistent particle proxies, wherein the position of the virtual object changes in response to a simulation of grasping the virtual object by the sides and rotating the virtual object in place.
Dependencies are inferred from the claim text.