Methods and apparatus for simultaneous user inputs for three-dimensional animation
First Claim
Patent Images
1. A method for a computer system comprising:
- determining a first set of virtual camera parameters for a virtual camera in three-dimensional space relative to a three-dimensional scene, wherein the location of the camera is within the three-dimensional scene, wherein the three-dimensional scene comprises at least one three-dimensional object, and wherein the first set of virtual camera parameters include a first three-dimensional position of the virtual camera;
determining a first image of the three-dimensional scene in response to the first set of virtual camera parameters in three-dimensional space;
displaying the first image of the three-dimensional scene to the user on a user interface display of the computer system;
determining a first position of a first indicator of a user placed upon the first image on the user interface display of the computer system;
determining a first position of a second indicator of the user placed upon the first image on the user interface display of the computer system;
determining a second position of the first indicator of the user placed upon the user interface display of the computer system;
determining a second position of the second indicator of the user placed upon the user interface display of the computer system;
determining a second set of virtual camera parameters for the virtual camera in three-dimensional space relative to the three-dimensional scene in response to the first set of virtual camera parameters, to the first position and the second positions of the first indicator of the user, and to the first position and the second position of the second indicator, wherein the second set of virtual camera parameters include a second three-dimensional position of the virtual camera,wherein when the second position of the first indicator is shifted in a vertical direction upon the user interface display from the first position of the first indicator concurrently with the second position of the second indicator being shifted in the vertical direction upon the user interface display from the first position of the second indicator, the virtual camera is moved forward parallel to a ground plane from the first three-dimensional position to the second three-dimensional position in the three-dimensional scene;
determining an updated three-dimensional scene based on the second three-dimensional position of the virtual camera;
determining a second image of the updated three-dimensional scene in response to the second set of virtual camera parameters in three-dimensional space; and
displaying the second image of the three-dimensional scene to the user on the user interface display of the computer system.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for a computer system includes determining a plurality of positions of portions of a hand of a user simultaneously placed upon a user interface device of the computer system, retrieving a set of display icons in response to the plurality of positions of the portions of the user hand, displaying the display icons from the set of display icons on a display relative to the plurality of positions of the portions of the user hand; while displaying the display icons on the display, determining a user selection of a display icon from the display icons, and performing a function in response to the user selection of the display icon.
57 Citations
32 Claims
-
1. A method for a computer system comprising:
-
determining a first set of virtual camera parameters for a virtual camera in three-dimensional space relative to a three-dimensional scene, wherein the location of the camera is within the three-dimensional scene, wherein the three-dimensional scene comprises at least one three-dimensional object, and wherein the first set of virtual camera parameters include a first three-dimensional position of the virtual camera; determining a first image of the three-dimensional scene in response to the first set of virtual camera parameters in three-dimensional space; displaying the first image of the three-dimensional scene to the user on a user interface display of the computer system; determining a first position of a first indicator of a user placed upon the first image on the user interface display of the computer system; determining a first position of a second indicator of the user placed upon the first image on the user interface display of the computer system; determining a second position of the first indicator of the user placed upon the user interface display of the computer system; determining a second position of the second indicator of the user placed upon the user interface display of the computer system; determining a second set of virtual camera parameters for the virtual camera in three-dimensional space relative to the three-dimensional scene in response to the first set of virtual camera parameters, to the first position and the second positions of the first indicator of the user, and to the first position and the second position of the second indicator, wherein the second set of virtual camera parameters include a second three-dimensional position of the virtual camera, wherein when the second position of the first indicator is shifted in a vertical direction upon the user interface display from the first position of the first indicator concurrently with the second position of the second indicator being shifted in the vertical direction upon the user interface display from the first position of the second indicator, the virtual camera is moved forward parallel to a ground plane from the first three-dimensional position to the second three-dimensional position in the three-dimensional scene; determining an updated three-dimensional scene based on the second three-dimensional position of the virtual camera; determining a second image of the updated three-dimensional scene in response to the second set of virtual camera parameters in three-dimensional space; and displaying the second image of the three-dimensional scene to the user on the user interface display of the computer system. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product comprising a non-transitory tangible medium including computer system executable code for a computer system including a processor, a memory and a user interface display, the computer program product comprising:
-
code that directs the processor to determine a first set of virtual camera parameters for a virtual camera in three-dimensional space relative to a three-dimensional scene, wherein the location of the camera is within the three-dimensional scene, wherein the three-dimensional scene comprises at least one three-dimensional object, and wherein the first set of virtual camera parameters include a first three-dimensional position of the virtual camera; code that directs the processor to determine a first image of the three-dimensional scene in response to the first set of virtual camera parameters in three-dimensional space; code that directs the processor to display the first image of the three-dimensional scene to the user on user interface display of the computer system; code that directs the processor to determine a first position of a first indicator of a user placed upon the first image on the user interface display of the computer system; code that directs the processor to determine a first position of a second indicator of the user placed upon the first image on the user interface display of the computer system; code that directs the processor to determine a second position of the first indicator of the user placed upon the user interface display of the computer system; code that directs the processor to determine a second position of the second indicator of the user placed upon the user interface display of the computer system; code that directs the processor to determine a second set of virtual camera parameters for the virtual camera in three-dimensional space relative to the three-dimensional scene in response to the first set of virtual camera parameters, to the first position and the second positions of the first indicator of the user, and to the first position and the second position of the second indicator, wherein the second set of virtual camera parameters include a second three-dimensional position of the virtual camera, wherein when the second position of the first indicator is shifted in a vertical direction upon the user interface display from the first position of the first indicator concurrently with the second position of the second indicator being shifted in the vertical direction upon the user interface display from the first position of the second indicator, the virtual camera is moved forward parallel to a ground plane from the first three-dimensional position to the second three-dimensional position in the three-dimensional scene; code that directs the processor to determine an updated three-dimensional scene based on the second three-dimensional position of the virtual camera; code that directs the processor to determining a second image of the updated three-dimensional scene in response to the second set of virtual camera parameters in three-dimensional space; and code that directs the processor to display the second image of the three-dimensional scene to the user on the user interface display of the computer system. - View Dependent Claims (8, 9, 10)
-
-
11. A computer system comprising:
-
a memory configured to store a first set of virtual camera parameters for a virtual camera in three-dimensional space relative to a three-dimensional scene, wherein the location of the camera is within the three-dimensional scene, wherein the three-dimensional scene comprises at least one three-dimensional object, and wherein the first set of virtual camera parameters include a first three-dimensional position of the virtual camera; a processor coupled to the memory, wherein the processor is configured to; determine a first image of the three-dimensional scene in response to the first set of virtual camera parameters in three-dimensional space, determine a first position of a first indicator of a user placed upon the first image on a user interface display of the computer system, determine a first position of a second indicator of the user placed upon the first image on the user interface display of the computer system, determine a second position of the first indicator of a user placed upon the user interface display of the computer system, determine a second position of the second indicator of the user placed upon the user interface display of the computer system, determine a second set of virtual camera parameters for the virtual camera in three-dimensional space relative to the three-dimensional scene in response to the first set of virtual camera parameters, to the first position and the second position of the first indicator of the user, and to the first position and the second position of the second indicator, wherein the second set of virtual camera parameters include a second three-dimensional position of the virtual camera, wherein when the second position of the first indicator is shifted in a vertical direction upon the user interface display from the first position of the first indicator concurrently with the second position of the second indicator being shifted in the vertical direction upon the user interface display from the first position of the second indicator, the virtual camera is moved forward parallel to a ground plane from the first three-dimensional position to the second three-dimensional position in the three-dimensional scene, determine an updated three-dimensional scene based on the second three-dimensional position of the virtual camera, and determine a second image of the updated three-dimensional scene in response to the second set of virtual camera parameters in three-dimensional space; and the user interface display coupled to the processor, wherein the user interface display is configured to display the first image of the three-dimensional scene to the user on the user interface display, and configured to display the second image of the three-dimensional scene to the user on the user interface display. - View Dependent Claims (12)
-
-
13. A method for a computer system comprises
displaying a representation of a plurality of three-dimensional objects, wherein a first three-dimensional object is located at a first three-dimensional location at a first display position on a display to a user; -
determining a first user interface position of a first indicator of a user placed upon a user interface device of the computer system; determining a selection of the first three-dimensional object of the plurality of three-dimensional objects in response to the first user interface position of the first indicator being at the first display position; displaying a representation of a plurality of geometric constraints associated with the first three-dimensional object at a plurality of display positions on the display to the user; while the first indicator of the user is placed upon the user interface device, determining a second user interface position of a second indicator of the user placed upon the user interface device; determining a selection of a geometric constraint from the plurality of geometric constraints in response to the second user interface position and the plurality of display positions; determining movement of the second indicator of the user placed upon the user interface device from the second user interface position to a third user interface position; moving the first three-dimensional object from the first three-dimensional location to a second three-dimensional location along the direction of the selected geometric constraint, in response to the movement of the second indicator and in response to the selected geometric constraint; determining a representation of the first three-dimensional object located at the second three-dimensional location; and displaying the representation of the first three-dimensional object located at the second three-dimensional location at a second display position on the display to the user. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer program product comprising a non-transitory tangible medium including computer system executable code for a computer system including a processor, a memory and a display, the computer program product comprising:
-
code that directs the processor to display a representation of a plurality of three-dimensional objects, wherein a first three-dimensional object is located at a first three-dimensional location at a first display position on the display to a user; code that directs the processor to determine a first user interface position of a first indicator of the user placed upon a user interface device of the computer system; code that directs the processor to determine a selection of the first three-dimensional object of the plurality of three-dimensional objects in response to the first user interface of the first indicator being at the first display position; code that directs the processor to display a representation of a plurality of geometric constraints associated with the first three-dimensional object at a plurality of display positions on the display to the user; code that directs the processor to determine a second user interface position of a second indicator of the user placed upon the user interface device, while the first indicator of the user is placed upon the user interface device; code that directs the processor to determine a selection of a geometric constraint from the plurality of geometric constraints in response to the second user interface position and the plurality of display positions; code that directs the processor to determine movement of the second indicator of the user placed upon the user interface device from the second user interface position to a third user interface position; code that directs the processor to move the first three-dimensional object from the first three-dimensional location to a second three-dimensional location along the direction of the selected geometric constraint, in response to the movement of the second indicator and in response to the selected geometric constraint; code that directs the processor to determine a representation of a first three-dimensional object located at the second three-dimensional location; and code that directs the processor to display the representation of the first three-dimensional object located at the second three-dimensional location at a second display position on the display to the user. - View Dependent Claims (27, 28, 29, 30, 31)
-
-
32. A computer system comprising:
-
a memory configured to store a model of a first three-dimensional object; a processor coupled to the memory, wherein the processor is configured to; determine a representation of a plurality of three-dimensional objects, wherein the first three-dimensional object is located at a first three-dimensional location in response to the model, determine a first user interface position of a first indicator of a user placed upon a user interface device of the computer system, determine a selection of the first three-dimensional object of the plurality of three-dimensional objects in response to the first user interface position of the first indicator being at a first display position, determine a second user interface position of a second indicator of the user placed upon the user interface device, while the first indicator of the user is placed upon the user interface device, determine a selection of a geometric constraint from the plurality of geometric constraints in response to the second user interface position, configured to determine movement of the second indicator of the user placed upon the user interface device from the second user interface position to a third user interface position, move the first three-dimensional object from the first three-dimensional location to a second three-dimensional location along the direction of the selected geometric constraint, in response to the movement of the second indicator and in response to the selected geometric constraint, and determine a representation of a first three-dimensional object located at the second three-dimensional location; and a display coupled to the processor, wherein the display is configured to; display the representation of the first three-dimensional object located at the second three-dimensional location at a second display position on the display to the user, display the representation of the first three-dimensional object located at the first three-dimensional location at the first display position on the display to the user, and display a representation of a plurality of geometric constraints associated with the first three-dimensional object at a plurality of display positions on the display to the user.
-
Specification