A system for controlling a rendering engine by using specialized commands.
The commands are used to generate a production, such as a television
show, at an end-user's computer that executes the rendering engine. In
one embodiment, the commands are sent over a network, such as the
Internet, to achieve broadcasts of video programs at very high
compression and efficiency. Commands for setting and moving camera
viewpoints, animating characters, and defining or controlling scenes and
sounds are described. At a fine level of control math models and
coordinate systems can be used make specifications. At a coarse level of
control the command language approaches the text format traditionally
used in television or movie scripts. Simple names for objects within a
scene are used to identify items, directions and paths. Commands are
further simplified by having the rendering engine use defaults when
specifications are left out. For example, when a camera direction is not
specified, the system assumes that the viewpoint is to be the current
action area. The system provides a hierarchy of detail levels. Movement
commands can be defaulted or specified. Synchronized speech can be
specified as digital audio or as text which is used to synthesize the
speech.