TL;DR: A fast and simple voxel traversal algorithm through a 3D space partition is introduced that is a variant of the DDA line algorithm and allows for simpler traversal at the expense of more voxels.
Abstract: A fast and simple voxel traversal algorithm through a 3D space partition is introduced. Going from one voxel to its neighbour requires only two floating point comparisons and one floating point addition. Also, multiple ray intersections with objects that are in more than one voxel are eliminated. Introduction In recent years, ray tracing has become the algorithm of choice for generating high fidelity images. Its simplicity and elegance allows one to easily model reflection, refraction and shadows. Unfortunately, it has a major drawback: computational expense. The prime reason for this is that the heart of ray tracing, intersecting an object with a ray, is expensive and can easily take up to 95% of the rendering time. Unless some sort of intersection culling is performed, each ray must intersect all the objects in the scene, a very expensive proposition. There are two general strategies for intersection culling: hierarchical bounding volumes 2, 3, 4 and space partitioning. 6, 7, 8 The general idea of the first approach is to envelop complicated objects that take a long time to intersect with simpler bounding volumes that are much easier to intersect, such as spheres or boxes. Before intersecting the complicated object, the bounding volume is first intersected. (Actually, it is not a full intersection test; all we care about is if the ray hits the bounding volume, not where). If there is no intersection with the bounding volume, there is no need to intersect the complicated object, thus saving time. For a complicated scene made up of many objects, a bounding volume is placed around the entire scene with each object also containing a bounding volume. If an object is made up of several parts each of these parts can also have a bounding volume. We thus can built a tree of bounding volumes, with each node containing a bounding volume that envelops its children. Objects within a subtree are intersected only if their parent node bounding volume is intersected by the ray. In this manner, the amount of actual intersections are significantly reduced. Of course, we now hav e to spent time intersecting bounding volumes but this is more than offset by the reduced total intersections. The second approach of reducing intersections is to partition space itself into regions or voxels. Each voxel has a list of objects that are in that voxel. If an object spans several voxels it is in more than one list. When a ray is shot, we first look into the voxel in which it originates. If it hits any objects in the starting voxel’s list, the intersections are sorted and the closest one is retained. If the intersection is in the current voxel there is no need to intersect any other objects as we have found the closest intersection. If no intersection is found in the current voxel or the object list is empty, we follow the ray into a neighbouring voxel and check its object list. We continue until either we find an intersection or we completely traverse the space partition. Since we intersect objects roughly in the order as they occur along the ray and trivially reject objects far from the ray, the number of intersections that need to be performed is vastly reduced. There are two popular space partition schemes: octrees by Glassner, where voxels are of different sizes, and constant size voxel partitioning (hereafter called a grid partition) by Fujimoto et. al. 8 The first conserves space but makes traversal difficult while the latter allows for simpler traversal at the expense of more voxels. In this paper, we introduce a fast and simple incremental grid traversal algorithm. Like Fujimoto et. al., 8 it is a variant of the DDA line algorithm. However, instead of basing it on the simple DDA (Fujimoto et. al.), in which an unconditional step along one axis is required, ours has no preferred axis. This considerably simplifies the inner loop and allows for easy testing of an intersection point to see if it is in the current voxel. Along with the the new traversal algorithm, we introduce a technique to eliminate multiple intersections when an object spans several voxels. This technique can be used with all space subdivision algorithms with minimum modifications. The New Traversal Algorithm Let us derive the new traversal algorithm. We consider the two dimensional case first; the extension to three dimensions is straightforward. Consider figure 1:
TL;DR: A lighting model that takes into account the effects of scattering by suspended particles is presented and a method of computing the colors of the sun and sky, for any sun position above the horizon, is derived from the lighting model.
Abstract: The interaction of light with particles suspended in the air is the cause of some beautiful effects. Among these effects are the colors of the sunset, the blue of the sky, and the appearance of a scene in fog. A lighting model that takes into account the effects of scattering by suspended particles is presented. A method of computing the colors of the sun and sky, for any sun position above the horizon, is derived from the lighting model. The model is also suitable for rendering fog under general lighting conditions. As an example of the use of the model for rendering fog, the special case of fog lit by the sun, without shadows, is considered.
TL;DR: An adaptive forward differencing algorithm is presented for rapid rendering of cubic curves and bicubic surfaces and involves a simple linear transformation on the coefficients of the curve which can be accomplished with shifts and adds.
Abstract: An adaptive forward differencing algorithm is presented for rapid rendering of cubic curves and bicubic surfaces. This method adjusts the forward difference step size so that approximately one pixel is generated along an ordinary or rational cubic curve for each forward difference step. The adjustment involves a simple linear transformation on the coefficients of the curve which can be accomplished with shifts and adds. This technique combines the advantages of traditional forward differencing and adaptive subdivision. A hardware implementation approach is described including the adaptive control of a forward difference engine. Surfaces are rendered by drawing many curves spaced closely enough together so that no pixels are left unpainted. A simple curve anti-aliasing algorithm is also presented in this paper. Anti-aliasing cubic curves is supported via tangent vector output at each forward difference step. The adaptive forward differencing algorithm is also suitable for software implementation.
TL;DR: A graphics processor architecture which can be configured with an arbitrary number of identical processors operating in parallel, substantially simplifying software development and allowing complex rendering functions to take advantage of the multiple processors.
Abstract: Interactive 3D graphics applications require significant arithmetic processing to handle complex models, particularly if realistic rendering techniques are used. Current semiconductor technology cannot provide the necessary performance without some form of multi-processing.This paper describes a graphics processor architecture which can be configured with an arbitrary number of identical processors operating in parallel. Each of the parallel processors can be programmed identically as if it were a single processor system, substantially simplifying software development and allowing complex rendering functions to take advantage of the multiple processors. The architecture described is able to achieve extremely high performance while allowing the price/performance of the system to be optimized for a given application.Techniques are described for handling graphics command distribution, sequencing of commands which must be processed in order, parallel processing of graphics primitive picking, and handling inquiry (read-back) commands.
TL;DR: An adaptive forward differencing algorithm is presented for rapid rendering of cubic curves and bicubic surfaces and adjusts the forward difference step size so that approximately one pixel is added to the total number of pixels.
Abstract: An adaptive forward differencing algorithm is presented for rapid rendering of cubic curves and bicubic surfaces. This method adjusts the forward difference step size so that approximately one pixe...
TL;DR: This article surveys most of the major issues to be dealt with when generating realistic images, and covers papers up to December 1985, with a discussion of modeling primitives.
Abstract: This article surveys most of the major issues to be dealt with when generating realistic images, and covers papers up to December 1985. It begins with an overview of the rendering process and a quick review of visible-surface-determination algorithms. Then, in more detail, it discusses shading, antialiasing, texture mapping, shadows, and optical effects and closes witha discussion of modeling primitives.
TL;DR: An environment which allows experimenting both with the basic modelling and rendering operations and with the process structure of the display system, making it easy to experiment with different architectures and display processes is described.
Abstract: New modelling primitives and new rendering techniques are appearing at a rapid rate. To be able to implement and evaluate them easily, we need a very flexible display environment. We describe an environment which allows experimenting both with the basic modelling and rendering operations and with the process structure of the display system.The desired operations are implemented in nodes, coded in a traditional programming language, which can then be structured into arbitrary directed acyclic graphs. These nodes are all "plug compatible", and pass streams of appels, which are generalized pixels, that is data structures containing information necessary for pixel evaluation. In addition, synchronization parameters are used to allow the expansion or the reduction of the stream of appels.This approach allows the assembly of new display systems from existing modules without coding, making it easy to experiment with different architectures and display processes. Algorithm designers are also able to test an algorithm at any point of the display process with a minimum of new coding.We describe an implementation of the scheme with a library of nodes written in C and the assembly of the graphs made through the use of the directory manipulation tools provided under UNIX™. We give examples of the uses of the implementation to build basic nodes, variations in compositing and texture mapping and special-purpose display systems.
TL;DR: Applications of FRAMES have ranged from reconstruction of neurons from serial sections to rendering of antialiased octree objects with subpixel detail.
Abstract: FRAMES is a set of flexible software tools, developed for the UNIX programming environment, that can be used to generate images and animation of 3D scenes. In FRAMES, each stage of the image-rendering pipeline is assigned to a UNIX System filter. The following is a typical FRAMES pipe sequence where each filter performs a task implied by its name:cat scene.frm|euclid|mover|shade|camera|abufFRAMES was designed to be easy to use, to permit flexible experimentation with new ideas in image rendering and geometric modeling, to allow distribution of different parts of the rendering pipeline to different processors, and to specify images in a common format for display on a variety of devices.The user communicates with FRAMES via a command language. This language is extended whenever a software developer needs to incorporate a new idea into the system by adding new commands. Data flowing through the pipeline is modified by a collection of filter programs and passed through the pipe in text or binary format.The modular and pipe-based nature of FRAMES allows for multi/parallel processor implementations and device independence. FRAMES has generated images on a local-area network of minicomputers (each filter runs on a different processor) and on a 64-processor hypercube machine (one filter runs on 64 processors). Applications of FRAMES have ranged from reconstruction of neurons from serial sections to rendering of antialiased octree objects with subpixel detail.
TL;DR: High performance graphics workstations are used to visualize the fluid flow dynamics obtained from supercomputer solutions of computational fluid dynamic programs by interacting with the supercomputer in a distributed computing mode.
Abstract: High performance graphics workstations are used to visualize the fluid flow dynamics obtained from supercomputer solutions of computational fluid dynamic programs. The visualizations can be done independently on the workstation or while the workstation is connected to the supercomputer in a distributed computing mode. In the distributed mode, the supercomputer interactively performs the computationally intensive graphics rendering tasks while the workstation performs the viewing tasks. A major advantage of the workstations is that the viewers can interactively change their viewing position while watching the dynamics of the flow fields. An overview of the computer hardware and software required to create these displays is presented. For complex scenes the workstation cannot create the displays fast enough for good motion analysis. For these cases, the animation sequences are recorded on video tape or 16 mm film a frame at a time and played back at the desired speed. The additional software and hardware required to create these video tapes or 16 mm movies are also described. Photographs illustrating current visualization techniques are discussed. Examples of the use of the workstations for flow visualization through animation are available on video tape.
TL;DR: In this paper, the British Geological Survey has completed the conversion of both aeromagnetic and gravity survey records to a digital data base and the optimum method is a combination of directional first-derivative filtering to impart the illusion of side illumination, with spectral colouring of the 8-bit range of DN.
Abstract: The British Geological Survey has completed the conversion of both aeromagnetic and gravity survey records to a digital data base. This paper examines some of the uses of the aeromagnetic data base. Rendering digitized aeromagnetic data as a rectangular grid of interpolated anomaly values allows regional variations in subsurface magnetization to be displayed as images rather than contoured maps. Images of the magnetic field are more appropriate for visual interpretation and can be enhanced using standard methods of digital image processing. The optimum method is a combination of directional first-derivative filtering to impart the illusion of side illumination, with spectral colouring of the 8-bit range of DN, the former being used to modulate the brightness of the latter. As well as many of the known regional magnetic features of the Solway Basin, this method highlights several trends that were unsuspected.
TL;DR: A case study from the field of meteorology is analyzed, which shows how techniques for representing four-dimensional data sets can easily be extended to display phenomena in other disciplines.
Abstract: As technological advances give rise to increasingly more powerful computers, applied mathematicians are able to simulate phenomena of considerable complexity using nurmerical models. One of the problems is how to transform the volminuous output data from a numerical form to a visual one, which is easier for humans to comprehend. This article analyzes a case study from the field of meteorology. A weather simulation, program produces numerical output which defines the values of several variables as functions of the three spatial parameters and time. The output of this model is then used as the input to our grphic rendering system, which displays these complex data sets using stereo animation, employing novel techniques to add realism in the animation sequences. We take advantages of the special geometrical configuration to reduce the computation time by about two orders of magnitude. The value our approach is that our techniques for representing four-dimensional data sets can easily be extended to display phenomena in other disciplines.
TL;DR: A verbatim rendering of the improvised closing lecture, with some slight modifications in order to retain the original spirit in the written form.
Abstract: A verbatim rendering of the improvised closing lecture, with some slight modifications in order to retain the original spirit in the written form (reported by E. Smith).
TL;DR: In this paper, an adaptive forward differencing (AFD) apparatus was proposed for rendering curves, where calculated x, y values are increased or decreased in order to create values which correspond to the next pixel of the display CRT, such that curves of substantially one pixel increments are continuously and uniformly generated.
Abstract: An adaptive forward differencing apparatus wherein, when rendering curves, calculated x, y values are increased or decreased in order to create values which correspond to the next pixel of the display CRT, such that curves of substantially one pixel increments are continuously and uniformly generated. The apparatus of the present invention also provides circuitry for generating coordinates of display elements which approximate an ideal vector and to define curves, vectors or objects within maximum and minimum coordinates of the CRT display. The present invention also provides efficient circuitry for computing the value of 1/w of the homogenous coordinate w.
TL;DR: A computerized alarm system for an automobile, which is also capable of rendering the vehicle useless to anyone making a forced entry is disclosed in this article, which includes a computer panel which is equipped with a keyboard for entering a secret code.
Abstract: A computerized alarm system for an automobile, which is also capable of rendering the vehicle useless to anyone making a forced entry is disclosed. The invention includes a computer panel which is equipped with a keyboard for entering a secret code. The alarm system of the present invention further includes a voice synthesizer which verbally warns intruders not to take further action in an attempt to deter theft or vandalism.
TL;DR: A computer program (SECTION) is presented which allows for the three-dimensional reconstruction of serial cross sections through biological materials and has editing capabilities which allow different combinations of anatomical features to be shown in neutral gray outline or interconnected by colored lines.
Abstract: A computer program (SECTION) is presented which allows for the three-dimensional reconstruction of serial cross sections through biological materials. The program provides a numerical analysis of perimeter length and transverse area of each anatomical feature designated in a cross section, as well as surface area and volume computations for features that pass from one section to another. In addition to rotating and tilting the 3-D reconstruction in any desired orientation, the program has editing capabilities which allow different combinations of anatomical features to be shown in neutral gray outline or interconnected by colored lines. COMPUTER GRAPHICS represents a convenient tool for rendering conventional serial sections in three-dimensions (Delozier et al., 1987). In addition, calculations on surface areas and volumes of anatomical features in cross sections and serial cross sections are equally useful (Weibel, 1979; Calkin, Gibson, and Nobel, 1985; Meicenheimer, 1986). We present a computer program, SECTION, that was specifically designed to deal with serial sections through biological materials in both a graphics and numerical mode. SECTION contains a "user-friendly" interface to gain acceptance in a teaching environment. The program operates at full potential on an IMB PC-XT or compatible hardware and is closely tied to the IBMPC Graphics Toolkit. However, SECTION can be easily modified to use another graphics subroutine library from PASCAL. Consequently, SECTION and the necessaary hardware are within the space and economic reach of most biological laboratories interested in anatomical and/or morphological research projects. The program provides 1) three-dimensional reconstructions (currently, as many as nine separate categories of anatomical features can be disI Received for publication 16 February 1987; revision accepted 6 May 1987. We thank Dr. Dominick J. Paolillo, Jr. (Plant Biology, Cornell University), for providing us with plant sections used to demonstrate the capabilities of our program, and Mr. Kent E. Loeffler (staff photographer for Plant Pathology, Cornell University) for printing the color negatives used in Fig. 1-8. Funding for this research was provided by NSF grant BSR-8320272 and Cornell University Project Ezra #4. Funding for preparing and reproducing the color graphics in Fig. 1-8 was provided by a grant from the IBM Corporation. played); 2) numerical analyses of perimeter length, transverse and surface area, and volume; and 3) versatile editorial formats that permit the user to specify the features displayed, connected through successive cross sections, or projected onto two-dimensional surfaces (as for example, conventional phyllotactic "stick diagrams"). SECTION was written in PASCAL using the IBM/Microsoft Pascal Compiler and the IBM Graphics Toolkit. An ideal system configuration for using SECTION consists of an IBMPC with 512K of memory, math co-processor, hard-disk storage, and an enhanced graphics board. A digitizing pad is required for the recording of section data and a color plotter may be used for hard-copy output. The system may be modified for the use of other input and output peripherals with little effort. The program is available on floppy disk (upon request to the senior author) along with a user's manual. These items will be made available at minimum cost. MATERIALS AND METHODS-I. Preparation of serial sections -Freehand sections through the nodal and internodal anatomy of Coleus blumei Benth. were prepared, wet-mounted on slides, and traced by means of camera lucida. Coleus was selected because it is a favored organism in teaching and research contexts, and because its anatomy has been explored in great detail. Freehand sections were used in this study because they represent the level of minimal information that could be anticipated to be supplied by a student or novice research assistant. Accordingly, the reconstructions that
TL;DR: An interpolation scheme for filling the space between the contours in two successive slices to identify a force field acting on one contour and trying to distort it to be like the other contour is proposed.
Abstract: In many scientific and technical endeavors, a three-dimensional (3-D) object must be reconstructed from serial cross-sections, either to aid in the comprehension of the object's structure or to facilitate its automatic manipulation and analysis. If the cross-sections are not closely spaced, interpolation is needed to recapture the appearance of the embedded 3-D object. In this paper, we propose an interpolation scheme for filling the space between the contours in two successive slices. The essential idea is to identify a force field acting on one contour and trying to distort it to be like the other contour. The major advantages of this method are its superior capabilities in handling the branching problem and making use of the graphics rendering method for solid objects composed of slices of voxels. Several experiments were conducted to demonstrate the interpolation method using both synthetic and real data.
TL;DR: Methods for generating anti-aliased reflections and refractions distorted by normal vector perturbation (bump-mapping) are developed to simulate the appearance of rippled water surfaces.
Abstract: The method of ray tracing with cones is used to area sample objects for properly filtered rendering. Methods for generating anti-aliased reflections and refractions distorted by normal vector perturbation (bump-mapping) are developed to simulate the appearance of rippled water surfaces. The sampling aperture of the cones is distorted to anti-alias the reflections and refractions properly. A calculated texture function is used as a diffusion map for transparent surfaces to simulate the visual effect of diffuse, soft-shadowed cloud layers.
TL;DR: The architecture and operation of the Triangle is described, a pipelined, parallel multiprocessor architecture for the computation and rendering of line segments, conic sections, spline curves, triangular patch surfaces, and tensor product surfaces based on a generalization of de Casteljau's algorithm.
Abstract: : This paper describes the architecture and operation of the Triangle, a pipelined, parallel multiprocessor architecture for the computation and rendering of line segments, conic sections, spline curves, triangular patch surfaces, and tensor product surfaces. Based on a generalization of de Casteljau's algorithm for computing points on Bezier curves, the Triangle can be used as an accelerator to dramatically enhance the performance of standard graphics workstations. Although there is a wide spectrum of possible implementations, we estimate that a custom VLSI implementation that is currently being designed will be capable of peak rates well in excess of one million points of evaluation per second. Assuming a Motorola 68020 host, such a processor should be capable of completely recomputing 65 bicubic patches in real-time, at a density of 1,000 points per patch. Keywords: B-splines; Computer-aided geometric design; Curves and surfaces; Graphics hardware. (KR)
TL;DR: The experience of using computer aided architectural design tools in a second year graduate studio is presented and raised some interesting pedagogical questions, which are also discussed.
Abstract: The experience of using computer aided architectural design tools in a second year graduate studio is presented. These tools had to be developed as the search for design solutions evolved. The computer has been used for the exploration and generation of architectural forms and very little as a drafting/rendering machine. The generative algorithms were based on fractal geometries, arabesque ornamentations, DNA/RNA biological processes' etc. The design problem was a Biological Research Complex. The whole experience raised some interesting pedagogical questions, which are also discussed.
TL;DR: In this paper, a method of rendering defective raw programmable logic arrays usable by locating the manufacturing defects within the raw logic array, reconfiguring the columns of a mask logic array and mapping the mask logic arrays onto the raw one so as to mask the defects is presented.
Abstract: A method of rendering defective raw programmable logic arrays usable by locating the manufacturing defects within the raw logic array, reconfiguring the columns of a mask logic array, and mapping the mask logic array onto the raw logic array so as to mask the defects. A defective programmable logic array rendered usable by this method.
TL;DR: Vectorization exhibits its greatest advantage over scalar execution when the number of iterations is large (since the startup and saturation costs will be negligible), and loops smaller than this value are typically done in scalar mode.
Abstract: as the size of the array is increased. Pipelining involves breaking an operation into a sequence of micro-operations (components), which taken together form a pipe. Values are accepted at one end of the pipe and the results are available at the other end after the entire operation. For example, Norrie gives an example describing the multiply instruction broken into five components.\" 1. Compare exponents. 2. Align operands accordingly. 3. Add exponents and multiply mantissas. 4. Determine the normalization factor. 5. Normalize the result. A pipeline can be constructed for these five components which allows the operands to be loaded into one end of the pipeline and serially processed by each component. When the first component completes its processing, the results are sent to the second unit. This process continues until the result is available some five clock cycles later. The key to vector processing comes with the realization that once the first processing component completes its function and passes the result to the next processor, it is free to accept another operand. Therefore, once the pipe is loaded, a new result can be made available each clock cycle. Saturation of the pipeline is best achieved with a sequence of contiguous values which can be loaded each cycle. The term vector processor comes from this need to have contiguous vectors of data available for processing. The time required by a vector processor to complete the sample loop given above can be determined from the number of components of the vector instructions in the loop as well as some additional setup costs. There is a fixed startup cost and a cost to initially saturate the pipe (which is dependent upon the number of components required to perform the desired operation). Once the startup ofthe pipe is completed, new results can be made available with each cycle. Vectorization exhibits its greatest advantage over scalar execution when the number of iterations is large (since the startup and saturation costs will be negligible). Each machine has a threshold at which the initial cost overwhelms the vector speedup, and loops smaller than this value are typically done in scalar mode On the Convex, this \"minimum loop count\" is about seven. Vector chaining further exploits this architecture by allowing the results of one vector calculation to feed the next calculation. In effect, results made available at the end of one pipeline are fed to the input of …
TL;DR: A pixel-selected ray-tracing algorithm that required only 20 to 63 percent of the computation time of the standard method, while rendering a comparable level of image quality, is proposed.
Abstract: Ray-tracing is a very powerful method of generating realistic synthetic images. However, the conventional ray-tracing technique requires complicated computation for each pixel in the image and a long processing time. Advantage is taken of the similarity among neighboring pixels, and ray-tracing is executed only to certain selected pixels while using interpolation to determine the value of other pixels. A pixel-selected ray-tracing algorithm is proposed. This paper presents first a description of the pixel-selected ray-tracing concept/algorithm. Then methods of determining whether a pixel value should be calculated by ray-tracing or by interpolation are discussed. Experiments were conducted to compare the proposed method with the standard ray-tracing method. Experimental results indicated that the proposed method required only 20 to 63 percent of the computation time of the standard method, while rendering a comparable level of image quality.
TL;DR: In this article, the authors describe a display environment for modeling primitives and rendering techniques that can be implemented and evaluated easily in a very flexible display environment, and describe an en...
Abstract: New modelling primitives and new rendering techniques are appearing at a rapid rate. To be able to implement and evaluate them easily, we need a very flexible display environment. We describe an en...
TL;DR: This thesis addresses the rendering and magnification issues of producing computer generated images of fractals that have been obtained via iterated function systems and proposes a solution that is dimension independent and preserves the properties of IFS attractors needed by the new rendering techniques.
Abstract: Fractal sets do not simplify geometrically when magnified. As viewing resolution is increased, so is the visible detail. Fractals have been found to be particularly useful for modeling the jagged and irregular geometry of typical natural objects. Thus they are important tools for geometric modeling in computer graphics.
An iterated function system or IFS is a mathematical model which when realized by an iteration process generates a fractal set called the attractor of the IFS. An iterated function system has the property that its parameters can be chosen so that its attractor matches any specified shape with as much accuracy as is desired.
This thesis addresses the rendering and magnification issues of producing computer generated images of fractals that have been obtained via iterated function systems. Two techniques for rendering IFS attractors are presented. The first, the measure rendering method, can be used to add texture to an image of a two-dimensional IFS attractor and produce images that display a high degree of realism. The second, the point history method, reveals details of the attractor according to the iterative process that generated it.
A new two-phase magnification algorithm with several performance-enhancing variations is introduced. It produces magnified views of attractor subsections in far less time than previous methods. The solution to the magnification problem is dimension independent and preserves the properties of IFS attractors needed by the new rendering techniques.
The Seurat software system is a complete interactive rendering system that incorporates the research results from this work. A discussion of its implementation and companion animation software is included.
TL;DR: Ray tracing can show shadows and the effects of reflection and refraction and enables us to make pictures directly from CSG models in a very general way which avoids the complication of finding intersections between primitive objects.
Abstract: Ray tracing can show shadows and the effects of reflection and refraction. For this reason it is superior to other methods of rendering. It also enables us to make pictures directly from CSG models in a very general way which avoids the complication of finding intersections between primitive objects.
TL;DR: The notions of user-friendliness and the tools that now facilitate its implementation are discussed and the example of spindle design and analysis is used to illustrate the new possibilities.
TL;DR: Algorithms are described for the computer graphics rendering of a particular class of chaotic structures created from complex iteration for one small region of the complex plane and on nonstandard convergence tests.
TL;DR: A disciplined science for characterizing reflections in curved surfaces is developed, and three techniques to handle the situation are described: contour tracing, special purpose numerical methods, and spline approximation.
Abstract: Reflections add a new dimension to the realism of computer generated scenes. The only existing method for implementing reflections satisfactorily is ray-tracing. However, it has major drawbacks, the most obvious being its expensive CPU requirements. The objective of this dissertation is to gain an understanding of the nature of reflections, and to develop alternate methods for rendering them by exploiting their geometric coherence.
We develop a disciplined science for characterizing reflections in curved surfaces. There is no hope for closed form solutions to rendering them since they are algebraically intractable. However, we describe three techniques to handle the situation: contour tracing, special purpose numerical methods, and spline approximation.
We extend four existing algorithms to include reflections, namely, the painter's algorithm, the z-buffer algorithm, the scan plane algorithm, and what we call the curvilinear trapezoid method. Methods and scope for parallelizing these algorithms are also discussed. A comparative study of these algorithms is attempted to outline their suitability under various computing environments. The computing environment is thus a significant factor for the choice of an algorithm. Our efforts are focused on scenes composed of spheres but more general scenes are possible.