CA2558013A1 - Display updates in a windowing system using a programmable graphics processing unit. - Google Patents

Display updates in a windowing system using a programmable graphics processing unit. Download PDF

Info

Publication number
CA2558013A1
CA2558013A1 CA002558013A CA2558013A CA2558013A1 CA 2558013 A1 CA2558013 A1 CA 2558013A1 CA 002558013 A CA002558013 A CA 002558013A CA 2558013 A CA2558013 A CA 2558013A CA 2558013 A1 CA2558013 A1 CA 2558013A1
Authority
CA
Canada
Prior art keywords
buffer
effects
display layer
act
location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA002558013A
Other languages
French (fr)
Other versions
CA2558013C (en
Inventor
Ralph Brunner
John Harper
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Computer, Inc.
Ralph Brunner
John Harper
Apple Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/877,358 external-priority patent/US20050285866A1/en
Application filed by Apple Computer, Inc., Ralph Brunner, John Harper, Apple Inc. filed Critical Apple Computer, Inc.
Priority to CA2765087A priority Critical patent/CA2765087C/en
Publication of CA2558013A1 publication Critical patent/CA2558013A1/en
Application granted granted Critical
Publication of CA2558013C publication Critical patent/CA2558013C/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Abstract

Techniques to effect arbitrary visual effects using fragment programs executing on a programmable graphics processing unit are described. In a first technique (300), visual effects are applied to a buffered window system's assembly buffer prior to compositing a target window. In a second technique (400), visual effects are applied to a target window as it is being composited into the system's assembly buffer. In a third technique (500 and 600), visual effects are applied to a system's assembly buffer after compositing a target window. In a fourth technique (700), visual effects are applied to the system's assembly buffer as it is transmitted to the system's frame-buffer. In a fifth technique (1100 and 1200), arbitrary visual effects are permitted to any one or more windows (e.g., application-specific window buffers) in a manner that updates only a portion of a display.

Claims (35)

1. A method to generate a display-wide visual effect, comprising:
filtering an image buffer's contents using a graphics processing unit to generate a specified visual effect, wherein the image buffer is associated with a system frame buffer; and compositing an application-specific window buffer into the image buffer, wherein the act of compositing is performed by the graphics processing unit after the act of filtering.
2. The method of claim 1, wherein the act of filtering comprises:
copying the image buffer's contents into a first buffer; and filtering the first buffer's contents using the graphics processing unit back into the image buffer.
3. The method of claim 1, wherein the act of filtering comprises filtering less than all of the image buffer's contents.
4. The method of claim 1, wherein the specified visual effect comprises one or more of the following visual effects: color effects, distortion effects, stylized effects, composition effects, half-tone effects, transition effects, tile effects, gradient effects, sharpen effects and blur effects.
5. The method of claim 1, further comprising transferring contents of the image buffer to the system frame buffer after the act of compositing using the graphics processing unit.
6. A method to generate a display-wide visual effect, comprising:
filtering an application specific window buffer using a graphics processing unit to generate a specified visual effect; and compositing, using a graphics processing unit, the filtered window buffer into an image buffer, said image buffer associated with a system frame buffer.
7. The method of claim 6, wherein the act of filtering comprises filtering less than all of the application specific window buffer's content.
8. The method of claim 6, wherein the specified visual effect comprises one or more of the following visual effects: color effects, distortion effects, stylized effects, composition effects, half-tone effects, transition effects, tile effects, gradient effects, sharpen effects and blur effects.
9. The method of claim 6, wherein the act of filtering comprises:

filtering, into a temporary buffer, the contents of the application specific window buffer and the contents of the image buffer into a temporary buffer substantially simultaneously with a graphics processing unit to generate a specified visual effect; and transferring the contents of the temporary buffer into the image buffer using the graphics processing unit.
10. The method of claim 9, further comprising transferring contents of the image buffer into the system frame buffer after the act of compositing.
11. A method to generate a display-wide visual effect, comprising:

compositing an application specific window buffer into an image buffer, said image buffer associated with a system frame buffer; and filtering the image buffer using a graphics processing unit to generate a specified visual effect.
12. The method of claim 11, wherein the act of filtering comprises:

copying the image buffer's contents into a first buffer; and filtering the first buffer's contents using the graphics processing unit back into the image buffer.
13. The method of claim 12, wherein the act of filtering comprises filtering less than all of the application specific window buffer's content.
14. The method of claim 12, wherein the specified visual effect comprises one or more of the following visual effects: color effects, distortion effects, stylized effects, composition effects, half-tone effects, transition effects, tile effects, gradient effects, sharpen effects and blur effects.
15. A method to generate a display-wide visual effect, comprising:

filtering an image buffer using a graphics processing unit to generate a specified visual effect; and storing the filtered image buffer into a frame buffer, said frame buffer associated with a display device.
16. The method of claim 15, wherein the act of filtering is performed in a time less than a scan rate associated with the frame buffer.
17. The method of claim 15, wherein the act of filtering comprises filtering less than all of the image buffer.
18. The method of claim 15, wherein the specified visual effect comprises one or more of the following visual effects: color effects, distortion effects, stylized effects, composition effects, half-tone effects, transition effects, tile effects, gradient effects, sharpen effects and blur effects.
19. A method to generate a partial display update in a windowing system having a plurality of display layers, comprising:

identifying an output region associated with a top-most display layer, the output region having an associated output size and location;

identifying a buffer having a size and location corresponding to the output size and location;

identifying the top-most display layer as a current display layer;

determining if a filter is associated with the current display layer and, if there is, determining an input region for the filter, said input region having an associated size and location, and adjusting the buffer size and location to correspond to the union of the input region's size and location and the buffer's size and location;

setting the display layer immediately lower than the current display layer to the current display layer;

repeating the act of determining for each relevant display layer in the windowing system;

establishing an output buffer having a size and location to accommodate the size and location of the buffer; and compositing that portion of each display layer that overlaps the output buffer's location into the established output buffer.
20. The method of claim 19, wherein the act of identifying comprises obtaining output region information from a windowing subsystem.
21. The method of claim 19, wherein the act of establishing comprises instantiating an output buffer.
22. The method of claim 19, wherein the act of compositing comprises compositing each display layer that overlaps the output buffer's location beginning with a bottom-most display layer and proceeding in a linear fashion to the top-most display layer.
23. The method of claim 19, wherein the act of compositing uses one or more graphics processing units.
24. The method of claim 23, wherein the acts of identifying an output region, identifying a buffer, identifying the top-most display layer, determining if a filter is associated with the current display layer, setting the display layer immediately lower than the current display layer to the current display layer and establishing an output buffer use one or more general purpose central processing units.
25. The method of claim 19, further comprising transferring that portion of the output buffer corresponding to the output region's location to a frame buffer.
26. The method of claim 19, wherein the relevant display layers in the windowing system comprise those layers associated with a specified display unit.
27. A computer-readable medium having computer-executable instructions stored therein for performing the method recited in any one of claims 19 through 26.
28. A method to generate a partial display update, comprising:

identifying an output region associated with a top-most display layer, the output region having an associated output size and location;

determining an input region for each of one or more filters, each of said one or more filters associated with a display layer and having an associated input size and location;

establishing a buffer having a size and location to accommodate the union of the output region's location and each of the one or more input regions' locations;
and compositing that portion of each display layer that overlaps the buffer's location into the established buffer.
29. The method of claim 28, wherein the act of identifying comprises obtaining output region information from a windowing subsystem.
30. The method of claim 28, wherein the top-most display layer comprises an associated filter.
31. The method of claim 28, wherein the act of compositing comprises compositing each display layer that overlaps the buffer's location beginning with a bottom-most display layer and proceeding in a linear fashion to the top-most display layer.
32. The method of claim 28, wherein the act of compositing uses one or more graphics processing units.
33. The method of claim 32, wherein the acts of identifying, determining and establishing uses one or more general purpose central processing units
34. The method of claim 28, further comprising transferring that portion of the buffer corresponding to the output region's location to a frame buffer.
35. A computer-readable medium having computer-executable instructions stored therein for performing the method recited in any one of claims 28 through 34.
CA2558013A 2004-06-25 2005-06-01 Display updates in a windowing system using a programmable graphics processing unit. Active CA2558013C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA2765087A CA2765087C (en) 2004-06-25 2005-06-01 Display updates in a windowing system using a programmable graphics processing unit

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US10/877,358 US20050285866A1 (en) 2004-06-25 2004-06-25 Display-wide visual effects for a windowing system using a programmable graphics processing unit
US10/877,358 2004-06-25
US10/957,557 US7652678B2 (en) 2004-06-25 2004-10-01 Partial display updates in a windowing system using a programmable graphics processing unit
US10/957,557 2004-10-01
PCT/US2005/019108 WO2006007251A2 (en) 2004-06-25 2005-06-01 Display updates in a windowing system using a programmable graphics processing unit.

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CA2765087A Division CA2765087C (en) 2004-06-25 2005-06-01 Display updates in a windowing system using a programmable graphics processing unit

Publications (2)

Publication Number Publication Date
CA2558013A1 true CA2558013A1 (en) 2006-01-19
CA2558013C CA2558013C (en) 2012-11-13

Family

ID=34971412

Family Applications (2)

Application Number Title Priority Date Filing Date
CA2558013A Active CA2558013C (en) 2004-06-25 2005-06-01 Display updates in a windowing system using a programmable graphics processing unit.
CA2765087A Active CA2765087C (en) 2004-06-25 2005-06-01 Display updates in a windowing system using a programmable graphics processing unit

Family Applications After (1)

Application Number Title Priority Date Filing Date
CA2765087A Active CA2765087C (en) 2004-06-25 2005-06-01 Display updates in a windowing system using a programmable graphics processing unit

Country Status (5)

Country Link
US (4) US7652678B2 (en)
EP (1) EP1759381B1 (en)
AU (2) AU2005262676B2 (en)
CA (2) CA2558013C (en)
WO (1) WO2006007251A2 (en)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2378108B (en) 2001-07-24 2005-08-17 Imagination Tech Ltd Three dimensional graphics system
US8860752B2 (en) * 2006-07-13 2014-10-14 Apple Inc. Multimedia scripting
US8564612B2 (en) * 2006-08-04 2013-10-22 Apple Inc. Deep pixel pipeline
GB2449398B (en) * 2006-09-29 2009-02-11 Imagination Tech Ltd Improvements in memory management for systems for generating 3-dimensional computer images
US7817166B2 (en) * 2006-10-12 2010-10-19 Apple Inc. Stereo windowing system with translucent window support
US9524496B2 (en) * 2007-03-19 2016-12-20 Hugo Olliphant Micro payments
EP1990774A1 (en) * 2007-05-11 2008-11-12 Deutsche Thomson OHG Renderer for presenting an image frame by help of a set of displaying commands
US8934984B2 (en) 2007-05-31 2015-01-13 Cochlear Limited Behind-the-ear (BTE) prosthetic device with antenna
US8229211B2 (en) * 2008-07-29 2012-07-24 Apple Inc. Differential image enhancement
GB0823254D0 (en) 2008-12-19 2009-01-28 Imagination Tech Ltd Multi level display control list in tile based 3D computer graphics system
GB0823468D0 (en) 2008-12-23 2009-01-28 Imagination Tech Ltd Display list control stream grouping in tile based 3D computer graphics systems
US9406155B2 (en) * 2009-09-25 2016-08-02 Arm Limited Graphics processing systems
GB0916924D0 (en) * 2009-09-25 2009-11-11 Advanced Risc Mach Ltd Graphics processing systems
US8988443B2 (en) 2009-09-25 2015-03-24 Arm Limited Methods of and apparatus for controlling the reading of arrays of data from memory
US9349156B2 (en) 2009-09-25 2016-05-24 Arm Limited Adaptive frame buffer compression
US9117297B2 (en) * 2010-02-17 2015-08-25 St-Ericsson Sa Reduced on-chip memory graphics data processing
KR101419155B1 (en) 2010-06-14 2014-07-14 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 Display management
EP2725655B1 (en) * 2010-10-12 2021-07-07 GN Hearing A/S A behind-the-ear hearing aid with an improved antenna
GB201105716D0 (en) 2011-04-04 2011-05-18 Advanced Risc Mach Ltd Method of and apparatus for displaying windows on a display
US9682315B1 (en) * 2011-09-07 2017-06-20 Zynga Inc. Social surfacing and messaging interactions
US9235905B2 (en) 2013-03-13 2016-01-12 Ologn Technologies Ag Efficient screen image transfer
BR112015019510A2 (en) 2013-03-14 2017-12-12 Intel Corp composer support for graphical functions.
US9182934B2 (en) 2013-09-20 2015-11-10 Arm Limited Method and apparatus for generating an output surface from one or more input surfaces in data processing systems
US9195426B2 (en) 2013-09-20 2015-11-24 Arm Limited Method and apparatus for generating an output surface from one or more input surfaces in data processing systems
EP3092560B1 (en) * 2014-01-06 2019-05-08 Johnson Controls Technology Company Vehicle with multiple user interface operating domains
GB2524467B (en) 2014-02-07 2020-05-27 Advanced Risc Mach Ltd Method of and apparatus for generating an overdrive frame for a display
GB2528265B (en) 2014-07-15 2021-03-10 Advanced Risc Mach Ltd Method of and apparatus for generating an output frame
US10595138B2 (en) 2014-08-15 2020-03-17 Gn Hearing A/S Hearing aid with an antenna
GB2540562B (en) 2015-07-21 2019-09-04 Advanced Risc Mach Ltd Method of and apparatus for generating a signature representative of the content of an array of data
KR102491499B1 (en) 2016-04-05 2023-01-25 삼성전자주식회사 Device For Reducing Current Consumption and Method Thereof
KR102488333B1 (en) 2016-04-27 2023-01-13 삼성전자주식회사 Electronic eevice for compositing graphic data and method thereof

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5388201A (en) * 1990-09-14 1995-02-07 Hourvitz; Leonard Method and apparatus for providing multiple bit depth windows
EP0528631B1 (en) * 1991-08-13 1998-05-20 Xerox Corporation Electronic image generation
US5274760A (en) 1991-12-24 1993-12-28 International Business Machines Corporation Extendable multiple image-buffer for graphics systems
DE69315969T2 (en) * 1992-12-15 1998-07-30 Sun Microsystems Inc Presentation of information in a display system with transparent windows
US6031937A (en) * 1994-05-19 2000-02-29 Next Software, Inc. Method and apparatus for video compression using block and wavelet techniques
US6757438B2 (en) * 2000-02-28 2004-06-29 Next Software, Inc. Method and apparatus for video compression using microwavelets
US5706478A (en) 1994-05-23 1998-01-06 Cirrus Logic, Inc. Display list processor for operating in processor and coprocessor modes
AUPM704194A0 (en) 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the evaluation of a graphical programming language
JP2951572B2 (en) * 1994-09-12 1999-09-20 インターナショナル・ビジネス・マシーンズ・コーポレイション Image data conversion method and system
US5949409A (en) * 1994-12-02 1999-09-07 Sony Corporation Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution
JP3578498B2 (en) * 1994-12-02 2004-10-20 株式会社ソニー・コンピュータエンタテインメント Image information processing device
JP3647487B2 (en) * 1994-12-02 2005-05-11 株式会社ソニー・コンピュータエンタテインメント Texture mapping device
US5877762A (en) * 1995-02-27 1999-03-02 Apple Computer, Inc. System and method for capturing images of screens which display multiple windows
US5877741A (en) * 1995-06-07 1999-03-02 Seiko Epson Corporation System and method for implementing an overlay pathway
US5854637A (en) * 1995-08-17 1998-12-29 Intel Corporation Method and apparatus for managing access to a computer system memory shared by a graphics controller and a memory controller
US6331856B1 (en) * 1995-11-22 2001-12-18 Nintendo Co., Ltd. Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing
US5872729A (en) 1995-11-27 1999-02-16 Sun Microsystems, Inc. Accumulation buffer method and apparatus for graphical image processing
WO1997032248A1 (en) * 1996-02-29 1997-09-04 Sony Computer Entertainment, Inc. Image processor and image processing method
US6044408A (en) 1996-04-25 2000-03-28 Microsoft Corporation Multimedia device interface for retrieving and exploiting software and hardware capabilities
US5764229A (en) * 1996-05-09 1998-06-09 International Business Machines Corporation Method of and system for updating dynamic translucent windows with buffers
JP3537259B2 (en) * 1996-05-10 2004-06-14 株式会社ソニー・コンピュータエンタテインメント Data processing device and data processing method
US6006231A (en) * 1996-09-10 1999-12-21 Warp 10 Technologies Inc. File format for an image including multiple versions of an image, and related system and method
US5933155A (en) * 1996-11-06 1999-08-03 Silicon Graphics, Inc. System and method for buffering multiple frames while controlling latency
EP0972273B1 (en) 1997-04-04 2004-03-24 Intergraph Hardware Technologies Company Apparatus and method for applying effects to graphical images
US6215495B1 (en) * 1997-05-30 2001-04-10 Silicon Graphics, Inc. Platform independent application program interface for interactive 3D scene management
US6026478A (en) 1997-08-01 2000-02-15 Micron Technology, Inc. Split embedded DRAM processor
US5987256A (en) 1997-09-03 1999-11-16 Enreach Technology, Inc. System and process for object rendering on thin client platforms
US6272558B1 (en) * 1997-10-06 2001-08-07 Canon Kabushiki Kaisha Application programming interface for manipulating flashpix files
US6266053B1 (en) * 1998-04-03 2001-07-24 Synapix, Inc. Time inheritance scene graph for representation of media content
US6771264B1 (en) * 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
US6577317B1 (en) * 1998-08-20 2003-06-10 Apple Computer, Inc. Apparatus and method for geometry operations in a 3D-graphics pipeline
US8332478B2 (en) * 1998-10-01 2012-12-11 Digimarc Corporation Context sensitive connected content
JP3566889B2 (en) * 1998-10-08 2004-09-15 株式会社ソニー・コンピュータエンタテインメント Information adding method, video game machine, and recording medium
US6477683B1 (en) 1999-02-05 2002-11-05 Tensilica, Inc. Automated processor generation system for designing a configurable processor and method for the same
US6753878B1 (en) * 1999-03-08 2004-06-22 Hewlett-Packard Development Company, L.P. Parallel pipelined merge engines
US6362822B1 (en) 1999-03-12 2002-03-26 Terminal Reality, Inc. Lighting and shadowing methods and arrangements for use in computer graphic simulations
US6421060B1 (en) 1999-03-31 2002-07-16 International Business Machines Corporation Memory efficient system and method for creating anti-aliased images
US6369830B1 (en) * 1999-05-10 2002-04-09 Apple Computer, Inc. Rendering translucent layers in a display system
US6321314B1 (en) * 1999-06-09 2001-11-20 Ati International S.R.L. Method and apparatus for restricting memory access
US6542160B1 (en) * 1999-06-18 2003-04-01 Phoenix Technologies Ltd. Re-generating a displayed image
US6260370B1 (en) * 1999-08-27 2001-07-17 Refrigeration Research, Inc. Solar refrigeration and heating system usable with alternative heat sources
US6221890B1 (en) * 1999-10-21 2001-04-24 Sumitomo Chemical Company Limited Acaricidal compositions
US6618048B1 (en) * 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US6411301B1 (en) * 1999-10-28 2002-06-25 Nintendo Co., Ltd. Graphics system interface
US6452600B1 (en) * 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
US6457034B1 (en) * 1999-11-02 2002-09-24 Ati International Srl Method and apparatus for accumulation buffering in the video graphics system
US6867779B1 (en) * 1999-12-22 2005-03-15 Intel Corporation Image rendering
US6977661B1 (en) * 2000-02-25 2005-12-20 Microsoft Corporation System and method for applying color management on captured images
US6525725B1 (en) 2000-03-15 2003-02-25 Sun Microsystems, Inc. Morphing decompression in a graphics system
US6857061B1 (en) * 2000-04-07 2005-02-15 Nintendo Co., Ltd. Method and apparatus for obtaining a scalar value directly from a vector register
US6707462B1 (en) * 2000-05-12 2004-03-16 Microsoft Corporation Method and system for implementing graphics control constructs
US7042467B1 (en) 2000-05-16 2006-05-09 Adobe Systems Incorporated Compositing using multiple backdrops
US6801202B2 (en) * 2000-06-29 2004-10-05 Sun Microsystems, Inc. Graphics system configured to parallel-process graphics data using multiple pipelines
US6717599B1 (en) * 2000-06-29 2004-04-06 Microsoft Corporation Method, system, and computer program product for implementing derivative operators with graphics hardware
US6734873B1 (en) 2000-07-21 2004-05-11 Viewpoint Corporation Method and system for displaying a composited image
US6664958B1 (en) * 2000-08-23 2003-12-16 Nintendo Co., Ltd. Z-texturing
US6639595B1 (en) * 2000-08-23 2003-10-28 Nintendo Co., Ltd. Achromatic lighting in a graphics system and method
US6636214B1 (en) * 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US6609977B1 (en) * 2000-08-23 2003-08-26 Nintendo Co., Ltd. External interfaces for a 3D graphics system
US6664962B1 (en) * 2000-08-23 2003-12-16 Nintendo Co., Ltd. Shadow mapping in a low cost graphics system
US6580430B1 (en) * 2000-08-23 2003-06-17 Nintendo Co., Ltd. Method and apparatus for providing improved fog effects in a graphics system
US7002591B1 (en) 2000-08-23 2006-02-21 Nintendo Co., Ltd. Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system
KR100373323B1 (en) 2000-09-19 2003-02-25 한국전자통신연구원 Method of multipoint video conference in video conferencing system
US6715053B1 (en) 2000-10-30 2004-03-30 Ati International Srl Method and apparatus for controlling memory client access to address ranges in a memory pool
US20020080143A1 (en) 2000-11-08 2002-06-27 Morgan David L. Rendering non-interactive three-dimensional content
US6697074B2 (en) * 2000-11-28 2004-02-24 Nintendo Co., Ltd. Graphics system interface
JP3548521B2 (en) * 2000-12-05 2004-07-28 Necマイクロシステム株式会社 Translucent image processing apparatus and method
JP3450833B2 (en) * 2001-02-23 2003-09-29 キヤノン株式会社 Image processing apparatus and method, program code, and storage medium
US6831635B2 (en) 2001-03-01 2004-12-14 Microsoft Corporation Method and system for providing a unified API for both 2D and 3D graphics objects
US7038690B2 (en) * 2001-03-23 2006-05-02 Microsoft Corporation Methods and systems for displaying animated graphics on a computing device
US20020174181A1 (en) * 2001-04-13 2002-11-21 Songxiang Wei Sharing OpenGL applications using application based screen sampling
US6919906B2 (en) * 2001-05-08 2005-07-19 Microsoft Corporation Discontinuity edge overdraw
US7162716B2 (en) 2001-06-08 2007-01-09 Nvidia Corporation Software emulator for optimizing application-programmable vertex processing
US6995765B2 (en) * 2001-07-13 2006-02-07 Vicarious Visions, Inc. System, method, and computer program product for optimization of a scene graph
US7564460B2 (en) 2001-07-16 2009-07-21 Microsoft Corporation Systems and methods for providing intermediate targets in a graphics system
US6906720B2 (en) * 2002-03-12 2005-06-14 Sun Microsystems, Inc. Multipurpose memory system for use in a graphics system
GB2392072B (en) * 2002-08-14 2005-10-19 Autodesk Canada Inc Generating Image Data
DE10242087A1 (en) 2002-09-11 2004-03-25 Daimlerchrysler Ag Image processing device e.g. for entertainment electronics, has hardware optimized for vector computation and color mixing,
US7928997B2 (en) * 2003-02-06 2011-04-19 Nvidia Corporation Digital image compositing using a programmable graphics processor
US6911984B2 (en) * 2003-03-12 2005-06-28 Nvidia Corporation Desktop compositor using copy-on-write semantics
US6764937B1 (en) * 2003-03-12 2004-07-20 Hewlett-Packard Development Company, L.P. Solder on a sloped surface
US7817163B2 (en) * 2003-10-23 2010-10-19 Microsoft Corporation Dynamic window anatomy
US7839419B2 (en) 2003-10-23 2010-11-23 Microsoft Corporation Compositing desktop window manager
US7382378B2 (en) 2003-10-30 2008-06-03 Sensable Technologies, Inc. Apparatus and methods for stenciling an image
US7053904B1 (en) * 2003-12-15 2006-05-30 Nvidia Corporation Position conflict detection and avoidance in a programmable graphics processor
US7274370B2 (en) * 2003-12-18 2007-09-25 Apple Inc. Composite graphics rendered using multiple frame buffers
US7554538B2 (en) * 2004-04-02 2009-06-30 Nvidia Corporation Video processing, such as for hidden surface reduction or removal

Also Published As

Publication number Publication date
US20050285867A1 (en) 2005-12-29
US20070257925A1 (en) 2007-11-08
AU2008207617A1 (en) 2008-09-25
AU2005262676B2 (en) 2008-11-13
EP1759381A2 (en) 2007-03-07
US7652678B2 (en) 2010-01-26
US20110216079A1 (en) 2011-09-08
AU2008207617B2 (en) 2010-09-30
US8144159B2 (en) 2012-03-27
CA2558013C (en) 2012-11-13
US20070182749A1 (en) 2007-08-09
CA2765087A1 (en) 2006-01-19
WO2006007251A3 (en) 2006-06-01
CA2765087C (en) 2013-09-03
WO2006007251A2 (en) 2006-01-19
EP1759381B1 (en) 2018-12-26
US7969453B2 (en) 2011-06-28
AU2005262676A1 (en) 2006-01-19

Similar Documents

Publication Publication Date Title
CA2558013A1 (en) Display updates in a windowing system using a programmable graphics processing unit.
EP1401212A3 (en) Method and apparatus for video deblocking
WO2005104082A3 (en) System and method for improving sub-pixel rendering of imaging data in non-striped display systems
JP4823048B2 (en) Driving device and driving method for liquid crystal display device
JP2002023707A (en) Display device
NZ505800A (en) A multi-layer display and a method for extracting depth from 2D video data
EP1494196A3 (en) Method of processing a video image sequence in a liquid crystal display panel
EP1388840A3 (en) Image display system and method
US20050162361A1 (en) Frame-shifted dynamic gamma correction method and system
EP2172923A3 (en) Display apparatus and method
EP1684527A3 (en) Apparatus and method for reducing blocking artifacts in an image display device
WO2007143511A3 (en) Apparatus and method for selectively double buffering portions of displayable content
EP1746493A3 (en) Defective pixel management for flat panel displays
JPWO2014024553A1 (en) Image processing apparatus, display apparatus, image processing method, display method, and image processing program
EP1549075A3 (en) Method of reducing block and mosquito noise (effect) in images
EP0903723B1 (en) Display device with and without anti-aliasing
EP1383314A3 (en) Video signal processing
EP1209654A3 (en) Image display method and image display apparatus
TW200725549A (en) Display and driving method thereof
US8063916B2 (en) Graphics layer reduction for video composition
US8564612B2 (en) Deep pixel pipeline
EP2672480B1 (en) Tiled viewport composition
JP2017173666A (en) Image display device and image display method
JP2022515709A (en) Methods, computer programs, and devices for generating images
EP1705558A3 (en) Method and apparatus for capturing full-screen frames

Legal Events

Date Code Title Description
EEER Examination request