Patent ID: 8441496

Claim:
A computer-implemented method comprising: generating a display list comprising one or more display list nodes, each display list node corresponding to a respective scene element of a scene graph that defines the position and orientation of multiple scene elements within a three-dimensional space, said display list defining a specific two-dimensional view of the three-dimensional space, the generating of a given display list node comprising: determining a particular scene graph node of the scene graph, the particular scene graph node specifying one or more attributes of the respective scene element to which the given display list node corresponds; allocating a portion of memory dedicated to the given display list node, said allocating performed at load time in response to loading of a source graphics file from which the scene graph is generated by a graphical application; storing in said portion of memory, at least one of said one or more attributes of the respective scene element; responsive to a notification to modify a particular scene element of the scene graph, modifying a particular display list node that corresponds to said particular scene element by modifying a respective attribute stored in the portion of memory previously allocated to the particular display list node; rendering from said display list, including the modified display list node, an image of a scene that includes said particular scene element modified according to said notification; and generating a first history state specifying a state of said display list prior to said notification to modify said particular scene element, and generating a second history state specifying a state of said display list subsequent to said modifying the particular display list node.