US2002135587A1PendingUtilityA1

System and method for implementing accumulation buffer operations in texture mapping hardware

Priority: Oct 15, 1999Filed: Mar 18, 2002Published: Sep 26, 2002
Est. expiryOct 15, 2019(expired)· nominal 20-yr term from priority
Inventors:Ross Cunniff
G06T 15/50
40
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

The present invention is generally directed to a system and method for performing accumulation buffer operations using texture mapping hardware. In accordance with one aspect of the invention, a method is provided that operates by allocating a texture map of equal size as a display screen and copying contents of a frame buffer to the allocated texture map. The method then identifies an accumulation buffer operation and performs the accumulation buffer operation in a fragment unit. Preferably, the fragment unit includes an arithmetic logic unit (ALU) to perform high-speed mathematical operations. Finally, the method directs results of the accumulation buffer operation to the frame buffer, and copies contents of the frame buffer to the allocated texture map.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
         1 . A method for performing an accumulation buffer operation using texture mapping hardware comprising the steps of: 
 allocating a texture map of equal size as a display screen;    copying contents of a frame buffer to the allocated texture map;    identifying an accumulation buffer operation;    performing the accumulation buffer operation in a fragment unit, the fragment unit having an arithmetic logic unit (ALU);    directing results of the accumulation buffer operation to the frame buffer; and    copying contents of the frame buffer to the allocated texture map.    
     
     
         2 . The method as defined in  claim 1 , wherein the step of allocating a texture map includes generating an accumulation texture ID.  
     
     
         3 . The method as defined in  claim 2 , wherein the step of generating an accumulation texture ID is performed by using an OpenGL call of glGenTextures( ).  
     
     
         4 . The method as defined in  claim 2 , wherein the step of allocating a texture map includes the steps of binding the accumulation texture ID and making it an RGB texture of maximum possible window size, rounded up to a power of 2.  
     
     
         5 . The method as defined in  claim 4 , wherein the step of binding the accumulation texture ID is performed by using an OpenGL call of glBindTexture( ).  
     
     
         6 . The method as defined in  claim 1 , wherein the step of copying contents of a frame buffer to the allocated texture map is performed by using an OpenGL call of glCopyTexSubImage2D( ).  
     
     
         7 . The method as defined in  claim 1 , wherein the step of identifying an accumulation buffer operation includes identifying an accumulate operation.  
     
     
         8 . The method as defined in  claim 7 , wherein the step of performing the accumulation buffer operation in a fragment unit includes determining whether a transparency value is greater than zero.  
     
     
         9 . The method as defined in  claim 8 , further including the steps of establishing identity modelview and projection matrices, and setting up blending.  
     
     
         10 . The method as defined in  claim 8 , further including the step of setting up a texture state with an accumulation texture object.  
     
     
         11 . The method as defined in  claim 10 , wherein the step of setting up the texture state is performed by using an OpenGL call of GL 13 DECAL.  
     
     
         12 . The method as defined in  claim 8 , further including the step of setting up transparency using an OpenGL call of glColor4f(1, 1, 1, alpha), where alpha is the transparency value.  
     
     
         13 . In a computer graphics system having texture mapping hardware, a system for computing accumulation buffer operations, the improvement comprising using the texture graphics hardware to carryout an accumulation buffer operation in hardware.  
     
     
         14 . The system as defined in  claim 13 , wherein the texture graphics hardware is configured to perform multiplies in an accumulation buffer operation like texture mapping blend operations.  
     
     
         15 . A computer readable medium for controlling the operation of a computer graphics system to perform an accumulation buffer operation using texture mapping hardware comprising: 
 a first code segment configured to allocate a texture map of equal size as a display screen;    a second code segment configured to copy contents of a frame buffer to the allocated texture map;    a third code segment configured to identify an accumulation buffer operation;    a fourth code segment configured to perform the accumulation buffer operation in a fragment unit, the fragment unit having an arithmetic logic unit (ALU);    a fifth code segment configured to direct results of the accumulation buffer operation to the frame buffer; and    a sixth code segment configured to copy contents of the frame buffer to the allocated texture map.    
     
     
         16 . A computer system configured to execute the code segments contained on the computer readable medium as defined in  claim 15 .  
     
     
         17 . The computer readable medium as defined in  claim 15 , the first code segment is further configured to generate an accumulation texture ID.  
     
     
         18 . The computer readable medium as defined in  claim 17 , wherein the first code segment is further configured to bind the accumulation texture ID and make it an RGB texture of maximum possible window size, rounded up to a power of 2.

Join the waitlist — get patent alerts

Track US2002135587A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.