Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!olivea!samsung!think.com!zaphod.mps.ohio-state.edu!mips!cs.uoregon.edu!ogicse!milton!dali.cs.montana.edu!masscomp!calvin!mark From: mark@calvin..westford.ccur.com (Mark Thompson) Newsgroups: comp.sys.amiga.graphics Subject: Re: Graphics in Hardware Message-ID: <62059@masscomp.westford.ccur.com> Date: 10 May 91 19:15:09 GMT References: <53121@nigel.ee.udel.edu> Sender: news@masscomp.westford.ccur.com Reply-To: mark@calvin.westford.ccur.com (Mark Thompson) Organization: Concurrent Computer Corp. Westford MA. Lines: 47 In article <53121@nigel.ee.udel.edu> jleonard@pica.army.mil writes: >I am unfamiliar with Z-buffering and the Radiosity model ( but interested ). >Could some kind soul explain what these are and/or point me to some good >literature on the subjects. The first is easy. Z-buffering is perhaps the simplest of all hidden surface algorithms but did not become popular until the past several years because off its memory cost. It invovles a dedicating a chunk of memory the size of your frame buffer with a depth of at least 16bits (depending on the possible range of Z values). The idea is, when scan converting the graphics primitve to color values for each pixel, a z-value is also calculated (the distance from the view plane to the object surface at that location). This value is compared to the value previously stored at that location and if the new value is closer to the viewer, then the z-value at that location is updated and the pixel color is written to the frame buffer. If not, the calculated z-value is discarded and the rasterizer moves on to the next pixel. Ofcourse this requires that the Z-buffer be initialized before rasterization begins. Because the depth of the Z-buffer determines the precision to which the comparison can be done, the bigger the better. 32bits is not uncommon and some have gone to floating point. A typical problem case for a Z-buffer would be runway markings in a flight simulator. Although the distance from the viewer to the runway may be 1 mile, the polygon that describes the runway marking may be only 1/2 inch off the ground. This case is beyond the capabilities of a 16bit Z-buffer. The other problem with the Z-buffer is it does not handle transparency properly. Consequently, algorithms such as Carpenter's A-buffer have been implemented. For further reading on the Z-buffer, A-buffer, and other hidden surface techniques, check out "Computer Graphics, Principles and Practice" by Foley, van Dam, Feiner, & Hughes. Radiosity is a more complex topic. It basically is a method for modeling diffuse interobject light reflection using procedures based on thermal engineering models. While ray tracing yields very hard edges and specular highlights, radiosity produces more subtle lighting effects and soft lighting & shadowing that is typical of the real world. While the above mentioned text does a good job of describing a few radiosity methods, a more thorough text is the Siggraph "Radiosity" course notes as well as papers from Siggraph proceedings from the past 3 to 5 years. The course notes can only be bought at Siggraph but are available at some larger libraries. Hope this helps. %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~% % ` ' Mark Thompson CONCURRENT COMPUTER % % --==* RADIANT *==-- mark@westford.ccur.com Principal Graphics % % ' Image ` ...!uunet!masscomp!mark Hardware Architect % % Productions (508)392-2480 (603)424-1829 & General Nuisance % % % ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~