scispace - formally typeset
Search or ask a question

Showing papers in "ACM Transactions on Graphics in 1996"


Journal ArticleDOI
TL;DR: A method for approximating polyhedral objects to support a time-critical collision-detectional algorithm that maintains its real-time performance as objects become more complicated, even as they exceed previouslyreported complexity levels by a factor of more than 10.
Abstract: This article presentsa method for approximatingpolyhedralobjects to support a time-critical collision-detectionalgorithm. The approximationsare hierarchies of spheres, and they allow the time-critical algorithm to progressivelyrefine the accuracy of its detection, stopping as needed to maintain the real-time performanceessential for interactive applications.The key to this approachis a preprocessthat automaticallybuilds tightly fitting hierarchies for rigid and articulatedobjects.The preprocessuses medial-axis surfaces, which are skeletal representations of objects. These skeletonsguide an optimizationtechniquethat gives the hierarchies accuracy properties appropriate for collision detection. In a sample application, hierarchies built this way allow the time-criticalcollision-detectionalgorithmto have acceptableaccuracy, improving significantly on that possible with hierarchies built by previous techniques. The performanceof the time-critical algorithmin this application is consistently 10 to 100 times better than a previous collision-detection algorithm, maintaining low latency and a nearIy constant frame rate of 10 frames per second on a conventional graphics workstation. The time-critical algorithm maintains its real-time performanceas objects become more complicated, even as they exceed previouslyreported complexitylevels by a factor of more than 10.

564 citations


Journal ArticleDOI
TL;DR: The paradigm of simulated annealing is applied to the problem of drawing graphs “nicely,” and the algorithm deals with general undirected graphs with straight-line edges, and employs several simple criteria for the aesthetic quality of the result.
Abstract: The paradigm of simulated annealing is applied to the problem of drawing graphs “nicely.” Our algorithm deals with general undirected graphs with straight-line edges, and employs several simple criteria for the aesthetic quality of the result. The algorithm is flexible, in that the relative weights of the criteria can be changed. For graphs of modest size it produces good results, competitive with those produced by other methods, notably, the “spring method” and its variants.

536 citations


Journal ArticleDOI
TL;DR: Two experiments show that motion cues combined with stereo viewing can substantially increase the size of the graph that can be preceived, and structured 3D motion and stereo viewing both help in understanding, but that the kind of motion is not particularly important.
Abstract: This article concerns the benefits of presenting abstract data in 3D. Two experiments show that motion cues combined with stereo viewing can substantially increase the size of the graph that can be preceived. The first experiment was designed to provide quantitiative measurements of how much more (or less) can be understood in 3D than in 2D. The 3D display used was configured so that the image on the monitor was coupled to the user's actual eye positons (and it was updated in real-time as the user moved) as well as bring in stereo. Thus the effect was like a local “virtual reality” display located in the vicinity of the computer monitor. The results from this study show that head-coupled stereo viewing can increase the size of an abstract graph that can be understood by a factor of three; using stereo alone provided an increase by a factor of 1.6 and head coupling along produced an increase by a factor of 2.2. The second experiment examined a variety of motion cues provided by head-coupled perspective (as in virtual reality displays), head-guided motion and automatic rotation, respectively, both with and without stereo in each case. The results show that structured 3D motion and stereo viewing both help in understanding, but that the kind of motion is not particularly important; all improve performance, and all are more significant than stereo cues. These results provide strong reasons for using advanced 3D graphics for interacting with a large variety of information structures.

403 citations


Journal ArticleDOI
TL;DR: A method for defining a probability density function over a set of Luminaires is presented that allows the direct lighting calculation to be carried out with a number of sample points that is independent of the number of luminaires.
Abstract: In a distributed ray tracer, the sampling strategy is the crucial part of the direct lighting calculation. Monte Carlo integration with importance sampling is used to carry out this calculation. Importance sampling involves the design of integrand-specific probability density functions that are used to generate sample points for the numerical quadrature. Probability density functions are presented that aid in the direct lighting calculation from luminaires of various simple shapes. A method for defining a probability density function over a set of luminaires is presented that allows the direct lighting calculation to be carried out with a number of sample points that is independent of the number of luminaires.

251 citations


Journal ArticleDOI
TL;DR: A program implemented using a naive substitution of floating-point arithmetic for real arithmetic can fail, since geometric primitives depend upon sign-evaluation and may not be reliable if evaluated approximately.
Abstract: Geometric algorithms are usually described assuming that arithmetic operations are performed exactly on real numbers. A program implemented using a naive substitution of floating-point arithmetic for real arithmetic can fail, since geometric primitives depend upon sign-evaluation and may not be reliable if evaluated approximately. Geometric primitives are reliable if evaluated exactly with integer arithmetic, but this degrades performance since software extended-precision arithmetic is required.

141 citations


Journal ArticleDOI
TL;DR: Experimental evidence shows that popular supersampling patterns have discrepancies with better asymptotic behavior than random sampling, which is not inconsistent with theoretical bounds on discrepancy.
Abstract: Patterns used for supersampling in graphics have been analyzed from statistical and signal-processing viewpoints. We present an analysis based on a type of isotropic discrepancy—how good patterns are at estimating the area in a region of defined type. We present algorithms for computing discrepancy relative to regions that are defined by rectangles, halfplanes, and higher-dimensional figures. Experimental evidence shows that popular supersampling patterns have discrepancies with better asymptotic behavior than random sampling, which is not inconsistent with theoretical bounds on discrepancy.

96 citations


Journal ArticleDOI
TL;DR: An algorithm is provided that generates an appropriate “rendering sequence” of commands for any given mesh, and it is shown that no algorithm can do better, that is, inline-equation is a lower bound.
Abstract: We investigate architechural schemes, generalizing that of existing graphics engines, supporting fast rendering of traingle meshes. A mesh defined on n vertices is rendered by sending vertices down a graphics pipeline, after which they are pushed on a stack to by popped when no longer needed. Only individual traingles whose vertices are present in the stack may be rendered. The storage cost of the mesh rendering is the size of the stack required to store mesh vertices during the rendering process. This may be significantly less than n. The time cost of the mesh rendering is the number of vertices sent down the graphics pipeline. If a large enough stack is available, it usuffices to send each vertix once. If only a small stack is available, some vertices may have to be sent more than once, so a time/space tradeoff exists. With our architecture, stack of size O(√n) is sufficient to render any triangle mesh defined on n vertices, such that each vertex is sent only once through the graphics pipeline (time cost = n). We provide an algorithm that generates an appropriate “rendering sequence” of commands for any given mesh. Moreover, we show that no algorithm can do better, that is, Ω(√n) is a lower bound. Some n-vertex meshes may be rendered using a stack whose size is significantly less than O(√n). An algorithm generating a minimum-time rendering sequence rquiring the minimum stack size is an open question. We provide an approximation: if it is theoretically possible to render a triangle mesh is minimum time with a stack of size S, our algoithm generates a minimum-time rendering sequence requiring a stack of size no larger than 2S log3/2n. If only a stack of size k is available, we provide an algorithm generating a rendering sequence requiring a stack of size no larger than k, such that at most n(1+c/k) vertices must be sent through the pipeline, for some constant c.

85 citations


Journal ArticleDOI
TL;DR: It is shown how importance-driven refinement and a wavelet basis can be combined to provide an efficient solution to the global illumination problem with glossy and diffuse reflections.
Abstract: We show how importance-driven refinement and a wavelet basis can be combined to provide an efficient solution to the global illumination problem with glossy and diffuse reflections. Importance is used to focus the computation on the interactions having the greatest impact on the visible solution. Wavelets are used to provide an efficient representation of radiance, importance, and the transport operator. We discuss a number of choices that must be made when constructing a finite element algorithm for glossy global illumination. Our algorithm is based on the standard wavelet decomposition of the transport operator and makes use of a four-dimensional wavelet representation for spatially and angularly varying radiance distributions. We use a final gathering step to improve the visual quality of the solution. Features of our implementation include support for curved surfaces as well as texture-mapped anisotropic emission and reflection functions.

68 citations


Journal ArticleDOI
TL;DR: Though only slightly more complicated to implement than the widely used box prefiltering method, quadraturePrefiltering can generate images with much less visible aliasing artifacts, and renders very high quality images at reasonable cost.
Abstract: This article introduces quadrature prefiltering, an accurate, efficient, and fairly simple algorithm for prefiltering polygons for scanline rendering. It renders very high quality images at reasonable cost, strongly suppressing aliasing artifacts. For equivalent RMS error, quadrature prefiltering is significantly faster than either uniform or jittered supersampling. Quadrature prefiltering is simple to implement and space-efficient; it needs only a small two-dimensional lookup table, even when computing nonradially symmetric filter kernels. Previous algorithms have required either three-dimensional tables or a restriction to radially symmetric filter kernels. Though only slightly more complicated to implement than the widely used box prefiltering method, quadrature prefiltering can generate images with much less visible aliasing artifacts.

29 citations


Journal ArticleDOI
TL;DR: This article is concerned with creating more realistic images of 3D scenes which are moving relative to the viewer at such high speeds that the propagation delay of light signals and other relativistic effects can not be neglected.
Abstract: This article is concerned with creating more realistic images of 3D scenes which are moving relative to the viewer at such high speeds that the propagation delay of light signals and other relativistic effects can not be neglected. Creating images of 3D scenes in relativistic motion might have important applications to science-fiction films, computer games, and virtual environments. We shall discuss the following problems: (1) how to determine the visual appearance of a rapidly moving object, (2) how to determine the apparent radiance of a scene point on a moving object, (3) how to determine the incident irradiance at a scene point coming from a moving light source, (4) how to determine the color of a rapidly moving object, and (5) how to generate shadows when there are relative motions between the viewer, the scenes, and the light sources. Detailed examples are also given to show the result of shading with the relativistic effects taken into account.

26 citations


Journal ArticleDOI
TL;DR: An algorithm is introduced that alleviates the difficulties in accurately rendering the surfaces directly and can be combined with a fast curve-rendering method tomakesurface rendering without polygonal approximation practical.
Abstract: Freeform surface rendering is traditionally performed by approximating the surface with polygons and then rendering the polygons. This approach is extremely common because of the complexity in accurately rendering the surfaces directly. Recently several papers presented methods that render surfaces as sequences ofisocurves. These methods each have deficiencies in their ability to guarantee a complete coverage of the rendered surface, in their ability to prevent processing the same pixel multiple times, or in their ability to produce an optimal surface coverage under some prescribed norm. In this article, an algorithm is introduced that alleviates the difficulties in all these areas. This algorithm can be combined with a fast curve-rendering method tomakesurface rendering without polygonal approximation practical.

Journal ArticleDOI
TL;DR: Direct interactive manipulation of 3D objects is a highly desirable but not yet fully realized feature that can make the use of a modeling system more intuitive and convenient.
Abstract: Direct interactive manipulation of 3D objects is a highly desirable but not yet fully realized feature that can make the use of a modeling system more intuitive and convenient. Two kinds of manipulation may be identified: positioning and sculpting. Positioning refers to the placement of objects in relation to each other within a common scene. Sculpting refers to the arbitrary deformation of object shapes.

Journal ArticleDOI
TL;DR: A novel yet intuitively simple approach to directly determine the pose of a three-dimensional object from 3D data is described, which is shown to be robust, computationally efficient, and applicable to a variety of problems.
Abstract: The orientation, or pose, of an object is a fundamental property that helps to define the geometrical relationship between the object and its environment. In addition, knowledge of object orientation can also facilitate interpretive and decision-making tasks in a variety of practical domains, including industrial, meteorological, and medical applications. Determining object pose, however, remains an open research question in the fields of graphics and visualization. This article describes a novel yet intuitively simple approach, which we call topological goniometry, to directly determine the pose of a three-dimensional object from 3D data. The topology of interest is that of two-sided surfaces in a three-manifold, and includes objects whose shaped are unaffected by elastic transformations. Algorithmically, topological goniometry is composed of the following major steps. The first analyzes the global topology in order to generate a distribution of 3D coordinate triplets in the proximity of the desired pose axis. Using this set of 3D points, that second step then invokes a “3D Walk” algorithm that considers the local topology to produce a generalized curve representing an estimate of the object's axis of pose. The resultant pose axis is thus not constrained to lie along a straight line but can be generalized 3D curve. The methods are illustrated with a variety of synthetically created models that exhibit duct-like shapes, and are further tested by introducting noise as well as deformations to these models. The approach is also applied to a number of real discrete data obtained from meteorological and medical domains. The results suggest that the appproach is applicable to both real and synthetic datasets and is shown to be robust, computationally efficient, and applicable to a variety of problems. The approach can incorporate context- or application-dependent information about the object of interest by using a set of constraints that guide the process of orientation determination. This article describes the approach, its implementation, and the results obtained with numerous applications.

Journal ArticleDOI
William Louis Luken1, Fuhua Cheng
TL;DR: Three methods for evaluating the surface coordinates, first derivatives, and normal vectors of a NURB surface are compared and an improved method for computing derivatives by knot insertion is presented.
Abstract: Three methods for evaluating the surface coordinates, first derivatives, and normal vectors of a NURB surface are compared. These methods include forward differencing, knot insertion, and a tow-stage Cox-de Boor technique. The computational complexity of each of these techniques is analyzed and summarized. The use of Hermite functions is shown to yield a poor approximation for the shading functions of a NURB surface. An improved method for computing derivatives by knot insertion is presented. An efficient algorithm for computing the foward difference matrix and a method for using foward differencing to compute the first derivatives of a NURB surface are also presented.

Journal ArticleDOI
TL;DR: Both a script system to represent spline structures and an interactive system for editing drawings while automatically, maintaining their topological structure are presented.
Abstract: This paper describes an augmentation to the spline concept to account for topological relations between different spline curves. These topological relations include incidence relations, constraining the extremes of spline curves to other spline curves, and also more general geometric relations, for example, involving the tangents of spline curves in their extremes. To maintain these incidence relations, some spline curves may have to be transformed (translated, rotated, scaled), or even deformed (i.e., the shape of the curve may change) as a result of modifying other spline curves. A data structure and algorithms are given to implement the propagation of these transformations and deformations.Based on the augmented spline concept, to be called sticky splines, both a script system to represent spline structures and an interactive system for editing drawings while automatically, maintaining their topological structure are presented.