Claims
- 1. A method for rewinding a time-based script, for use with a plurality of data objects each having a state, the script comprising an ordered sequence of commands for modifying the state of one or more of the data objects over time, each command associated with a corresponding time value, and one or more of the commands being conditional, said method comprising the following steps:generating a sequence of time values in real-time, using a clock, starting from an initial time value; executing, using a digital computer, the script command associated with each generated time value, at least one of the associated script commands being conditional; interactively specifying a desired time value earlier than a currently generated time value; restoring each data object to its state as of the initial time value, using the digital computer; after the preceding step, skipping ahead to the desired time value by restoring each data object to its state as of the desired time value, in less time than the difference between the initial time value and the desired time value; and resetting the clock to the desired time value, thereby rewinding the time-based script to the desired time value.
- 2. The method of claim 1, wherein the step of skipping ahead to the desired time value includes the step of executing a key frame script reflecting a modification of each data object by commands associated with time values earlier than the desired time value.
- 3. The method of claim 1, wherein the step of skipping ahead to the desired time value includes the step of performing each command associated with a time value earlier than the desired time value.
- 4. The method of claim 1, wherein one or more of the commands for modifying the state of the data objects comprise one or more iterative loops.
- 5. The method of claim 1, wherein one or more of the commands for modifying the state of the data objects comprise one or more “if-then-else” statements.
- 6. The method of claim 1, wherein the maximum number of data objects modified by the commands of the time-based script depends only upon the digital computer used.
- 7. A digital computer-based apparatus for rewinding a time-based script, the script comprising an ordered sequence of commands, each command associated with a corresponding time value, said apparatus comprising:a plurality of data objects, each one of the data objects having a state, the commands being operable to modify said states, and one or more of the commands being conditional; a clock for generating a sequence of time values in real-time, starting from an initial time value; means for executing the script command associated with each generated time value, at least one of the associated script commands being conditional; means for interactively specifying a desired time value earlier than the currently generated time value; means for restoring each data object to its state as of the initial time value; means for skipping ahead to the desired time value in the script sequence, by restoring each data object to its state as of the desired time value, in less time than the difference between the initial time value and the desired time value; and means for resetting the clock to the desired time value, thereby rewinding the time-based script to the desired time value.
- 8. A computer program product for enabling the rewinding of a time-based script in a digital computer having a plurality of data objects each having a state, the script including an ordered sequence of commands for modifying the state of one or more of the data objects over time, each command associated with a corresponding time value, and at least one of the commands being conditional, the computer program product including a computer-useable means for storing therein computer-readable code comprising: program code for generating a sequence of time values in real-time, using a clock, starting from an initial time value; program code for executing, in the digital computer, the script command associated with each generated time value; program code for interactively specifying a desired time value earlier than a currently generated time value; program code for restoring each data object to its state as of the initial time value in the digital computer; program code for skipping ahead, by restoring each data object to its state as of the desired time value, in less time than the difference between the initial time value and the desired time value; and program code for resetting the clock to the desired time value, thereby rewinding the time-based script to the desired time value.
- 9. The computer program product of claim 8, further comprising:program code for executing a key frame script reflecting a modification of each data object by commands associated with time values earlier than the desired time value.
- 10. The computer program product of claim 8, further comprising:computer program code for performing each command associated with a time value earlier than the desired time value.
- 11. The computer program product of claim 8, wherein at least one of the commands for modifying the state of the data objects includes at least one iterative loops.
- 12. The computer program product of claim 8, wherein at least one of the commands for modifying the state of the data objects includes at least one conditional branching operation.
- 13. The computer program product of claim 8, wherein the maximum number of data objects modified by the commands of the time-based script depends only upon characteristics of the digital computer.
- 14. A computer program product for enabling the rewinding of a time-based script in a digital computer having a plurality of data objects each having a state, the script including an ordered sequence of commands for modifying the state of one or more of the data objects over time, each command associated with a corresponding time value, and at least one of the commands being conditional, the computer program product including a computer-useable means for storing therein computer-readable code comprising: program code for generating a sequence of time values in real-time, using a clock, starting from an initial time value; program code for executing, in the digital computer, the script command associated with each generated time value; program code for tagging each data object created by the script commands; program code for interactively specifying a desired time value earlier than a currently generated time value; program code for restoring each data object to its state as of the initial time value by deleting one or more of the tagged data objects in the digital computer; program code for skipping ahead, by restoring each data object to its state as of the desired time value, to the desired time value in less time than the difference between the initial time value and the desired time value; and program code for resetting the clock to the desired time value, thereby rewinding the time-based script to the desired time value.
- 15. The computer program product of claim 14, further comprising:program code for executing a key frame script reflecting a modification of each data object by commands associated with time values earlier than the desired time value.
- 16. The computer program product of claim 14, further comprising:computer program code for performing each command associated with a time value earlier than the desired time value.
- 17. The computer program product of claim 14, wherein at least one of the commands for modifying the state of the data objects includes at least one iterative loops.
- 18. The computer program product of claim 14, wherein at least one of the commands for modifying the state of the data objects includes at least one conditional branching operation.
- 19. The computer program product of claim 14, wherein the maximum number of data objects modified by the commands of the time-based script depends only upon characteristics of the digital computer.
Parent Case Info
This is a continuation of application Ser. No. 08/305,793 filed Sep. 13, 1994 now U.S. Pat. No. 5,475,811, which is a continuation of application Ser. No. 08/040,479, filed Mar. 31, 1993, now abandoned.
US Referenced Citations (10)
Foreign Referenced Citations (1)
Number |
Date |
Country |
0469850 |
Feb 1992 |
DE |
Non-Patent Literature Citations (5)
Entry |
Robin, Laura, “Temporal Adaptation of Multimedia Scripts”, SPIE vol. 1460, pp103-113, Feb. 1991.* |
Ogawa et al, “Scenario Based Hypermedia: A Model and A System”, Proceedins of the First European Conference on Hypertext, France, pp 38-51, Nov. 1990.* |
Horn et al., “On Programming and Supporting Multimedia Object Synchronization”, The Computer Journal, vol. 36, No. 1, pp 4-10, Oct. 1992.* |
Studio Manual, Macrominder Director No. 2, 1989.* |
Interactivity Manual, Macrominder Director No. 3, Apr. 1990. |
Divisions (1)
|
Number |
Date |
Country |
Parent |
08/510131 |
Oct 1995 |
US |
Child |
09/292065 |
|
US |
Continuations (2)
|
Number |
Date |
Country |
Parent |
08/305793 |
Sep 1994 |
US |
Child |
08/510131 |
|
US |
Parent |
08/040479 |
Mar 1993 |
US |
Child |
08/305793 |
|
US |
Reissues (1)
|
Number |
Date |
Country |
Parent |
08/510131 |
Oct 1995 |
US |
Child |
09/292065 |
|
US |