« PreviousContinue »
mi iiiiiii ill mi mi lyiijii Iiiijiiiijp mi Iiiiii mi mi mi
(12) United States Patent
Ecob et al.
(io) Patent No.: (45) Date of Patent:
US 7,148,897 B2 Dec. 12, 2006
(54) RENDERING SUCCESSIVE FRAMES IN A GRAPHIC OBJECT SYSTEM
(75) Inventors: Stephen Edward Ecob, Bexley (AU);
Scott Bradley, St Leonards (AU)
(73) Assignee: Canon Kabushiki Kaisha, Tokyo (JP)
( * ) Notice: Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U.S.C. 154(b) by 334 days.
(21) Appl. No.: 10/875,432
(22) Filed: Jun. 25, 2004
(65) Prior Publication Data
US 2005/0007372 Al Jan. 13, 2005
(30) Foreign Application Priority Data
Jun. 26, 2003 (AU) 2003903447
(51) Int. CI.
(52) U.S. CI 345/473; 345/475; 345/582
(58) Field of Classification Search 345/473,
345/474, 475, 582, 586, 588 See application file for complete search history.
Primary Examiner—Phu K. Nguyen
(74) Attorney, Agent, or Firm—Fitzpatrick, Cella, Harper &
Disclosed is an imaging engine system (699) generally intended for the reproduction of graphical object images using apparatus having limited computing resources, such as so-called "thin clients". Numerous developments of traditional image processing and rendering enable high quality image generation. One such development takes advantage of temporal coherence between one frame in an animation sequence and the succeeding frame. In particular, there will often be some edges (233, 235) of graphical objects that remain "static" across several contiguous frames. One example of this includes those edges used to draw image background detail. Another development performs antialiasing during scan line rendering of a graphic object image where sub-pixel resolution coverage bit-masks (A-buffers 29-34) are generated for a limited number of scan lines at a time. Preferably the A-buffers are generated for only one pixel at a time. Another development relates to rendering a scan line of a graphic object image in a scan line renderer for a span of pixels lying between two x-order consecutive edges intersecting the scan line. For the span of pixels, this development maintains a subset of depths present in the rendering, the subset being those depths that are present on the span and being maintained in depth order (590) and subject to removal of depths where the corresponding depth is no longer active. In another development a compositing stack (6101-6107) of image layers to be rendered in a raster scan fashion is simplified. Rendering is operable over a run of two or more pixels within which a relationship between graphical objects contributing to the layers does not change. The layers are first divided into groups (6110, 6112, 6114), with each group being separated by a layer having variable transparency (6111, 6113). For a top one of the groups, layers having constant colour in the run are reduced to a single equivalent colour (6115, 6116, 6117) having an associated accumulated contribution. Many other developments are disclosed.
22 Claims, 70 Drawing Sheets
5,483,627 A 1/1996 Silverbrook et al 395/133
5,990,904 A 11/1999 Griffin 345/435
6,057,855 A 5/2000 Barkans 345/435
6,128,000 A 10/2000 Jouppi et al 345/136
6,362,818 Bl 3/2002 Gardiner et al 345/421
6,369,828 Bl 4/2002 Lewis 345/611
6,369,830 Bl 4/2002 Brunner et al 345/629
6,559,849 Bl * 5/2003 Anderson et al 345/474
6,700,586 Bl * 3/2004 Demers 345/588
6,791,549 Bl * 9/2004 Hubrecht et al 345/473
6,924,805 Bl * 8/2005 Mech 345/473
7,061,501 Bl * 6/2006 Lake et al 345/582
L. Carpenter, "The A-buffer, an Antialiased Hidden Surface Method", Computer Graphics, vol. 18, No. 3, Jul. 1984, pp. 103-108.
Thomas Porter et al.,"Compositing Digital Images", Com-
puter Graphics, vol. 18, No. 3, Jul. 1984, pp. 253-259.
J. Foley et al., "Computer Graphics: Principles and Prac-
tice"; 2nd Edition, Addison-Wesley, 1997, pp. 81-87.
Scalable Vector Graphics (SVG)l.l Specification, W3C
Recommendation Jan. 14, 2003 (REC-SVG11-20030114),
W3C® (MIT, ERCIM, Keio) http://www.w3. org/TR/2003/
* cited by examiner
X=0 X=1 X=2 X=3 X=4 X=5 X=6 X=7 S5
I I I.I \ V\ \ I I I I N.I I I I I I I I I k
/\ 20 22
X = 7