Method and system for virtual cinematography
First Claim
1. A method for displaying virtual cinematography on a display, the method comprising:
- receiving cinematographic events in real time using a real-time application module;
interpreting the received cinematographic events in real time using ciniematographic logic; and
automatically producing a camera view specification from the interpreted cinematographic events, where the camera specification is used to view a virtual scene on the display.
3 Assignments
0 Petitions
Accused Products
Abstract
Communication in a three-dimensional virtual environment generated by a computer is achieved by automatically applying rules of cinematography typically used for motion pictures. The cinematographic rules are codified as a hierarchical finite state machine, which is executed in real-time by a computer in response to input stimulation from a user or other source. The finite state machine controls camera placements automatically for a virtual environment. The finite state machine also exerts subtle influences on the positions and actions of virtual actors, in the same way that a director might stage real actors to compose a better shot. An implementation of a real-time camera controller based on the finite state machine for automatic virtual cinematography, called the virtual cinematographic application module (VC) is presented. The VC is used in virtual reality and other interactive applications to improve upon the fixed point-of-view shots or ceiling mounted cameras that such applications typically employ today. VC also helps improve the next generation of "intelligent-agent" user interfaces, by allowing the users to see themselves with an agent at camera positions that appear natural.
97 Citations
31 Claims
-
1. A method for displaying virtual cinematography on a display, the method comprising:
-
receiving cinematographic events in real time using a real-time application module; interpreting the received cinematographic events in real time using ciniematographic logic; and automatically producing a camera view specification from the interpreted cinematographic events, where the camera specification is used to view a virtual scene on the display. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system for implementing virtual cinematography, the system comprising:
-
a real-time application module for producing cinematographic events in response to land interfacing with al user input which is received in real time on a computer; a virtual cinematographic module interpreting the cinematographic events in real time and automatically determining camera position based on the cinematographic events; and a renderer application module for rendering a virtual environment in response to commands from the virtual cinematographic module. - View Dependent Claims (11)
-
-
12. A method for displaying a virtual actor to a user on a computer using virtual cinematography, the method comprising:
-
displaying a virtual actor on a computer; automatically selecting a virtual camera view specification; automatically selecting a virtual camera view distance; and modifying the arrangement and actions of the virtual actor in real time to conform to the selected virtual camera view specification and virtual camera view distance. - View Dependent Claims (13, 14, 15)
-
-
16. A method of creating an individual virtual cinematographic idiom for use in a computer system, the method comprising:
-
defining one or more individual virtual cinematographic idiom states; selecting a camera module to associate with each defined individual virtual cinematographic idiom state; and defining idiom actions which include transitions between the defined individual virtual cinematographic idiom states; wherein the idiom actions are used to display a virtual scene in real time on a computer in the computer system. - View Dependent Claims (17, 18, 19)
-
-
20. A method of creating a complex virtual cinematographic idiom for use in a computer system to display a virtual scene, the method comprising:
-
defining one or more complex virtual cinematographic idiom states; selecting an individual virtual cinematographic idiom for one or more of the defined complex virtual cinematographic idiom states where the individual idiom includes one or more individual idiom states, one or more camera modules and individual idiom actions; selecting a camera module to associate with each defined virtual cinematographic idiom state; defining complex idiom actions which include transitions between the defined complex virtual cinematographic idiom states; and defining conditions which are tested to decide which transition occurs; wherein in the complex virtual cinematographic idiom is used to display a virtual scene in real time on a computer. - View Dependent Claims (21)
-
-
22. A method of creating high level virtual cinematographic idioms for use in a computer system to display a virtual scene, the method comprising:
-
selecting a first set of individual virtual cinematographic idioms, where each of the individual virtual cinematographic idioms includes individual virtual cinematographic idiom states, camera modules, and virtual cinematographic individual idiom actions; combining the first set of individual virtual cinematographic idioms to create a complex virtual cinematographic idiom, where the complex virtual cinematographic idiom includes complex virtual cinematographic idiom states, camera modules, and complex virtual cinematographic idiom actions; selecting a second set of individual virtual cinematographic idioms and the complex virtual cinematographic idiom; and combining the second set of individual virtual cinematographic idioms and the complex virtual cinematographic idiom to create a high level virtual cinematographic idiom; wherein the high-level virtual cinematographic idioms are used to display a virtual scene in a real-time computer. - View Dependent Claims (23, 24)
-
-
25. A computer-readable storage medium having stored thereon instructions causing a computer to perform a method comprising:
-
selecting a set of verb virtual cinematographic idioms by identifying at least a verb and an object for each verb virtual cinematographic idiom; combining the selected set of verb virtual cinematographic idioms to create a pluralities of virtual movie scenes; and combining selected ones of the virtual movie scenes to create a virtual movie. - View Dependent Claims (26)
-
-
27. A method of virtual directing for display of a virtual scene on a computer display, the method comprising:
-
selecting a set of virtual cinematographic idioms, an idiom being a hierarchical state machine that automatically determines how camera viewing directions transition from one shot to another, where the virtual cinematographic idioms include one or more virtual cinematographic idiom states, one or more camera modules and individual idiom actions; changing the camera modules within the virtual cinematographic idioms based on a specific film directing style to create a customized, modified set of virtual cinematographic idioms; combining the modified set virtual cinematographic idioms based on the specific film directing style to create a pluralities of virtual movie scenes; and combining selected ones of the virtual movie scenes to create a virtual movie for display on the computer display. - View Dependent Claims (28)
-
-
29. A system for displaying a virtual scene on a client computer, comprising:
-
a real-time application module that receives user input from a user on the client computer to control, in real-time, a virtual actor displayed on the client computer as seen from a virtual camera; a real-time camera controller that includes a hierarchical finite state machine and a plurality of camera modules, the state machine for determining the positioning of the virtual camera and for determining display information for the virtual actor by invoking one of the camera modules; and a renderer for rendering the virtual actor using camera position information and display information from the real-time controller. - View Dependent Claims (30, 31)
-
Specification