IP Library › Granted Patent US 7,190,367
Granted Patent B2
US 7,190,367 · App. 10/802,481 · Granted Mar 13, 2007

Method, apparatus, and system for rendering using a progressive cache

Assignee: Mitsubishi Electric Research Laboratories, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,190,367
App. No.
10/802,481
Granted
Mar 13, 2007
Kind
B2
Abstract

A method, apparatus, and system for rendering are disclosed. A rendering request is defined, where the rendering request describes an object to be rendered. A progressive cache is queried to determine a cached element most representing a display image satisfying the rendering request. The cached element is sent to a starting stage of a rendering pipeline for the object, where the starting stage is associated with the cached element. An output of the starting stage is sent to an input of a next stage of the rendering pipeline. A final stage of the rendering pipeline determines the display image satisfying the rendering request.

Claims (22)

1. A method for rendering, comprising:

defining a rendering request, the rendering request describing an object to be rendered in a single rendering pipeline including a set of stages connected serially to each other as a sequence of stages so that output of a previous stage provides input to a next stage, the sequence of stages including, in order, a preprocessed shape descriptor determination stage, a distance field determination stage, a distance values determination stage, an antialiased intensities determination stage, and a colorized image determination stage, and where the distance field determination stage determines a distance from a point in a co-planar field to an edge of the object, where the sign of the distance is negative if the point is outside the object, positive if the point is inside the object, and points on the edge having a zero distance;

querying a progressive cache to determine a most finished cached element representing a display image satisfying the rendering request, the progressive cache including a set of caches, the set of caches including a preprocessed shape descriptor cache, a distance field cache, a distance values cache, an antialiased intensities cache, and a colorized image cache, each cache in the set of caches arranged to store cached elements in a least finished to a most finished order, there being one cache associated with each stage;

sending the most finished cached element to a starting stage of a rendering pipeline for the object, the starting stage being a next stage of the rendering pipeline corresponding to the most finished cached element; and

sending an output of the starting stage to an input of a next stage of the rendering pipeline, a final stage of the rendering pipeline determining the display image satisfying the rendering request;

and displaying the display image satisfying the rendering request.

2. The method of claim 1 wherein an output of a stage of the rendering pipeline is sent to the progressive cache.

3. The method of claim 1 wherein distance values for a component of a pixel of the display image are stored in the distance values cache.

4. The method of claim 3 wherein the distance values for the component of the pixel of the display image are combined prior to determining an antialiased intensity for the component of the pixel.

5. The method of claim 1 further comprising:

compressing data stored in a particular cache in the set of caches.

6. The method of claim 1 wherein the progressive cache finds a cache element using hashing.

7. The method of claim 1 wherein the progressive cache eliminates least recently used cached elements from a particular cache in the set of caches when the particular cache is full.

8. The method of claim 1 wherein a particular stage in the sequence of stages processes the rendering request.

9. The method of claim 1 wherein the staffing stage associated with the cached element is a next stage of a corresponding stage of a cache of the progressive cache containing the cached element.

10. A system for rendering, comprising:

a rendering pipeline including a set of stages connected serially to each other as a sequence of stages so that output of a previous stage provides input to a next stage, a first stage is configured to receive a rendering request for an object, a last stage is configured to produce a display image corresponding to the object, and the sequence of stages includes, in order, a preprocessed shape descriptor determination stage, a distance field determination stage, a distance values determination stage, an antialiased intensities determination stage, and a colorized image determination stage, and where the distance field determination stage determines a distance from a point in a co-planar field to an edge of the object, where the sign of the distance is negative if the point is outside the object, positive if the point is inside the object, and points on the edge having a zero distance;

a progressive cache including a set of caches arranged to store cached elements in a least finished to a most finished order, the set of caches including a preprocessed shape descriptor cache, a distance field cache, a distance values cache, an antialiased intensities cache, and a colorized image cache; and

a cache controller configured to route a most finished cached element from the progressive cache to a next stage of a corresponding stage of the rendering pipeline and the output of a stage of the rendering pipeline to a corresponding cache of the progressive cache;

means for querying a progressive cache to determine a cached element most representing a display image satisfying a rendering request for an object;

means for sending the cached element to a starting stage of a rendering pipeline for the object, the starting stage associated with the cached element; and

means for sending an output of the starting stage to an input of a next stage of the rendering pipeline, a final stage of the rendering pipeline determining the display image satisfying the rendering request.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2004
From: PERRY, RONALD N.; FRISKEN, SARAH F.
To: MITSUBISHI ELECTRIC RESEARCH LABORATORIES, INC.
Reel/Frame 015113/0525 →
Continuity (2)
Continuation In Part 1039667300 · Mar 25, 2003
Related Publication 20040189653A1 · Sep 30, 2004