TL;DR: In this article, the authors describe various fractal procedural textures serving as models of natural phenomena, such as thin, wispy clouds in a blue sky, which can be constructed from any basis function; the basis function that is most often chosen is the Perlin noise function.
Abstract: This chapter describes various fractal procedural textures serving as models of natural phenomena. They are divided into four elements of the ancients: air, fire, water, and earth. The chapter describes the most common, quick, and easy cloud texture and discusses a few two-dimensional models that are significant aesthetically. One of the simplest and most often used fractal textures is a simple representation of thin, wispy clouds in a blue sky. The fractals can be constructed from any basis function; the basis function that is most often chosen is the Perlin noise function. The composition of noise functions to provide distortion is useful in another aspect of modeling clouds: emulating the streaming of clouds that are stretched by winds. Modeling of the clouds is presented in the chapter on different scales. One of these scales is a distorted large-scale distribution comprising a weighting function, which is applied to smaller-scale cloud features. The undistorted small features correspond to the phenomenon of viscosity, which damps turbulence at small scales. This may serve as the first step in the direction of multifractal models, as the fractal behavior is different at different scales, and therefore may require more than one value or measure to characterize the fractal behavior.
TL;DR: In this article, the authors proposed an algorithm to improve the signal to noise ratio of stochastically sampled images by averaging pixel intensity information from several frames, which can be applied to the types of shading models typically used in scanline Zbuffer renderers or in ray tracers.
Abstract: Stochastic sampling has proven to be an effective means of reducing many types of aliasing artifacts. However, stochastic sampling requires many samples in order to produce images which appear free of noise, especially when used to antialias procedural textures or the shadowing effects of area light sources. This paper describes an algorithm to improve the signal to noise ratio of stochastically sampled images by averaging pixel intensity information from several frames. The algorithm can be applied to the types of shading models typically used in scanline Z-buffer renderers or in ray tracers. The algorithm predicts the motion of pixels in screen space, effectively compensating out the effect of motion in the scene. The new algorithm has several attractive characteristics. It is efficiently applied as a post process or as an adjunct to an existing renderer. In either case, the extra computation required for the motion prediction is small compared to the time required to render the original image and the improvements in signal to noise ratio can be substantial.
TL;DR: The three-dimensional extensions of clamping, EWA filters, and NIL maps for filtering these textures are studied, and a direct evaluation technique based on quadrature methods is presented.
Abstract: The display of volumetric data is a problem of increasing importance. The display of this data is being studied in texture mapping and volume rendering applications. The goal of texture mapping is to add variation to the surfaces that is not caused by the geometric models of the objects. The goal of volume rendering is to display the data so that the study of this data is made easier.
Three-dimensional texture mapping requires the use of filtering not only to reduce aliasing artifacts but also to compute the texture value which is to be used for the display. Study of two-dimensional texture map filtering techniques led to a number of techniques which were extended to three dimensions: namely clamping, elliptical weighted average (EWA) filters, and a pyramidal scheme known as NIL maps; (NIL stands for nodus in largo, the rough translation of which is knot large).
The use of three-dimensional textures is not a straightforward extension of the use of two-dimensional textures. Where two-dimensional textures are usually discrete arrays of texture samples which are applied to the surface of objects, three-dimensional textures are usually procedural textures which can be applied on the surface of an object, throughout the object, or in volumes near the object. We studied the three-dimensional extensions of clamping, EWA filters, and NIL maps for filtering these textures. In addition to these three techniques a direct evaluation technique based on quadrature methods is presented. The performance of these four techniques is compared using a variety of criteria, and recommendations are made regarding their use.
There are several techniques for volume rendering which can be formulated as filtering operations. By altering these display filters different views of the data can be generated. We modified the NIL map filtering technique for use as a filter-prototyping tool. This extension incorporated transfer functions into the NIL map technique. This allows the manipulation of the transfer functions without requiring the re-computation of the NIL maps. The use of NIL maps as a filter-prototyping tool is illustrated with a series of examples.
TL;DR: In this article, the major building blocks of procedural textures and the ways in which they can be combined are discussed, starting from very simple textures and eventually moving on to quite elaborate ones.
Abstract: Texturing is a method of varying the surface properties from point to point in order to give the appearance of surface detail that is not actually present in the geometry of the surface. This chapter describes how to construct procedural texture functions in a variety of ways, starting from very simple textures and eventually moving on to quite elaborate ones. The chapter discusses the major building blocks of procedural textures and the ways in which they can be combined. Two major types of procedural texturing or modeling methods are described: explicit and implicit methods. In explicit methods, the procedure directly generates the points that make up a shape. In implicit methods, the procedure answers a query about a particular point. The most common form of implicit method is the isocurve (in 2D) or isosurface (in 3D) method. In the texturing domain, implicit procedural methods are best for textures that are evaluated during rendering. In both ray tracers and depth buffer renderers, texture samples must be evaluated in an order that is determined by the renderer, not by the texture procedure.