Patentable/Patents/US-8508551
US-8508551

Rendering changed portions of composited images

PublishedAugust 13, 2013
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Rendering graphics on a display of a device. In a portable or wireless device, a list of instructions needed to refresh or generate a frame is first created. The created instructions are then parsed or optimized to remove instructions that result in unnecessary processing instructions. The optimized list is then executed. During generation of a given frame, a view hierarchy is traversed to identify damaged portions of a display. The damaged portions are not copied to the frame. Also, information that has not changed is likewise not usually copied. Damage from the previous frame less damage from the current frame is copied to the appropriate buffer. The instructions are optimized to render only the portion of the frame that is necessary. Portions of the display that are not visible are not traversed in the view hierarchy and are not considered until visible on the display.

Patent Claims
12 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A method for rendering an image on a display of a device, the method comprising: accessing a first frame, of an image to be rendered to the display of the device, in a first buffer; determining that one or more portions of the first frame will be unchanged in a second frame of the image and that one or more portions of the first frame will change in the second frame; copying the unchanged portions of the first frame to a second buffer; creating a list of instructions that when executed will generate the changed portions of the second frame; determining that at least one of the instructions in the list of instructions is at least partially redundant to at least one other instruction in the list of instructions; prior to executing the list of instructions, optimizing the list of instructions by removing at least one instruction that is at least partially redundant; and executing the optimized list of instructions to generate the changed portions of the second frame.

Plain English Translation

The method renders images on a device display by first accessing a first image frame from a buffer. It then determines which parts of the first frame will remain the same and which parts will change in the subsequent second frame. The unchanged portions are copied to a second buffer. A list of instructions is created to generate only the changed portions of the second frame. The method identifies and removes redundant instructions from this list before executing it. Finally, the optimized instruction list is executed to render the changed portions of the second frame onto the display. This avoids unnecessary processing.

Claim 2

Original Legal Text

2. The method of claim 1 , further comprising displaying the first and second frames on the display of the device.

Plain English Translation

The method for rendering an image on a display involves accessing a first frame in a first buffer, determining which portions will change in a second frame, copying the unchanged portions to a second buffer, creating a list of instructions to generate the changed portions of the second frame, optimizing the instruction list by removing redundant instructions, executing the optimized list to generate the changed portions, and then displaying both the first and second frames on the device display. This provides a complete animation or update sequence.

Claim 3

Original Legal Text

3. The method of claim 1 , wherein determining that one or more portions of the first frame will change in the second frame comprises traversing a view hierarchy to collect the one or more changed portions.

Plain English Translation

The method renders images on a device display by first accessing a first image frame from a buffer. It then determines which parts of the first frame will remain the same and which parts will change in the subsequent second frame. Determining the changed portions involves traversing a view hierarchy, a tree-like structure representing the elements of the user interface, to identify the parts of the display that need updating. The unchanged portions are copied to a second buffer. A list of instructions is created to generate only the changed portions of the second frame, optimized to remove redundant instructions, and executed.

Claim 4

Original Legal Text

4. The method of claim 1 , wherein optimizing the list of instructions further comprises altering at least one instruction.

Plain English Translation

The method renders images on a device display by first accessing a first image frame from a buffer. It then determines which parts of the first frame will remain the same and which parts will change in the subsequent second frame. The unchanged portions are copied to a second buffer. A list of instructions is created to generate only the changed portions of the second frame. The method optimizes this instruction list by not only removing redundant instructions, but also by altering existing instructions to improve efficiency. Finally, the optimized instruction list is executed to render the changed portions of the second frame.

Claim 5

Original Legal Text

5. A non-transitory computer program product comprising one or more computer readable physical storage media having stored thereon computer executable instructions that when executed by a processor cause a computing system to perform a method for rendering an image on a display of a device, the method comprising: accessing a first frame, of an image to be rendered to the display of the device, in a first buffer; determining that one or more portions of the first frame will be unchanged in a second frame of the image and that one or more portions of the first frame will change in the second frame; copying the unchanged portions of the first frame to a second buffer; creating a list of instructions that when executed will generate the changed portions of the second frame; determining that at least one of the instructions in the list of instructions is at least partially redundant to at least one other instruction in the list of instructions; prior to executing the list of instructions, optimizing the list of instructions by removing at least one instruction that is at least partially redundant; and executing the optimized list of instructions to generate the changed portions of the second frame.

Plain English Translation

A non-transitory computer program stored on a physical medium renders images on a device display. The program accesses a first image frame from a buffer. It determines which parts of the first frame will remain the same and which parts will change in the subsequent second frame. The unchanged portions are copied to a second buffer. A list of instructions is created to generate only the changed portions of the second frame. The program identifies and removes redundant instructions from this list before executing it. Finally, the optimized instruction list is executed to render the changed portions of the second frame.

Claim 6

Original Legal Text

6. The non-transitory computer program product of claim 5 , further comprising displaying the first and second frames on the display of the device.

Plain English Translation

A non-transitory computer program stored on a physical medium renders images on a device display. The program accesses a first image frame from a buffer, determines which portions will change in a second frame, copies the unchanged portions to a second buffer, creates a list of instructions to generate the changed portions, optimizes the instruction list by removing redundant instructions, executes the optimized list, and then displays both the first and second frames on the device display. This ensures a complete display update sequence is performed by the program.

Claim 7

Original Legal Text

7. The non-transitory computer program product of claim 5 , wherein determining that one or more portions of the first frame will change in the second frame comprises traversing a view hierarchy to collect the one or more changed portions.

Plain English Translation

A non-transitory computer program stored on a physical medium renders images on a device display. The program accesses a first image frame from a buffer. It determines which parts of the first frame will remain the same and which parts will change in the subsequent second frame. Determining the changed portions involves traversing a view hierarchy to identify the parts of the display that need updating. The unchanged portions are copied to a second buffer. A list of instructions is created to generate only the changed portions of the second frame, optimized to remove redundant instructions, and executed.

Claim 8

Original Legal Text

8. The non-transitory computer program product of claim 7 , further comprising only traversing a portion of the view hierarchy that is visible on the display of the device.

Plain English Translation

A non-transitory computer program renders images on a device display by accessing a first frame from a buffer, determining which portions will change in a second frame by traversing a view hierarchy, copying the unchanged portions to a second buffer, creating an instruction list to generate changed portions, optimizing the list, and executing it. The view hierarchy traversal is limited to only the portion of the display currently visible, thus avoiding unnecessary processing of off-screen elements to further improve performance.

Claim 9

Original Legal Text

9. The non-transitory computer program product of claim 5 , wherein optimizing the list of instructions further comprises altering at least one instruction.

Plain English Translation

A non-transitory computer program stored on a physical medium renders images on a device display. The program accesses a first image frame from a buffer. It determines which parts of the first frame will remain the same and which parts will change in the subsequent second frame. The unchanged portions are copied to a second buffer. A list of instructions is created to generate only the changed portions of the second frame. The program optimizes this instruction list by not only removing redundant instructions, but also by altering existing instructions to improve efficiency. Finally, the optimized instruction list is executed to render the changed portions of the second frame.

Claim 10

Original Legal Text

10. A portable electronic device comprising: a display able to present images to a user; a user interface through which the user provides input; and a graphic engine that renders images painted on the display of the device, the graphic engine including; a plurality of buffers that are used in round robin fashion to generate successive frames painted in the display; and an image module that manages the plurality of buffers and repairs portions of the image that are damaged by performing the following: accessing a first frame, of an image to be rendered to the display of the device, in a first buffer; determining that one or more portions of the first frame will be unchanged in a second frame of the image and that one or more portions of the first frame will change in the second frame; copying the unchanged portions of the first frame to a second buffer; creating a list of instructions that when executed will generate the changed portions of the second frame; determining that at least one of the instructions in the list of instructions is at least partially redundant to at least one other instruction in the list of instructions; prior to executing the list of instructions, optimizing the list of instructions by removing at least one instruction that is at least partially redundant; and executing the optimized list of instructions to generate the changed portions of the second frame.

Plain English Translation

A portable electronic device, such as a phone or tablet, has a display, a user interface for input, and a graphics engine. The graphics engine utilizes multiple buffers in a round-robin fashion to generate successive frames for the display. An image module within the engine manages these buffers and repairs damaged portions of the image by accessing a first frame from a buffer, identifying changed and unchanged portions for the next frame, copying the unchanged portions to another buffer, creating a list of instructions to generate only the changed portions, optimizing the instruction list by removing redundancies, and then executing the optimized list to render the changes.

Claim 11

Original Legal Text

11. The device of claim 10 wherein the image module identifies the portions of the image that are damaged by traversing at least a visible section of a view hierarchy, wherein the view hierarchy corresponds to images included in or potentially included in the display, wherein images potentially included in the display are not traversed.

Plain English Translation

A portable electronic device renders images using a graphics engine and multiple buffers. The image module in the engine identifies damaged image portions by traversing a view hierarchy. This traversal is limited to the visible sections of the hierarchy, representing elements currently on the display. Images not currently included in the display, even if they are part of the potential view hierarchy, are excluded from the traversal to avoid unnecessary processing and improve rendering performance.

Claim 12

Original Legal Text

12. The device of claim 10 , wherein the image module discards damage collected in the view hierarchy when the collected damage is above a threshold number of frames old.

Plain English Translation

A portable electronic device renders images using a graphics engine. The image module tracks damaged image portions using a view hierarchy. Damage information collected in the view hierarchy is discarded if it exceeds a certain age, measured in frames. This threshold ensures that only recent damage is considered, preventing the system from attempting to repair obsolete damage from older frames, which could negatively impact performance. This allows the system to focus on repairing current damage and maintaining a responsive display.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

July 13, 2011

Publication Date

August 13, 2013

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Rendering changed portions of composited images” (US-8508551). https://patentable.app/patents/US-8508551

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-8508551. See llms.txt for full attribution policy.