Douglas Voorhies
Hewlett-Packard
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Douglas Voorhies.
international conference on computer graphics and interactive techniques | 1994
Douglas Voorhies; Jim Foran
Surface reflections of an environment can be rendered in real time if hardware calculates an unnormalized reflection vector at each pixel. Conventional perspective-correct texture hardware can then be leveraged to draw high-quality reflections of an environment or specular highlights in real time. This fully accommodates area light sources, allows a local viewer to move interactively, and is especially well suited to the inspection of surface orientation and curvature. By emphasizing the richness of the incoming illumination rather than physical surface properties, it represents a new direction for real-time shading hardware.
international conference on computer graphics and interactive techniques | 1990
David B. Kirk; Douglas Voorhies
The Appollo DN10000VS treats graphics as an integral part of the system architecture. Graphics requirements influence the entire system design. All floating-point computations for graphics are performed by the CPU(s), while rasterizing is handled by simplified hardware having no microcode. We decided to support alpha buffering, quadratic interpolation, and texture mapping directly in hardware. This partitioning reduces the cost of a high-end workstation, without sacrificing high rendering quality and performance. This paper describes some of the design trade-offs which led to the final system design.
international conference on computer graphics and interactive techniques | 1988
Douglas Voorhies; David B. Kirk; Olin Lathrop
Graphics can be implemented as a virtual system resource. This abstraction appears to each application on a multiprocessing workstation as a dedicated rendering and display pipeline. A variety of simple mechanisms support the simultaneous display of different types of images and eliminate the need for low-level device driver software. They permit applications to embed graphics instructions directly in their code. The abstraction allows for cleaner software design, higher performance, and effective concurrent use of the display by several applications.
Graphics Gems II | 1991
Douglas Voorhies
Publisher Summary This chapter focuses on space-filling curves and a measure of coherence. Some space- filling curves can exploit coherence in two dimensions despite a range of object area sizes. As fractals, they are self-similar at multiple resolutions. Thus, if they do a good job of visiting all the pixels corresponding to a particular object area at one scale, then they may have this advantage for much larger or smaller object areas. As topologically continuous curves, areas visited always are adjacent. Peano curves are recursive boustrophedonic patterns. They snake back and forth at multiple recursion levels, filling the plane. Because each pattern enters and exits from opposite rectangle corners, they implicitly use serpentines with an odd number of swaths, a minimum of three. Both the Peano and Hilbert curves far exceed the coherence = 1.00 measure of conventional scanline traversal. The Hilbert curve appears superior, and is easier to generate. Better performance from a real renderer can be expected simply by choosing either of these alternative traversal sequences.
IEEE Computer Graphics and Applications | 1990
Olin Lathrop; David B. Kirk; Douglas Voorhies
A simple method is presented for eliminating most pixel-positioning errors when rendering lines and polygons with J.E. Bresenhams algorithm (see IBM Syst. J., vol.4, no.1, p.25-30 (1965)). The method affects only the calculation of the initial values for Bresenhams vector-generating algorithm. It does not alter the actual vector-generating algorithm, requiring only inter arithmetic to find the next pixel in a vector. The method eliminates all dropouts and virtually all overlaps between adjacent polygons whose edges lie on the same line. This eliminates the need to grow polygons to avoid dropout and opens the possibility of drawing surfaces composed of adjacent polygons with read modify/write pixel operations such as add or alpha buffering. It is shown that most rendering artifacts of todays display controllers ultimately result from pixel-positioning errors, not insufficient z-buffer resolution.<<ETX>>
Graphics Gems II | 1991
Douglas Voorhies; David B. Kirk
Publisher Summary This chapter analyzes ray-triangle intersection using binary recursive subdivision. It examines the problem of determining if a line segment and a triangle intersect, and if so, calculating the XYZ coordinates of that intersection, and the corresponding U, V triangle location. The chapter highlights that to make the solution effective in both hardware and software, the number of calculations (especially multiplications) must be minimized, with more difficult operations such as divides, roots, and transcendentals avoided entirely. Integer arithmetic is preferable to floating point, again to permit efficient hardware implementation. The 3D intersection problem is decomposed into a series of 1D intersection problems: along the ray, along the triangle sides, and along an axis. The U, V parameters are determined partially as a side effect of the intersection calculation. There are three steps in total: (1) finding the intersection of the ray with the plane of the triangle; (2) determining if that point lies inside or outside of the triangle itself; and (3) completing the computation of the intersection points triangle U, V parameters.
Archive | 1991
Olin Lathrop; Douglas Voorhies; David B. Kirk
Archive | 2001
John Erik Lindholm; Simon Moy; Kevin Dawallu; Mingjian Yang; John S. Montrym; David B. Kirk; Paolo E. Sabella; Matthew N. Papakipos; Douglas Voorhies; Nicholas J. Foskett
Archive | 2006
Walter R. Steiner; Franklin C. Crow; Craig M. Wittenbrink; Roger L. Allen; Douglas Voorhies
Archive | 1995
Douglas Voorhies; James Foran