Radiosity for Virtual Reality Systemstralvex.com/rover/tralvex-thesis.pdf · images were generated using radiosity techniques. Unlike ray tracing, radiosity models the actual interaction
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Radiosity for Virtual Reality Systems
by Tralvex S L, Yeap
A thesis submitted
to School of Computer Studies in partial fulfilment of requirements for a degree of
M. Sc. in Vision, Visualization and Virtual Environments
Illumination models take into account each individual point on a surface and the light sources that
are directly illuminating it. Three such models are discussed: ambient reflection, diffuse reflection
and specular reflection.
3.2.1 Ambient Reflection
Ambient reflection is the result of inter-reflection from the walls and objects. However, it is modelled
as a constant term for the specific object (Figure 3.2), such that a 3D sphere looks 2D. This
approximates diffuse reflection globally.
Figure 3.2 Spheres shaded showing variation of magnitude in ambient component over the surface of each sphere. From left to right, increasing amount of cyan ambient reflection.
3.2.2 Diffuse Reflection
Most objects around us do not emit light of their own. Rather they absorb daylight, or light emitted
from an artificial source, and reflect part of it. Here, light that reached the surfaces would be
scattered equally in all directions. This implies that the amount of light as observed by the viewer is
independent of the viewer’s location (Figure 3.3).
Figure 3.3 Spheres shaded showing variation of magnitude in diffuse component over the surface of each sphere. From left to right, increasing amount of cyan diffuse reflection.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 15
3.2.3 Specular Reflection
Many real world surfaces are glossy, such that when viewed from certain angles they can be seen
reflecting light. A glossy surface reflects a high proportion of light, while the rest is the result of
diffuse reflection. This glossy or shiny reflection is called specular reflection (Figure 3.4).
Figure 3.4 Spheres shaded showing variation of magnitude in specular component over the surface of each sphere. From left to right, increasing amount of specular reflection.
3.3 Shading Models
There are three traditional shading models, namely flat shading, Gouraud shading and Phong
shading. Global illumination shading models such as recursive ray tracing and radiosity takes into
account the interchange of light between all surfaces.
3.3.1 Flat Shading
Flat surface rendering or constant shading is the simplest rendering format that involves some basic
surface properties such as colour distinctions and reflectivity. This method produces a rendering that
does not smooth over the faces which make up the surface. The resulting visualization shows an
object that appears to have surfaces faceted like a diamond (Figure 3.5). Rendering only requires the
computation of a colour for each visible face. The whole face is filled with this colour.
Figure 3.5 Toy duck using flat shading.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 16
This approach is fast and very simple, but it gives quite unrealistic results and non-smooth surfaces.
This is highlighted by the Mach effect: the intensity at the vicinities of the edges is overestimated for
light values and underestimated for dark values.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 17
3.3.2 Gouraud Shading
The Gouraud shading [Gouraud, 1971] is restricted to the diffuse component of the illumination
model and it gives a fairly realistic result (Figure 3.6).
Figure 3.6 Toy duck using Gouraud shading.
It is noted that most VR systems, including Leeds Advanced Driving Simulator and arcade games
such as Sega’s Street Fighter, use Gouraud shading extensively.
3.3.3 Phong Shading
Phong shading overcomes the limitation of Gouraud shading by incorporating specular reflection into
the scheme [Phong, 1975]. Now, we have the effect of specular highlight in the middle of each
polygon. Also note that the intensity transition from one polygon to another is smoother. (Figure
3.7).
Figure 3.7 Toy duck using Phong shading.
However, the primary objective is for efficiency of computation rather than for accurate physical
simulation. As mentioned by Phong:
We do not expect to be able to display the object exactly as it would appear in
reality, with texture, overcast shadows, etc. We hope only to display an image
that approximates the real object closely enough to provide a certain degree of
realism.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 18
3.3.4 Ray Tracing
Ray tracing is one of the first techniques introduced for photo-realistic image synthesis. One of the
beauties of this technique is its extreme simplicity [Glassner, 1989]. A ray tracing scene is able to
give more realistic result (Figure 3.8) as compared to any of the previous three shading models - take
note of the reflections on the lens and the shadows cast by the glasses on the floor.
Figure 3.8 Ray traced Glasses. Generated using Povray 2.2. Modified from original model by Graeme and Perry Van Dongen “Pen & Glasses on Red/Black Tiles”.
However, this method omitted the most important aspect for creating a true photo-realistic image;
that is diffuse inter-reflection such as ‘colour bleeding’ effects, e.g. coloured light bounced off blue
tiles onto the lens should result in a blue tint.
3.4 Summary
In this chapter, we have looked at various traditional illuminations and shading models that are
commonly used in the commercial applications. However, they do not accurately represent the real
world light-environment situation. Often, the image generated (in particular, those using ray tracing
technique) may look like the original scene; but on close inspection, they are not.
In the next chapter, we look at the basics of radiosity and its application to computer graphics that
gives photo-realistic results.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 19
Chapter 4
Radiosity Principles
4.1 Introduction
This chapter (Figure 4.1) introduces the theory of radiosity. The radiosity method was originally
started in the 1950s as a method for computing radiative heat transfer between surfaces [Siegel et
al., 1992]. In computer graphics, we are only concerned with the simulation of light transfer, which
is simpler than the simulation of heat transfer. As such, temperature plays no significant role when
radiosity method is applied for the synthesis of photo-realistic images.
Figure 4.1 Chapter 4 Road Map.
4.1 Introduction4.1.1 Lambertian surfaces
4.2 Radiosity Rendering Pipeline
4.3 Meshing the Environment4.3.1 Uniform Mesh4.3.2 Higher Density Uniform Mesh4.3.3 Non-uniform Mesh
4.4 The Radiosity Equation4.4.1 Concept of Form Factor
The synthesis of digital images using this method have produced many photo-realistic images.
Compare Figure 4.2a (an actual photograph) and Figure 4.2b (generated using radiosity). More
importantly, the physical illumination between the actual environment and the computer generated
environment is approximately the same.
Figure 4.2 Design Studio of the Future (a) Actual photo (b) Radiosity image (Courtesy of Architecture Electronic Studio, MIT, by Philip Thompson and Jack Devalpine).
In modelling an environment, the radiosity theory makes the following assumptions:
• All surfaces are Lambertian
• Each patch has a constant radiance distribution
• Each patch has a constant irradiance distribution
• The transmitting media is non-participating. In other words, the media does not absorb,
refract or scatter light.
4.1.1 Lambertian Surfaces
One of the assumptions for radiosity theory is that all surfaces in the environment are Lambertian
surfaces. A Lambertian surface is defined as a surface that has a constant radiance, such that when
viewed from different directions (at the same angle), gives the same radiance. Its radiance depends
only on the angle θ between the direction of L to the light source and the surface normal, N (Figure
4.3).
Radiosity for VR Systems University of Leeds
T S L Yeap Page 21
Lambert’s cosine law is given by:
Iθ= In cos θ (4.1)
where Iθ is the intensity of each ray and In is the intensity of the ray leaving in the direction of the
surface normal.
Figure 4.3 Reflection from a Lambertian surface. Redrawn from [Ashdown, 1995].
Recall from Table 2.1 that for radiance L, we are viewing from dA from an angle θ. Thus for a
differential area dA with constant radiance, its intensity must vary in accordance to its projected
area, which is dAcosθ.
L = dI / (dAcosθ) (from equation 2.6)
Substituting Lambert’s cosine law into L, we have:
L = dIn cosθ / (dA cosθ)
= dIn / dA (4.2)
for any Lambertian surface.
The relationship between radiant exitance and radiance for flux leaving a Lambertian surface is
given by:
M = π L (4.3)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 22
4.2 Radiosity Rendering Pipeline
This section establishes the rendering pipeline for radiosity rendering pipeline (figure 4.4) that
provides a useful conceptual model of the rendering process. There are five different stages.
Stage one models the environment by converting the physical elements in the environment into raw
data (e.g. vertices and edges) suitable for digital manipulation which is common among all other
rendering pipelines such as Gouraud and Phong rendering pipeline. Stage two converts the raw data
into meshes for computation purposes. Stage three is the computation of form factors which is a
major part of the rendering process. Stage fours solve the linear radiosity equations resulting in
Illuminance values and the final stage display the image on the screen.
Environment modelling and 3D scene visualization are common in most computer graphics and more
information can be found in [Foley et al., 1990].
Figure 4.4 Graphics Pipeline for Radiosity.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
4.3 Meshing the Environment
The accuracy of the radiosity method depends very much on the underlying meshing techniques used
to represent each surface. Each surface is divided into a mesh of polygons, commonly known as
patches (Figure 4.5). A patch is the synonym for surface or area.
Figure 4.5 A room with a chair in patches. Scene generated using Helios.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 23
Each patch will receive some flux from the surrounding patches while emitting its own flux.
Likewise, all other patches will behave the same. This process is iterative and continues until all
reflected flux is finally absorbed. A record of how much flux each patch reflects and/or emits, a final
value of radiant exitance, M can be derived. Under the constraint that each patch is a Lambertian
surface, the patch Radiance can be derived by:
L = M / π (from equation 4.3)
In general, there are three meshing strategies namely uniform meshing, higher density meshing and
non-uniform meshing [Ashdown, 1994].
4.3.1 Uniform Mesh
Uniform mesh is the simplest of all the meshing strategies. An illustration of one-dimensional
radiosity function is approximated in figure 4.6a. This meshing technique does not perform well, as
seen in figure 4.6b, the huge shaded region, depicting the errors from uniform mesh of five elements.
Figure 4.6a Uniform mesh.
Figure 4.6b Uniform mesh, with shaded errors.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 24
4.3.2 Higher Density Uniform Mesh
An improvement is to increase the number of elements to nine (figure 4.7a), which results in a better
approximation to the original function (figure 4.7b).
Figure 4.7a Higher density uniform mesh. Figure 4.7b Higher density uniform mesh, with shaded
errors.
4.3.3 Non-uniform Mesh
An even better approximation can be achieved by increasing the intervals when the gradient of the
function changes rapidly (figure 4.8a). This would best approximate the radiosity function among
6.6 Acceleration Techniques for Virtual Reality Engine Stage
6.7 Summary
Radiosity for VR Systems University of Leeds
T S L Yeap Page 39
6.1.1 What is Virtual Reality?
Virtual reality refers to a computer simulated three dimensional (3D) environment that allows real-
time interactions. In simulating a reality, the focus is on reproducing its environment as accurately as
possible to create the illusion of an alternate reality. This involves not only 3D images but also the
incorporation of 3D sound, artificial smell generation and force-feedback (technology that provides
the sensation of touch). These realities may either be representations of real world objects or the
imagination of the designer. Some examples of these include architectural walk-throughs, flight
simulation, scientific visualization, oceanographic simulation, medical simulation and training
applications. We restrict our interest to the visual aspects of VR applications; that is, using radiosity
to generate photo-realistic scenes in real-time.
One interesting aspect of a radiosity solution for a scene is its view-independent nature. This is an
important result, because this means that during a walk-through, when the user changes their field of
view (FOV) to focus on another view, we do not need to re-compute the form factors and solve the
linear radiosity equations. Here, we would only need to render the new FOV based on pre-computed
radiosity solution.
6.2 Extended Radiosity Pipeline
We extend the radiosity pipeline defined earlier to include a VR Engine (figure 6.2). In this VR
component, the flow would either be towards surface meshing stage or towards 3D scene
visualization stage. A brute force approach would be to restart from the surface meshing stage.
However, with clever guessing and calculation, we could skip three of the stages before getting into
3D scene visualization - this will be looked at in detail in the next chapter.
Figure 6.2 Extended Graphics Pipeline for Radiosity.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
VR Engine
Radiosity for VR Systems University of Leeds
T S L Yeap Page 40
6.3 Acceleration Techniques for Surface Meshing Stage
As indicated by the low number of papers published, this area is almost entirely ignored by radiosity
researchers. However, two approaches (figure 6.3) for accelerated surface meshing were adaptive
meshing [Cohen et al., 1986] and radiosity textures [Heckbert, 1990][Basto et al., 1995].
Figure 6.3 Acceleration Techniques for Surface Meshing Stage.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
VR Engine
1. Adaptive Meshing2. Radiosity Textures
6.3.1 Adaptive Meshing
Adaptive meshing is a structured form of non-uniform meshing. Figure 6.4a shows a simple 2D
scene, that is of low density mesh, while figure 6.4b shows adaptive meshing technique being used.
Figure 6.4a Low density mesh.
Figure 6.4b Adaptive Mesh.
Referring to Figure 6.4a, cells that are either shaded fully or not shaded referred to as zero local
errors, while half-shaded cells contain some errors (measured in pixels). As noted in Figure 6.4b,
those cells with errors are subdivided until a certain error tolerance is reached (e.g. within 10 pixels).
Figure 6.5 outlines an adaptive meshing algorithm for radiosity.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 41
Figure 6.5 Algorithm: Adaptive meshing. Modified from [Cohen et al., 1993].
AdaptiveMeshing_Radiosity(error_tolerance){ Create initial high density mesh with uniform mesh; Compute form factors; Solve Linear radiosity equations; do{
Evaluate accuracy by comparing neighbourhood element; subdivide elements that exceed error_tolerance; for (each new element){
Compute form factors from new element to all other elements; Compute radiosity of new element based on old radiosity values;
} }until (all elements within error_tolerance or min. element size reached);
}
6.3.2 Radiosity Textures
Until now, the data structure for radiosity we deal with are polygonised [Heckbert, 1991]; that is we
represent our radiosity function by polygons of constant radiosity. This is the most popular form of
representation.
Heckbert introduced a new form of representation called radiosity texture or rex [Heckbert, 1991].
Instead of polygonising each cell and storing one radiosity value per polygon, radiosity samples are
stored in a texture on every diffuse surface in the scene. A texture is a function that is mapped onto a
surface and used as a shading parameter in some way [Blinn et al., 1976][Heckbert, 1986]. The use
of rex completely decouples the geometry of the scene from its shading. As noted by Cohen et al.,
this simplifies both the algorithms and data structures [Cohen et al, 1993]. Figure 6.6 shows how a
mesh is converted to texture map [Möller, 1996].
Figure 6.6 Converting a mesh into uv-space to generate a texture map. [Redrawn from Möller, 1996].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 42
Figure 6.7 shows the data structure of a rex node.
Figure 6.7 Rex node data structure modified to C++ like structure. [Heckbert, 1991].
Class rex_node{ private:
leaf as Boolean; // is this a leaf? mark as Boolean; // should node be split? level as integer; // level in tree, eg. Root=0 parent as *rex_node; // parent node, if any nw, ne, se, sw as *rex_node; // four children, if not a leaf u0, v0 as double; /* texture surface parameters of a square corner [Foley et al., 1990] */ area as double; // surface area count as integer; // photon in bucket, if leaf power as integer; // accumulated power of bucket
}
Basto et al. implemented [Basto et al., 1995] the rexes (radiosity textures) method using a
commercial package, Lightscape, and made a comparison of the video frame rates for a radiosity
computation using adaptive meshing and rexes (figure 6.8).
Figure 6.8 Frame rates comparison for Adaptive mesh vs Texture Mapping for radiosity computation. Extracted from [Basto et al., 1995].
Model (type)
Number of triangles
Number of Vertices
Frame rate
Building (adaptive)
Building (texture)
158,670
804
208,052
1,608
3.8
>30.0
Lava pit (adaptive)
Lava pit (texture)
55,158
7,188
71,648
9,195
7.5
>30.0
Mausoleum (adaptive)
Manusoleum (texture)
41,342
8,208
51,916
10,604
20.0
>30.0
We noted that using rexes, Basto et al. were able to maintain the consistency of more than 30 frames
per seconds (actual frame rates were not able to be quantified due to the saturation effects in the
performance meter of the SGI Iris Performer).
Radiosity for VR Systems University of Leeds
T S L Yeap Page 43
We deduce from this experiment that if a higher density mesh were used instead of an adaptive mesh,
the frame rates would be even lower.
Use of rexes appears to be a panacea for achieving high frame rates, while achieving a scene visual
realism [Möller, 1995][Möller, 1996]. Gershbein et al. and Reid et al. demonstrated [Gershbein et
al., 1994][Reid et al., 1996] that one could even incorporate complex reflectance and emitance
through the use of rexes in a radiosity generated image.
6.4 Acceleration Techniques for Form Factor Computation Stage
It is widely known in the radiosity research community that the traditional computation of form
factor is very expensive, such that given n patches, the time complexity for this computation [Cohen
et al., 1993] is O(n2 ). One way to speed up this computation is using ray tracing methods [Haines et
al., 1986][Arvo et al., 1987]. Another alternative is to find other approaches that can approximate
the computation of form factors (Figure 6.9) and one of the most successful and widely used
approach is the use of Monte Carlo methods [Kajiyama et al., 1989][Shirley, 1990, 1990b, 1991,
1992, 1994][Shirley et al.,1991, 1995][Feda et al., 1993][Hutchinson, 1993][Jensen, 1993][Dutre et
al., 1994][Elias et al., 1994][Khodulev et al., 1995][Heinrich et al., 1994][Beseuievsky et al.,
1996][Feda M., 1996].
Figure 6.9 Acceleration Techniques for Form Factor Computation Stage.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
VR Engine
1. Monte Carlo Methods2. Ray Tracing Methods
Radiosity for VR Systems University of Leeds
T S L Yeap Page 44
6.4.1 Monte Carlo Methods for Radiosity
Monte Carlo method refers to any technique that uses random numbers to get an approximate
answer to a problem. In radiosity, Monte Carlo methods can be used to approximate the form factor
computation. Shirley has shown that the time complexity [Shirley, 1991] of this method for radiosity
is O(n). This is a great improvement over traditional computation of form factors. Figure 6.10 shows
light exitance of light using the traditional method with time complexity of O(n2 ).
Figure 6.10 Analytic/Traditional emission of energy.
Figure 6.11 Monte Carlo simulation in the emission of energy; exitance, reflection and absorption of light using Monte Carlo methods. Initial Ray from floor contains 24J of power and each patch have two pairs of number. The left value is its radiance and the right value is unshot energy.
(a)
(b)
(c) (d)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 45
One of the appeals of using Monte Carlo method lies in their simplicity; they are easy to design and
use. A short illustration is shown in Figure 6.11. A bundle of light of 24J (Figure 6.11a) is dissipated
from a patch from the floor, which spawns several rays each with 4J in random directions. Two rays
hit one of the patches on the wall; another two hits two different patches; the rest miss the wall. The
energy from the rays that hits the wall is attenuated by a reflectance factor. Here (Figure 6.11b), the
patch in the floor radiated 24J and received 0J of energy while the three patches on the wall each
received 4J, 2J and 2J of energy respectively. Moreover each also has an equal amount of unshot
energy to be emitted. Rays from patch with 4J were shot (Figure 6.11c) and one of the rays hit the
patch from the floor. Therefore (Figure 6.11d), the wall has 0J left to emit, and the floor, upon
receiving an addition of 3J, has a total of 27J and another 3J to be emitted. As one can see, this
process will continue until each patch in the scene has no more energy left to be emitted; the right
number is close to or equal to zero. Figure 6.12 outlines the algorithm for Monte Carlo radiosity.
Figure 6.12. Algorithm: Monte Carlo Radiosity.
RADIANCE = 0; // 1st array index for patch power TO_BE_EMIT = 1; // 2nd array index for patch power ENERGY_TOLERANCE = 0.1 // A value close to zero which determine when // The iteration should stop in #1. MonteCarlo_Radiosity(error_tolerance){
// Monte Carlo initial stage For (each patch){ Emit n1 rays in random direction; patch[patchi , RADIANCE] = NJ; // Left value of N joules For (each patch that receive that a ray hits){
// ρ is reflectance factor, m is the radiance per ray, patch[patchi , RADIANCE]= patch[patchi , RADIANCE] + ρ*m; patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ρ*m; }
} // Iterative loop to dissipate remaining energy for emission for (rays with patch[patchi , TO_BE_EMIT] < ENERGY_TOLERANCE){ Emit n2 rays in random direction; for (each patch that receive that a ray hits){
The traditional radiosity solution covered in Chapter 4 is computationally very expensive with a time
complexity of O(n3). Progressive radiosity is one of the earliest methods introduced [Cohen M. et al.,
1988] to tackle this complexity and is still a popular method for variations even today [Goldfeather
J., 1989][Aykanat C. et al., 1993][Capin T. et al., 1993][Feda M. et al., 1993][Goldman J.,
1994][Bekaert P. et al.,1995][Otake T., 1995][Yu Y. et al., 1996].
Progressive refinement method considers the emission of energy from each individual patch in turn,
producing useful image at each iteration. Recall that the traditional radiosity solution simply
propagates energy from one patch to all other patches (Figure 6.14a), while the Monte Carlo
methods propagates energy from one patch to random patches. Progressive refinement propagates
energy from the patch with the highest unshot energy. This is very useful because patches with
energy that contributes to the other patches most significantly are computed first, while other patches
with energy that has little impact on other patches are left to the last iteration.
Computationally, this method is very fast. However, when the solution is displayed on the screen, it
looks dark (Figure 6.14b - 1,2 and 24 iterations). Cohen et al. introduced an additional term - the
ambient factor [Cohen et al., 1988] - to illuminate the scene (Figure 6.14c). This factor is used for
display purposes only, not for computation. The ambient factor is a coarse estimation that account
for the yet reflected illumination in the scene. The ambient factor models the unknown illumination
arriving from unknown directions as a constant illumination from all direction [Cohen et al., 1993].
A detailed explanation of this method can be found in the original paper [Cohen et al., 1988].
Figure 6.14 Traditional and Progressive Refinement. (a) Traditional Gauss-Seidel iteration of 1, 2, 24 and 100. (b) Progressive Refinement (PR) iteration of 1, 2, 24 and 100 (c) PR + Ambient factor iteration of 1, 2, 24 and 100. (Courtesy of Michael Cohen [Cohen et al., 1988]).
(a)
(b)
(c)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 48
Progressive refinement methods have a worse case time complexity of O(n2 ), which is often O(n) in
practice [Cohen et al., 1993]. Figure 6.15 shows a plot of the convergence for figure 6.14. based on
traditional radiosity computation (TR) , progressive refinement (PR) and progressive refinement with
ambient factor (PR+A).
Figure 6.15 Convergence plots for three radiosity methods. Redrawn from [Cohen et al., 1993].
Figure 6.16 shows the algorithm for progressive radiosity.
Figure 6.16 Algorithm: Progressive Radiosity.
RADIANCE = 0; // 1st array index for patch power TO_BE_EMIT = 1; // 2nd array index for patch power ENERGY_TOLERANCE = 0.1 // A value close to zero which determine when // The iteration should stop in #1. Progressive_Radiosity(){
while (not converged){ for (each patch i){ Select patchi such that patch[patchi , TO_BE_EMIT] is highest; for (other patches j){ Compute ∆RAD = radiosity value between i & j;
The progressive radiosity algorithm outlined in Figure 6.16 is suitable for adapting to a parallel
version. Goldman in his M.Sc. thesis outlined this parallel version and a modification from his
algorithm to suit our purpose is shown in Figure 6.17.
Figure 6.17 Algorithm: Parallelized Progressive Radiosity. Adapted from [Goldman, 1994]. Shaded text denotes new additional from Figure 6.12.
RADIANCE = 0; // 1st array index for patch power TO_BE_EMIT = 1; // 2nd array index for patch power ENERGY_TOLERANCE = 0.1 // A value close to zero which determine when // The iteration should stop in #1. Progressive_Radiosity(){
while (not converged){ for (each patch i){ Select patchi such that patch[patchi , TO_BE_EMIT] is highest;
Partition the input elements n over the processors p such - - that each processor shoots to approximately n/p patches
Parallel section for (other patches j){ Compute ∆RAD = raddiosity value between i & j;
7.2 First Novel Approach7.2.1 Background: Progressive Meshes7.2.2 Progressive Meshes Progressive Radiosity7.2.3 A Parallel Solution for PMPR7.2.4 Potential Hybrids
7.3 Second Novel Approach7.3.1 Background: Point Distribution Model7.3.2 Background: Neural Networks7.3.3 Motion Prediction with PDM7.3.4 Potential Hybrids
7.4 Summary
Radiosity for VR Systems University of Leeds
T S L Yeap Page 52
7.2 First Novel Approach
A complex architectural environment (including objects and decorations) is often made up of several
millions of polygon. Consequently, a radiosity solution for a static scene would easily take several
hours to render because of the quadratic number of form factors to be computed. This leaves the
real-time rendering of a scene an elusive goal.
Polygonal simplification was a dormant field for several years until recently, as judged by the recent
increase in papers. Polygonal simplification (PS) is the act of transforming a three-dimensional
polygonal model or mesh into a simpler version [Erikson, 1996]. PS reduces the number of polygons
needed to represent the model while maintaining its original shape and appearance as close as
possible - often, it is possible to specify the trade-off between accuracy and simplify representation.
Erikson classified PS algorithms into three categories namely adaptive subdivision, geometry
removal and sampling. As seen in the previous chapter, adaptive subdivision algorithm also known
as adaptive meshing [Cohen et al., 1986] was the earliest method of PS used in radiosity rendering.
Geometry removal algorithm simplifies the original model by repeatedly removing the polygon of a
complex model until either the model can no longer be simplified or some user-specified
approximation is reached. There are two stages in the sampling algorithm: Firstly, it samples the
geometry of the original model by either taking a number of random points or by overlaying it with a
three-dimensional grid. Next, the algorithm tries to simplify the model by doing a best fit to the
samples.
In this section, we will provide a background of a method known as progressive meshes which
incorporated geometry removal algorithm as well as several advantages followed by our method
known as Progressive Meshes Progressive Radiosity (figure 7.2). In additional, we will also outline a
list of possible variations that one could explore.
Figure 7.2 First Novel Approach: Progressive Meshes Progressive Radiosity.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
VR Engine
First Novel ApproachProgressive Meshes Progressive Radiosity
Radiosity for VR Systems University of Leeds
T S L Yeap Page 53
7.2.1 Background: Progressive Meshes
Hoppe [Hoppe, 1996] from Microsoft Research recently introduced a very useful polygon
representation known as progressive mesh (PM). This new scheme addresses several practical
approximation, progressive transmission, mesh compression and selective refinement .
In essence, a progressive mesh is made up of a principle mesh M0 and a set of sub-meshes M1, M2,
M3, …, Mn such that when an operation known as vertex split (vsplit or F) is done on each mesh, it
will produce a more detailed mesh; that is M0 F M1 F M2 is more detailed than M0 F M1. The
inverse operation of which resulted in a less detailed mesh known as edge collapse (ecol or T) such
that the original complex mesh, MX = Mn T Mn-1 T Mn-2 T … T M2 T M1 T M0. Figure 7.3 shows an
example of both vertex split and edge collapse operations on an original mesh.
Figure 7.3 Illustration of vertex split and edge collapse.
ecol
vsplit
ecol
vsplit
2
Mesh simplification: The Original complex model can be simplified by a nearly indistinguishable approximation counterpart with far fewer polygons. Previously this process was manual. Now mesh simplification tools can automate this painstaking task. Smooth geomorphing LOD approximation: Improved performance can be achieved by defining several versions of a model at various levels of details [Funkhouser et al., 1993][Schaufler et al., 1995]. A detailed mesh is used when the object is close to the viewer, and coarser approximations are substituted as the object retreats. Often, such instantaneous switching between the LOD meshes creates perceptual ‘popping’ effects, smooth geomorphing reduces these effects. Progressive transmission: When a mesh is transmitted over the network the scene progressively approximate itself closer to the original model as data is incrementally received. One approach is to transmit successive LOD approximations but this would caused additional transmission time. Mesh compression: There are generally two ways: polygonal or mesh simplification by geometry removal or by mesh compression - lossless compression of the original mesh. Selective refinement: Each mesh in the LOD approximation is fixed. It is often desirable to have part of the scene more detailed than the rest. For example, if the user is looking at the ceiling, the mesh on the ceiling can become progressively more detailed.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 54
Through repeated operations of edge collapse on the original complex mesh, we have a natural mesh
simplification (figure 7.4). Moreover, the interesting property of vertex split operation (and its
inverse, edge collapse) is that a smooth visual transition (a geomorph) can be created between the
two meshes Mi and Mi+1 through Mi F Mi+1 [Hoppe, 1996]. Furthermore, PM also means that
progressive transmission is possible by sending over M0 and subsequently sequences of vspliti until
the desired level of realism is achieved. In practice, we might only need the first few vspliti. Hoppe’s
results based on figure 7.4 shows a compression ratio of 15:1 when a simplified mesh is used instead
of the original mesh. PM also supports selective refinement, whereby detail is added to specific area
in the scene by using specific vspliti.
Figure 7.4 Mesh simplification of radiosity solution. Left: Original image using mesh with 150,983 polygons, middle: image using simplified mesh with 10,000 faces, right: simplified mesh. (Courtesy of Hoppe [Hoppe, 1996]).
7.2.2 Progressive Meshes Progressive Radiosity
We have seen the prowess of progressive radiosity in chapter 6 where a convergence of 80% was
achieved within 25 steps. However, all progressive radiosity implementation uses the original
complex mesh throughout the computation. Figure 7.5 shows a 6 snapshots of a scene rendered
using progressive radiosity giving final solution in scene 6. Figure 7.5 Six snapshots of Progressive Radiosity rendered scene. (Courtesy of Lightscape Ltd).
Radiosity for VR Systems University of Leeds
T S L Yeap Page 55
PMPR incorporated progressive meshes allowing the scene to be presented accurately with several
levels of detail. In addition, PMPR initial solutions use the principle mesh (in our example, our
principle mesh is only 0.2% of the original mesh), see Figure 7.6 - scene 1 to 6. The scene is
repeatedly refined using progressive radiosity, such that each solution is illuminated to convergence.
Once a desired level of convergence is achieved with this coarse mesh, the finer meshes are
introduced (through sequences of vspliti) up to a point where the desired level of detail is achieved.
Figure 7.6 - scene 6 is the coarse representation of the final solution in Figure 7.5 - scene 6, and
progressively, the mesh becomes finer as seen in Figure 7.6 - scene 7 to 9.
Figure 7.6 Nine Snapshots of Progressive Meshes Progressive Radiosity rendered scene.
In a walk-through, various levels of detail of the scene would correspond to the speed at which the
user is walking, such that if the user is running, a lower level of detail is required (Figure 7.6 - scene
7) and if the user is strolling, a higher level of detail is desirable (Figure 7.6 - scene 8 or 9).
However, in the case whereby the user is running but focusing on a specific region - e.g. on the right
of the wall, then a combination of meshes could be used (recall the selective refinement feature in
progressive mesh), see figure 7.7.
Figure 7.7 PMPR Scene with Selective Refinement. (a) User is looking at the right paintings while walking forward. (b) User is looking at the ceiling while walking forward.
(a)
(b)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 56
The algorithm for Progressive Meshes Progressive Radiosity is outlined in Figure 7.8. The main
difference between progressive radiosity algorithm (figure 6.16) and PMPR algorithm (figure 7.8) is
the additional section which concern with the convergence of the mesh to the original complex mesh,
RADIANCE = 0; // 1st array index for patch power TO_BE_EMIT = 1; // 2nd array index for patch power ENERGY_TOLERANCE = 0.1 // A value close to zero which determine when // The iteration should stop in #1. num_vsplits = 0; // Number of vsplits max_vsplits = 0; // maximum vsplits for final mesh construction max_vsplits_percent = 80; // use 100 for a complete mesh. num_submesh = 0; ProgMesh_ProgRadiosity(){
Get principle_mesh and num_vsplits and for model; max_vsplits = num_vsplits * max_vsplits_percent; // Progressive radiosity based on a one coarse mesh (principle mesh) // with convergence based on close the radiance is to the final value. mesh = principle_mesh; while (not converged){ for (each patch I){ Select patchi such that patch[patchi , TO_BE_EMIT] is highest; for (other patches j){ Compute ∆RAD = raddiosity value between i & j;
// Progressive meshes with slower progressive radiosity with // convergence based on how close the mesh is to the MX . do while (num_submesh < max_vsplits){ num_submesh = num_submesh + 1; mesh = vsplit (mesh, num_submesh); // M = M F Mnum_submesh for (each patch I){ Select patchi such that patch[patchi , TO_BE_EMIT] is highest; for (other patches j){ Compute ∆RAD = raddiosity value between i & j;
RADIANCE = 0; // 1st array index for patch power TO_BE_EMIT = 1; // 2nd array index for patch power ENERGY_TOLERANCE = 0.1 // A value close to zero which determine when // The iteration should stop in #1. num_vsplits = 0; // Number of vsplits max_vsplits = 0; // maximum vsplits for final mesh construction mid_vsplits_percent = 40; max_vsplits_percent = 80; num_submesh = 0; ProgMesh_ProgRadiosity(){
Get principle_mesh and num_vsplits and for model; max_vsplits = num_vsplits * max_vsplits_percent; // Progressive radiosity based on a one coarse mesh (principle mesh) // with convergence based on close the radiance is to the final value. mesh = princple_mesh; while (not converged){ for (each patch I){ Select patchi such that patch[patchi , TO_BE_EMIT] is highest;
Partition the input elements n over the processors p such - - that each processor shoots to approximately n/p patches
Parallel section for (other patches j){ Compute ∆RAD = raddiosity value between i & j;
// Progressive meshes with slower progressive radiosity with // convergence based on how close the mesh is to the MX . do while (num_submesh < max_vsplits){ num_submesh = num_submesh + 1; mesh = vsplit (mesh, num_submesh); // M = M F Mnum_submesh for (each patch I){ Select patchi such that patch[patchi , TO_BE_EMIT] is highest;
Partition the input elements n over the processors p such - - that each processor shoots to approximately n/p patches
Parallel section for (other patches j){ Compute ∆RAD = raddiosity value between i & j;
PR MCR HR IR WR POR PM X 3 X X X X X PAM X X X X X X MCM X X X X X X PNM X X X X X X WM X X X X X X IP X X X X X X VP X X X X X X TM X X X X X X MPM X X X X X X RSM X X X X X X PM X X X X X X PSCM X X X X X X
PM PAM MCM PNM WM IP VP TM MPM RSM PM PSCM
Progressive Meshes Progressive Adaptive Meshes Monte Carlo Meshes Paranomical Meshes Wavelet Meshes Image Pyramids Volume Pyramids Texture/Reflectance Meshes Multi-angles Picture Meshes Ray Space Meshes Polygonal Meshes Progressive Simplical Complex Meshes [Hoppe et al., 1997]
PR MCR HR IR WR POR
Progressive Radiosity Monte Carlo Radiosity Hierarchical Radiosity Importance-based Radiosity [Smits et al., 1992] Wavelet radiosity Photon-based Radiosity [Jensen, 1995]
3 Combination of PM and PR, Progressive Meshes Progressive Radiosity (PMPR)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 61
7.3 Second Novel Approach
One of the major problems in a VR walk-through lies in predicting where the user will move in the
subsequent instance. It is not obvious neither in radiosity community nor in VR community how this
problem can be resolved. Cracking this problem would yield many benefits, such as the ability to
focus the rendering of scene to specific area more quickly rather than rendering all other scenes in
which the user might not be interested. Moreover, the results based on the typicality of user paths
allows designers and psychologists to evaluate the system quantitatively. For example, in a driving
simulator where the designer layout a specific set of complex roads, we could identify the user
driving pattern from one point to another, and subsequently predict a new user driving pattern. This
enables designers to modified the road layout in order to ensure minimal road congestion and allow
the psychologist to study why a specific route is taken instead of another. This is an active area of
research - see the “Advanced Driving Simulator” in University of Leeds [Blana, 1996abc][SCS et
al., 1997], between School of Computer Studies, School of Transport Studies and Psychology
Department.
As mentioned in the previous chapter, existing approaches [Airey et al., 1990][Otake, 1995][Gibson,
1995][Forsyth et al., 1995][Möller, 1995][Möller, 1996][Drettakis et al., 1997] coupled their
implementation tightly into the traditional radiosity rendering pipeline. Instead, we present a generic
framework which allows us to plug our solution into either radiosity specific systems and any other
graphics system such as “Advanced Driving Simulator” that uses other computer graphics
techniques - Fourier synthesis and Gouraud shading.
In this section, we provide a background of the two methods; firstly, the theory of Point Distribution
Model (PDM) and secondly, the concept of Neural Networks (NN). Armed with this knowledge, we
introduce our method known as Motion Prediction with PDM (figure 7.11). In addition, we will also
outline a list of possible variations that one could explore. Note that our method originated from
work done by researchers from Vision Group (University of Leeds) in machine vision applications
[Baumberg et al., 1993][Shen X et al., 1993][Baumberg et al., 1994] [Baumberg et al., 1995][Shen
X et al., 1995][Johnson, 1995][Sumpter et al., 1997].
Figure 7.11 Second Novel Approach: Motion Prediction with PDM.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
VR Engine
Second Novel ApproachMotion Prediction with Point Distribution Model
Radiosity for VR Systems University of Leeds
T S L Yeap Page 62
7.3.1 Background: Point Distribution Model
The Point Distribution Model (PDM) is a statistical shape description method that is constructed
from a set of training examples [Cootes et al., 1992]. This models include a mean shape and the
significance variations. This model is equally realistic. It is built from a set of real life examples but
one could alternatively do an on-line observation and construct an off-line example for training. For
each image (training example), a set of landmark points is derived (Figure 7.12). Traditionally, the
landmark points were derived manually, however we could automate [Johnson et al., 1995] this
process based on the video sequences from the examples.
Figure 7.12 Image sequences and PDM. Landmarks in (f) is based on (e) (Courtesy of Neil Johnson).
An alignment of the training set with respect to varies transformation - rotation, translation and scale
[Sonka et al., 1997] - is done resulting in a vector of mean shape of x and y co-ordinates and based
on this mean shape. Subsequent measurement of variation of each image can be derived resulting in
a covariance matrix. Using a method known as Principal Component Analysis (PCA) [Jolliffee,
1986], it is possible to pick out the main axes of the matrix which model only the first few
variations. These few variations account for the majority of the variation (e.g. up to 90% of the
variation).
PDM could be extended to include additional parameters such as velocity, acceleration, additional
dimension, additional co-ordinates of another entity, distance from a specific entity etc. [Sumpter et
al., 1997].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 63
7.3.2 Background: Neural Networks
There are many definitions to Neural Networks (NN) but to us, it is an adaptive pattern processing
system [Cruz, 1991] that is good at learning the recognition of patterns. NN consists of a set of
simple network elements (nodes and links), each of which is an independent processor. In addition,
NN does not contain any program, its behaviour is in fact determined solely by the network topology
and the element parameters. Its adaptive nature means that NN can learn from examples and
subsequently be used to predict the outcome of certain events.
Neural networks are statistics for amateurs [Anderson, 1995]. Oja found that NN is good for PCA
[Oja, 1982] and Linsker describe a self-organising NN that includes PCA [Linsker, 1988]. One of
the most widely used NN is known as back-propagation network [Rumelhart, 1986], which in
essence learns a pattern by modifying its parameters (internal weights). However, an empirical study
done on the speed of back-propagation network [Fahlman, 1988] revealed that this method does not
perform well as tasks become larger and more complex. Johnson used an unsupervised learning
network similar to Kohonen network [Kohonen, 1982][Kohonen, 1984] for teaching his system to
learn paths taken by people walking in a scene (Figure 7.13). Subsequently, the trained network is
used to predict the paths that a new user is going to take (Figure 7.13). One of the beauties of NN is
its ability to predict multiple paths, although the user would eventually only cover one path (Figure
7.13b and Figure 7.13e). Note that each path predicted by the NN is associated with a strength
value, indicating how typical that particular route is.
Figure 7.13 Prediction of path(s) a user is going to take (Courtesy of Neil Johnson). White track(s) are predicted by the Neural Network, while red dots denotes actual path of the user.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 64
7.3.3 Motion Prediction with Point Distribution Model
Despite many years of research into real-time radiosity, the goal of predicting the moves by the user
in walk-throughs has proved elusive. Like the Space Race, we appear to be the first to fulfil this goal
in the radiosity community by combining Neural Networks with the Point Distribution Model.
A walk-through is a fourth dimension4 problem, with time as the fourth dimension (see thesis
CDROM for videos of SCS Foyer walk-throughs or the snapshots in Appendix D). We simplified
each walk-through by using only two dimensions - from the plan perspective (Figure 7.14). In
addition, a directional vector is introduced at each differential position (the rate of change of position
with respect to time). In essence, each differential position, consist of its x-y co-ordinates and a
direction. Formally,
δP = f ( x , y , direction ) (7.1)
Figure 7.14 Plan perspective of several walk-throughs in SCS Foyer.
Legend: a,b,c,d,e,f,g,h,I,j,k: Important Landmarks a: SCS Foyer b: SCS Foyer nearer to rest room bl: left side of b br: right side of b c: restroom d: M.Sc. lab corridor
e: Videoconferencing room f: M.Sc. lab, back door g: M.Sc. lab, main door h: Dr. B. Smith office i: Dr. W. Riha office j: Dr. L. Proll office k: Long room
Routes: No. 1: a - b - c No. 2: a - bl - c No. 3: a - br - c No. 4: a - d - e No. 5: a - d - g No. 6: a - d - f No. 7: a - d - I No. 8: a - d - k
Assuming that the training route for use is No. 1 to No. 8 with 5 variations of route 5; that is, a total
of 12 paths. For the simulation to be much more realistic, we may need several hundred training sets.
4
Our interpretation of the fourth dimension - time - is based on the theory of relativity [Schutz, 1990], although an equally compelling fourth dimension can be interpreted as a projection of 3D as in Dionys’s book Sphereland [Dionys, 1965]. This projection idea was originated from Abbott’s classic book Flatland [Abbott, 1952].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 65
To cast the paths (e.g. route no. 1) into digital format for computation, each path is broken into
several points known as control points and a reconstruction (Figure 7.15) is proceeded using B-
splines [Bartels et al., 1987]. Figure 7.15c shows how close the reconstructed path is to the original
path.
Figure 7.15 Reconstruction of route using B-spline. (a) Original path, with black dots refers to control points for reconstruction, gray route refers to original path. (b) Reconstructed path (black curves) based on control points in grey dots. (c) Overlay of original route (grey route) and constructed route in black.
(a)
(b)
(c)
Each path is then defined as:
P = (δP1 , δP2 , δP3 , …, δPn ) (7.2)
We then proceed to do the alignment process of all the paths resulting in a mean path and its mode of
variations. This is proceeded by Principal Component Analysis to pick out the major modes of
variation which account up to 85% or 90%. Once this is done, we would plug values of P into
Johnson’s Neutral network system to train the network for pattern recognition.
Figure 7.16 shows three cases of prediction of a simple path leading to the Restroom (room C).
Notice that the actual paths in Figure 7.16a to Figure 7.16c are not within any of the trained data set
(Figure 7.12). This ability to predict the path early would mean that the radiosity rendering of the
scene in the Restroom can start immediately such that it can be presented to the user when needed. It
is recommended to use Progressive Meshes Progressive Radiosity because, irregardless of when the
user steps into the Restroom, a solution of room C is still possible. In addition, if the user decided to
remain in the Restroom for a period of time, the solution can still proceed progressively with PMPR.
Figure 7.16 Prediction of a simple path.
(a)
(b)
(c)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 66
Figure 7.17 shows a case of predicting several complex paths leading to M.Sc. Lab. (room G). In
Figure 7.17a, upon arriving at position d, the Neural Network predicted that there are five
possibilities. In Figure 7.17b, after passing room F, the NN predicted that there are three more
possible paths until the final destination is reached (Figure 7.17d)
Figure 7.17 Prediction of several complex paths.
(a)
(b)
(c)
(d)
As in Figure 7.17a, where five possible destinations are predicted, it would be a sheer waste of
processor time to do any rendering at such an early stage. One recommendation to solve this problem
is such that given n processors, no more than 2n scenes should be rendered concurrently. In cases,
where there are more than 2n scenes predicted by the NN, one can either choose to select the scene
that is closest to the current position (Strategy 1) or to choose the paths based on the strength value
(Strategy 2). Table 7.2 shows the selected paths based on a combination of these criteria.
Table 7.2 Selected paths based on Number of Processor, type of Strategy and the list of predicted paths.
Note: 6 paths was based on Figure 7.16a, 4 paths is based on Figure 7.16b and 3 paths is based on Figure 7.16c.
5 Based on 1 processor, strategy 1, 6 paths predicted by the NN, the selected paths for rendering are: a-d (current path) and a-d-e (leading to the videoconferencing room.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 67
7.3.4 Potential Hybrids
The use of Neural Networks is by no means the only way to predict user paths, we can tap from the
pool of other machine learning techniques in Artificial Intelligence for such prediction. Other
possible methods include the use of:
• Genetic algorithms (GAs) [Holland, 1975][Goldberg, 1988][Montana et al., 1989] which
grow the best set of paths. The main ingredient for GAs are strategies for the reproduction,
mutation, and selection of particular set of solutions.
• Nearest Neighbour Classification Techniques [Gose et al., 1996], where we simply store
all the trained data set into an index database and when presented with a partial path, this
path based on its discrete positions is compared with the data set in the database. The basis
of comparison may be based on Euclidean metric, Manhattan metric or any statistical
means. However, the size of database would eventually be very large resulting in a longer
search time. It is crucial to use a good indexing scheme. One possible solution would be a
tree-like index in which variations in the paths are stored down the leaves.
7.4 Summary
In this chapter, we have introduced two new methods - Progressive Meshes Progressive Radiosity
and Motion Prediction with PDM (Point Distribution Model), both of them suitable for using
radiosity in VR applications. A list of hybrids such as Progressive Meshes Monte Carlo Radiosity,
Multi-resolution Meshes Progressive Radiosity, use of Genetic Algorithms to predict user paths, etc.
Although it appears that all these methods are look very promising for real-time radiosity in VR
applications, we are cautious in that there may be unforeseen problems in actual implementations.
In the next chapter, we will look at the future of radiosity in computer graphics, review our
contributions and conclude our case.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 68
Chapter 8
The Road Ahead and Conclusion
8.1 Introduction
In this concluding chapter, we will look at what lies ahead for radiosity, whether it will just whither
away or is there more to come. In additional, we will also review our contributions in this work,
including a mention of the compilation of various resources for future researchers. And lastly, based
on what we have established in this thesis, we will look at what is the additional work that can be
done - both for ourselves and for radiosity researchers who are interested to continue the quest in
Symposium 97’ [PRS, 1997] and Symposium on Interactive 3D Graphics ’97 [SI3DG, 1997] - see
Table 8.1.
Table 8.1 List of Radiosity related Papers Presented on Various ’97 Conferences.
EUROGRAPHICS ‘97 E1. Using Subdivision on Hierarchical Data to Reconstruct Radiosity Distribution by Kobbelt, Stamminger,
Seidel. E2. Radiosity with Well Distributed Ray Sets by Neumann, Neumann, Bekaert. E3. Optimal Source Selection in Shooting Random Walk Monte Carlo Radiosity by Sbert. E4. Bounded Radiosity - Illumination on General Surfaces and Clusters by Stamminger, Slusallek, Seidel. E5. A Rendering Equation for Specular Transfers and Interaction into Global Illumination by Yu, Wu
SIGGRAPH '97 S1. Fitting Virtual Lights for Non-Diffuse Walkthroughs by Bruce Walter, Gun Alppay, Eric Lafortune, Sebastian
Fernandez, Donald P. Greenberg (Cornell University). S2. Instant Radiosity by Alexander Keller (Universität Kaiserslautern). S3. Interactive Update of Global Illumination Using Line-Space Hierarchy by George Drettakis, Fran‡ois Sillion
(iMAGIS/GRAVIR-INRIA). S4. Metropolis Light Transport by Eric Veach, Leonidas J. Guibas (Stanford University). S5. View-Dependent Refinement of Progressive Meshes by Hugues Hoppe (Microsoft Research). S6. View-Dependent Simplification of Arbitrary Polygonal Environments by David Luebke, Carl Erikson
(University of North Carolina at Chapel Hill). S7. Surface Simplification Using Quadric Error Metrics by Michael Garland, Paul S. Heckbert (Carnegie Mellon
University). S8. Progressive Simplicial Complexes by Jovan Popovic (Carnegie Mellon University), Hugues Hoppe
(Microsoft Research).
Graphics Interface ‘97 G1. An Image-Space Refinement Criterion for Linear Hierarchical Radiosity by I Martin, D Tost, and X Pueyo.
Parallel Rendering Symposium ‘97 P1. Radiosity Parallel Hierarchical Radiosity on Cache-Coherent Multiprocessors by Jim Richard and
Jaswinder Pal Singh Stanford University and Princeton University. P2. A Parallel Hierarchical Radiosity Algorithm for Complex Scenes by Chen-Chin Feng and Shi-Nine Yang
National Tsing Hua University, Taiwan. P3. Towards Efficient Parallel Radiosity for DSM-based Parallel Computers Using Virtual Interfaces by Luc
Renambot, Bruno Arnaldi, Thierry Priol and Xavier Pueyo IRISA, France and Universitat de.
Symposium on Interactive 3D Graphics ‘97 I1. Efficient Rendering of Radiosity using Textures and Bicubic Interpolation by Rui Bastos, Michael Goslin
and Hansong Zhang.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 70
The papers in Eurographics ’97 were concentrated on both the quality and speed aspects of radiosity
computation while all the radiosity papers in Siggraph ’97 (Table 8.1, S1 to S4), concentrated on
radiosity for VR applications - which is the heart of our work. The remaining Siggraph papers
(Table 8.1, S5 to S8) are applicable to the meshing stage of the radiosity rendering pipeline which
were mentioned as part of our variations for our first new method introduced in Chapter 7. Parallized
solutions were introduced for Hierarchy radiosity in both Graphics Interface ’97 and Parallel
Rendering Symposium ’97. Finally, the paper by Basto et al. [Basto et al., 1995] which we had
explored for applying rexes to radiosity solution in Chapter 6 was presented in another symposium -
Interactive 3D Graphics ’97.
In essence, the future directions of radiosity are:
• Further exploration on even faster and more efficient meshing strategies and form factor
computation.
• More work to be done on perceptual error estimates for accessing the qualitative accuracy of
a radiosity solution. [Lischinski, 1994].
• Further exploration on physically based definitions on the light sources and materials,
especially for applications in lighting simulations in order to simulate accurate lighting
conditions.
• Real-time radiosity applications such as interactive walk-throughs that are able to achieve
full motion frame rates and simultaneously displaying at final convergence of the radiosity
solution.
• The possibility of combination of photon maps to produce an even more accurate solution.
• Exploration of parallel solutions for various new techniques in radiosity such as wavelet
radiosity and importance-based radiosity.
• Unlike ray tracing tools, radiosity tools are still very much restricted to researchers due to its
complexity. Even though commercial products such as Lightscape and Lightworks are
already in the market, radiosity for the less technical hobbyists is still unavailable. Some
attempts to bridge this gap were being tried such as the introduction of Helios by Ashdown.
However, at the present stage, Helios is in its infancy.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 71
8.3 Contributions
The main focus of this research has been the exploration of techniques suitable for applying radiosity
to VR systems. After the necessary introduction leading up to radiosity principles, we proceed to do
a radiosity trends analysis (Chapter 5) using four main classifications: (1) radiosity and extended
for radiosity and (4) VR related radiosity. Next, we surveyed various works by radiosity researchers
made suggestions on how their work could be used for VR applications (Chapter 6). Finally, we
introduce two new techniques for applying radiosity to VR applications - Progressive Meshes
Progressive Radiosity (PMPR) and Motion Prediction using Point Distribution Model (MP-PDM).
In our first technique - PMPR, we allow the initial solution to be a use coarse mesh and the use of
progressive radiosity to produce useful scenes very quickly. Upon reaching a desired convergence
level, the mesh is progressively more complex using an operation known as vsplits. Based on the
time complexity of progressive radiosity done by researchers, we are aware that our PMPR method
might be one of the fastest radiosity computation for a scene with various level of details.
In the second method - MP-PDM, we attempted to predict where the user will go in the walk-
through, and thus render the predicted scenes even before the user reach the destination. PMPR
method could be easily combined with this method to achieve an even more spectacular result.
However, due to space constraints, we leave the empirical comparison between our methods and
existing methods for future work (see next section).
If not for the kindness of many radiosity researchers (see Acknowledgements) in both academia and
organisations who have (1) exchange ideas with us, (2) made their works and resources available on
the Internet, we would not have been able to achieve as much as we hope to. In return, we have
decided to compile all the radiosity resources that we have found into a CDROM (See Appendix F
for the contents of the CDROM) and make it available on the web [Yeap et al., 1997a]. In addition,
we have compiled a book titled “Selected Papers on Radiosity” (See Appendix E for the contents of
the book) which consist of the important radiosity papers. These papers are organised based on the
our classifications established in the radiosity trends analysis. Our aim is to provide a consolidated
radiosity resource location for all future radiosity researchers and enthusiasts.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 72
8.4 Future Work
Based on the foundation we have established in this thesis, the areas which we have identified for
further research are as follows:
• Further analysis of the other seventy-one PMPR hybrids (recall Table 7.1) and implementing
those potentially good combinations.
• Although we have a feeling that PMPR and its hybrids are among the best radiosity
algorithm for VR systems, in terms of computational speed vs the levels of detail, only an
empirical comparison between our methods and all known radiosity algorithms can confirm
this hypothesis.
• There is no doubt that the progressive meshes that we introduced into PMPR are among the
most powerful meshing strategies that allow levels of detail. Nevertheless, we will be keeping
track of new developments in similar methods that allow meshes to become finer
successively. We note that in the recent Siggraph ’97, Hoppe introduced a variation of
Progressive Meshes that allows view-dependent refinement which might be useful for our
purpose.
• In our second new technique introduced, the key evolutionary algorithm we used is a Neural
Network. We look forward to analysing other evolutionary algorithms such as Genetic
Algorithms and Fuzzy Logic for their suitability in predicting a user paths in an interactive
walk-through.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 73
Appendix A
Colour Figures
This chapter contains selected colour figures from Chapter 3 to 7.
Figure 3.2 Spheres shaded showing variation of magnitude in ambient component over the surface of each sphere. From left to right, increasing amount of cyan ambient reflection.
Figure 3.3 Spheres shaded showing variation of magnitude in diffuse component over the surface of each sphere. From left to right, increasing amount of cyan diffuse reflection.
Figure 3.4 Spheres shaded showing variation of magnitude in specular component over the surface of each sphere. From left to right, increasing amount of specular reflection.
Figure 3.5 Toy duck using flat shading.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 74
Figure 3.6 Toy duck using Gouraud shading.
Figure 3.7 Toy duck using Phong shading.
Figure 3.8 Ray traced Glasses. Generated using Povray 2.2. Modified from original model by Graeme and Perry Van Dongen “Pen & Glasses on Red/Black Tiles”.
Figure 4.2 Design Studio of the Future (a) Actual photo (b) Radiosity image (Courtesy of Architecture Electronic Studio, MIT, by Philip Thompson and Jack Devalpine).
Radiosity for VR Systems University of Leeds
T S L Yeap Page 75
Figure 5.2 Graph Plot of Radiosity Trends Analysis.
Figure 6.14. Traditional and Progressive Refinement. (a) Traditional Gauss-Seidel iteration of 1, 2, 24 and 100. (b) Progressive Refinement (PR) iteration of 1, 2, 24 and 100 (c) PR + Ambient factor iteration of 1, 2, 24 and 100. (Courtesy of Michael Cohen [Cohen et al., 1988]).
(a)
(b)
(c)
Figure 7.4. Mesh simplification of radiosity solution. Left: Original image using mesh with 150,983 polygons, middle: image using simplified mesh with 10,000 faces, right: simplified mesh. (Courtesy of Hoppe [Hoppe, 1996]).
Radiosity for VR Systems University of Leeds
T S L Yeap Page 76
Figure 7.5 Six snapshots of Progressive Radiosity rendered scene. (Courtesy of Lightscape Ltd).
Figure 7.6 Nine Snapshots of Progressive Meshes Progressive Radiosity rendered scene.
Figure 7.7 PMPR Scene with Selective Refinement. (a) User is looking at the right paintings while walking forward. (b) User is looking at the ceiling while walking forward.
(a)
(b)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 77
Figure 7.9 Nine Snapshots of Parallized PMPR rendered scene.
Figure 7.12 Image sequences and PDM. Landmarks in (f) is based on (e) (Courtesy of Neil Johnson).
Radiosity for VR Systems University of Leeds
T S L Yeap Page 78
Figure 7.13 Prediction of path(s) a user is going to take (Courtesy of Neil Johnson). White track(s) are predicted by the Neural Network, while red dots denotes actual path of the user.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 79
HTML.Figure 1 Thes i s CDROM: Fron t Page .
Figure F .1 Thes i s CDROM: Main Menu .
Radiosity for VR Systems University of Leeds
T S L Yeap Page 80
Appendix B
Radiosity Survey Results
B.1 Introduction
This survey was undertaken as a form of background research with working practitioners and techies
who have experienced with radiosity.
Specific newsgroups were initially targeted hoping that responses would be rich. Out of the
B.2.1. Is radiosity your preferred solution for generating realistic images? Why?
If not, what are yours?
Radiosity solution is definitely the preferred solution for Greenberg because it is physically correct.
Defee is a firm supporter of radiosity, he mentioned that radiosity is superior when compared to ray-
tracing in catching the global effects of light simulation. The effects that are captured well by ray-
Radiosity for VR Systems University of Leeds
T S L Yeap Page 82
tracing, such as refraction or very directional lighting play only minor roles in the scenes from reality
(it should be noted that current state of art in radiosity supports the latter effects).
Smits feels that a lot depends on the environment such that if the surfaces are primarily diffuse and
there are many images to be generated, then radiosity is fine, however if he only needs one image and
there are many mirror sufaces and other non-diffuse surfaces, radiosity would be the last choice.
Pawel noted that radiosity solution causes colour bleeding which is not evident in ray-tracing.
Anghaie noted that radiosity is best suited for indoor scenes.
Robson suggested that we should combine reflections, refraction (and transparency) in a radiosity
renderer. In addition, he strengthened the argument that for radiosity, there is a problem of the
closed-environment assumption that is needed to ensure energy conservation in the scene. For
exterior scenes, he does not see much improvements over ray-tracing.
And finally, Wong, ray-traced the images after radiosity to get the reflections of shiny surfaces such
as glass and polished stones. Moreover, his practical experience revealed that there is not much
improvement for exterior scenes using radiosity over ray-tracing.
Competitors for radiosity:
• Photo maps by Henrik Jensen (Z) whose works are great for caustics
• Ray tracing with plentiful of lights (Anghaie)
• Monte Carlo (Costa) approach like in Radiance. This is further supported by the author of
Radiance (Ward) as it is faster for larger models and able to handle all kinds of inter-
reflections and light sources. In addition, this is Lafortune favourite approach because it is
simpler and more general.
• Combination of radiosity and ray-tracing (Robson). Dumon agrees that better results are
obtained using 2-pass methods, i.e. radiosity pass followed by ray tracing.
Gibson is currently working on illumination algorithms for virtual reality and he felt that radiosity is
not the best method to generate accurate illumination, but it is the only view independent method
available.
Z concluded that the best technique will be debated and researched forever.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 83
B.2.2. What are the radiosity renderers in the market?
þ Lightscape
þ Helios by Ian Ashdown
þ Pov-ray v3.01
þ Strata Studiopro
þ Microstation Masterpiece
þ HOOPS
þ Lightwork
þ Radiance by Gregory J. Ward
þ Blue Moon Rendering tools by Larry Gritz
þ Pixar Renderman
þ Electric Image
þ SoftImage
þ Raysmith
þ Specter
þ Mental Ray
þ RenderPark
Pawel mentioned that the commercial ones are very buggy, slow and inflexible while the free ones
are very primitive and he is currently using his own radiosity software.
Trumbore admitted that his favourite rendering program is his own ray tracer, he can tweak it as
much as he need to. Moreover, he feels that most radiosity software he used before were difficult to
control and even more difficult to modify. However, he is aware that ray tracer does not render
physically correct scenes.
B.2.3. hat are the efficient ways to speed up computation of radiosity?
Love recognises that the problem is in the computation of form factors. As such, Ward hinted us not
to compute form factors, and forget about meshing the scene (noting that he is using Monte Carlo
approach in Radiance). Greenberg recommended that we separate energy distribution from
rendering.
Trumbore suggested “shooting” method which was introduced by Cohen in his paper on progressive
radiosity [Cohen et al., 1988]. In addition, efficient ray intersection which is common in ray tracing
should also be considered. He cautioned us to control the meshing parameter carefully, so as to limit
the number of mesh elements in the solution. And lastly, “importance” shooting method which
concentrate the radiosity solution on only visible surfaces [Smits et al., 1992].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 84
Smits noted that depending upon the type of radiosity we are using - Progressive or Hierarchical.
Hierarchical radiosity which are based upon only computing transfers to a specified accuracy based
on the specific transfer. Moreover, a combination of hierarchical radiosity and progressive
algorithms are also possible. In addition, the ideas of better bounds on errors, better (faster or less
accurate) visibility [Sillion et al., 1994], clustering, and importance will also improve the
computational time.
Kee suggested Parallel computing which is supported by Rakesh. Moreover, Rakesh suggested that
we should split the computation for each iteration across the available CPU's, and re-sync before the
next one. In addition, he mentioned that extra memory would help.
Z, Costa and Love proposed Monte Carlo solutions. Lafortune, Chong and Gatenby recommended
progressive refinement radiosity, hierarchical radiosity, wavelet radiosity and clustering. Meanwhile,
Pawel suggests volume clustering.
In his current research at Manchester, Gibson is applying perceptual awareness to the generation of
radiosity solutions. He noted that if the final goal is for generating photo-realistic images (as opposed
to computing luminance plots or other lighting analysis methods), there is little point in computing
aspects of the illumination that cannot be perceived by the viewer. Most of the radiosity transfers
that occur during the computation of a converged solution are very small - it is therefore pointless
applying much computation time to these. Aspects of radiosity simulation such as adaptive
refinement, shadow testing using ray-casting, discontinuity meshing, clustering, and mesh
optimisation can all benefit from perceptual awareness. The important thing to realise is that
computation can be accelerated without the corresponding decrease in solution quality that is usually
associated with other techniques (for instance, he found that it is possible to reduce the total number
of rays needed for shadow casting by 96% without any decrease in solution quality).
B.2.4. What are the alternatives which produce better quality images than
radiosity, or in general, for global illumination solutions?
Robson suggested an ad hoc approach; that we fake it with area lights and ambient light values
although he recognised that neither works well.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 85
Ward proposed an Intelligent Monte Carlo ray tracing, e.g. particle tracing, irradiance caching and
beam tracing. Pawel noted that this is a brute force approach while Lafortune felt that Monte Carlo
approach is a good approach and is more general.
Trumbore noted that Monte Carlo methods and Density Estimation methods can account for both
specular and diffuse light transfer, and therefore offer a more complete solution than radiosity.
Ashdown and his research partner have several ideas which he cannot talk openly yet, but he told us
to read Winter 1997 issue of the Journal of the Illuminating Engineering Society.
Gatenby suggested Discontinuity Meshing radiosity and biased Monte Carlo path tracing.
Rakesh has seen ray-traced images with volumetric lighting that come very close, although he has yet
to compare it with radiosity.
Gibson noted that photon map based algorithms produced a more accurate still image, however for
view-independent scene, radiosity is still the best.
Smit pointed out that if we are interested only in quality, we should use Monte Carlo methods. Get a
lot of fast machines first, and be prepared to wait a while however, if quality is measured by "does
the picture look good", he suggest trying a hybrid radiosity/ray tracer, that is to use the radiosity
system to compute the diffuse stuff and the ray tracer to handle mirrors and glass and lastly, the
mentioned that there are a lot of variations on the hybrid scheme. Chong have the same feeling about
combining radiosity and ray-tracing too.
B.2.5. Where are the good places to look for radiosity resources?
All contributions are compiled and can be found at http://www.singnet.com.sg/~tyeap/life-
lu2.htm#thesis
B.2.6. What is the future for radiosity in computer graphics?
Radiosity for VR Systems University of Leeds
T S L Yeap Page 86
Smits stated that this is a religious question. He felt that radiosity will always be useful (especially
so because finite element methods have proven way too important to other fields for us to be able to
completely forget them). He also noted that interactive walkthroughs will stay and radiosity works
well for these. Radiosity may also be much more appropriate during the design phase, as it can be
made incremental and also the coarse solutions have some use to the designer.
Robson felt that the use of radiosity in character animation is a waste of valuable production time.
Trumbore mentioned that graphics scenes are becoming more complex, containing more small
polygons to represent smoother and smaller surfaces. These surfaces are not easily handled
(efficiently) by traditional radiosity methods. At the same time, processing speeds are increasing
much faster than memory availability. These factors favour methods that were once too
computationally expensive, but are able to handle complex scenes without using much memory
(Monte Carlo, Path Tracing). He felt that the future global illumination methods will include some of
the features of current "radiosity" programs, but will not be limited to diffuse lighting and will not
use the traditional radiosity's meshing and form factor approach.
Anghaie mentioned radiosity has a future in hybrid forms as graphics turn towards virtual sets and
that all major companies are coming out with their own hybrid renderers (including Alias-Wavefront
and Kinetix).
Chong is looking forward to real-time radiosity.
Lafortune and Costa also felt that we should combine radiosity with other solutions, that is hybrid
radiosity.
Gibson noted that the future for radiosity is good, as long as we can address scalability and
robustness issues. This is further supported by Pattanaik that radiosity will continue to be used and
refined further to make it more reliable and versatile.
Ward suggested extremely complex scenes and image-based rendering to combine captured imagery
with computer simulations.
Greenberg felt that the future for radiosity is excellent.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 87
Love concluded that the future is good for radiosity and that it does need plenty of work. Some of the
results are superb but the method is too closely linked to one reflection model. If that restriction can
be lifted then it will be able to compete against other global illumination methods. The advantage of
view-independent calculations is the big bonus for radiosity.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 88
B.3 Actual Email Message Questionnaire/Survey
Computer Graphics: Ray Tracing and radiosity Hi, I'm currently working on my M.Sc. dissertation and would like to do a mini survey. If you are a working practitioner or techie in this area, I would appreciate your comments (feel free to answer or skip any questions) I express my gratitude and gratefulness in advance. T S L Yeap University of Leeds School of Computer Studies [email protected] (http://www.scs.leeds.ac.uk/mscytsy) ----------------------------------------------------------- begin 1. Is radiosity your preferred solution for generating realistic images? Why? If not, what are yours? Excellent radiosity images at http://www.graphics.cornell.edu/sampler/ 2. What are the radiosity renderers in the market? (other than Lightscape-commercial, Helios-free, Pov-ray v3.01-free, Strata Studiopro, Microstation Masterpiece, HOOPS) 3. What are the efficient ways to speed up computation of radiosity? 4. What are the alternatives which produce better quality images than radiosity, or in general, for global illumination solutions? 5. Where are the good places to good for radiosity resources? (other than in Cornell University and Ian Ashdown resources) 6. What is the future for radiosity in computer graphics? ----------------------------------------------------------- end PS: If you prefer to be anonymous during my acknowledgement in the dissertation, please feel free to let me know. PSS: Announcement, POV Ray v3.01 for Windows 3.1/95/NT is out! And can be downloaded at www.povray.org Groups posted: comp.graphics.algorithms comp.graphics.apps.lightwave comp.graphics.apps.wavefront comp.graphics.rendering.raytracing comp.graphics.rendering.misc comp.graphics.research comp.graphics.visualization comp.sys.sgi.graphics local.postgrads (at University of Leeds, bulletin board)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 89
Appendix C
Radiosity Illustrations
C.1 Illustration
An illustration [Sillion, 1994] based on geometrical situation with known analytic form factors are
used. The actual figures were computed using Siegel, 1992 computed tables for parallel equal
rectangles and rectangles at right angle.
Figure C.1 shows an infinite shelf consisting of three surfaces: a flat bottom and two wall (right
angled to the bottom). The width of the floor B of the shelf is b, and the walls A and C each have a
height of a. Defining g = a/b, there are six form factors relating to each pair of surfaces: FA,B, FB,A,
FA,C, FC,A, FB,C, and FC,B. Due to the geometry of the surfaces, we can simplify this to three form
Figure C.1 A shelf with infinite length. [Redrawn from Sillion, 1994]
The three form factors are
FA,B = ½ (1 + g - 1 2+ g )
FA,C = 1 2+ g - g
FB,C = ½ (1 + (1/g) - 1 1 2+ ( / )g (C.1)
The form factor matrix K is
K =
1
−
−
ρ
ρ
B B A
C C A
F
F
,
,
−
−
ρ
ρ
A A B
C C B
F
F
,
,
1
−
−
ρ
ρ
A A C
B B C
F
F
,
,
1
Radiosity for VR Systems University of Leeds
T S L Yeap Page 90
In the first example (Figure C.2), the configuration of Wall A is that it emits some light while
reflecting none. Floor B and Wall C reflected some light from A. The physical quantity of light
emitted and reflected in this configuration is shown in the first column of Table C.1.
Figure C.2. Wall A radiating, Floor B and Wall C reflecting, [Adapted from Sillion, 1994]
Next (Figure C.3), we allow Wall A to be able to reflect light, while still emitting the same quantity
of light. Likewise, Floor B and Wall C remains the same. We note that all three walls reflected
slightly more light (Table C.1). This is because, the light reflected from Wall A is further reflected
by Floor B and Wall C again.
Figure C.3. Wall A radiating, all walls reflecting, [Adapted from Sillion, 1994].
In the third instance, Floor B emits light while Wall A and C reflects it. As expected, due to the
symmetrical alignment of the walls, both Wall A and C reflected the same amount of light (Table
C.1).
Figure C.4. Floor B radiating, Floor B and Wall C reflecting, [Adapted from Sillion, 1994].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 91
In the final case, Wall A and Floor B both emit and reflect light. We note that the illumination for
Wall C goes up.
Figure C.5. Wall A and Floor B radiating, all walls reflecting, [Adapted from Sillion, 1994].
Table C.1 Quantitative results for Infinite Shelf environment. [Adapted from Sillion, 1994]
Reflectivity
ρ
ρ
ρ
A
B
C
Emissivity
ε
ε
ε
A
B
C
Radiosity
M
M
M
A
B
C
Configuration 1
0
1 2
1 3
/
/
1
0
0
1
011660
010354
.
.
Configuration 2
1 10
1 2
1 3
/
/
/
1
0
0
100709
011743
010428
.
.
.
Configuration 3
1 2
0
1 2
/
/
0
1
0
0 21133
1
0 21133
.
.
Configuration 4
1 10
1 10
1 2
/
/
/
1
1
0
104647
0 02906
0 32853
.
.
.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 92
Appendix D
Walk-throughs Screen Snapshots
D.1 Introduction
A video on 12 walk-throughs were done along the foyer of School of Computer Studies (University
of Leeds). The purpose of the walk-throughs is for illustration of our second method - Motion
Prediction using Point Distribution Model. The actual videos can be found in the thesis CDROM,
encoded in Quick-time movie format. Due to the present limitation of 2D report, we have included
the snapshots of various stages of the walk-throughs - initial stage (0%), one-third (33%), two-thirds
(67%) and final stage (100%).
D.1.1 Initial Stage Snapshots
Radiosity for VR Systems University of Leeds
T S L Yeap Page 93
D.1.2 One-third Stage Snapshots
D.1.3 Two-third Stage Snapshots
Radiosity for VR Systems University of Leeds
T S L Yeap Page 94
D.1.4 Final Stage Snapshots
Radiosity for VR Systems University of Leeds
T S L Yeap Page 95
Appendix E
Contents of Book - “Selected Papers on Radiosity”
This appendix describe the content of the book accompanying the Thesis. The book consist of a
collection of papers which was conceived during our research on radiosity, in particular for Virtual
Reality applications. The first paper on radiosity appeared fourteen years ago [Goral et al., 1994].
Since then, research into radiosity has become very popular in the computer graphics field. To date,
there are few good books which cover the subject of radiosity [Cohen et al. 1993][Ashdown,
1994][Sillion et al, 1994]. However, many times in the books, the details of specific technique can
only be found in the original papers, as such, during the course of our research, we often had to seek
reprints directly from the authors of those papers. We were kindly received by those authors who
have provided us either with the original scripts or with electronic postscripts. A source book
containing a selection from the more outstanding material seems appropriate to supplement the texts;
hence the book.
We believe that the book would benefit radiosity researchers as well as final year graduate or
postgraduate students doing a course involving radiosity as either part of a module or as a complete
module itself.
During our research, we classified the radiosity papers and publications into four main categories;
(1) Radiosity and related works, (2) software acceleration techniques, (3) hardware acceleration
techniques and (4) radiosity for VR applications. In the book, in addition to the four categories, we
have included another category - Suggestive techniques in radiosity for VR applications. Papers in
the latter category are techniques that have not yet been applied to radiosity but were suggested to be
suitable for doing so, in this thesis.
The criteria for including a paper in this anthology were determined by considering the perspective
and insight it would afford potential readers interested in radiosity and radiosity for VR applications.
All radiosity materials, including this thesis, links to on-line radiosity papers and publications and
many more can be found online [Yeap et al., 1997b][Yeap, 97c].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 96
Below is an extract from the Table of Content from the book:
Preface Section 1: Radiosity and Related Works Modeling the Interaction of Light Between Diffuse Surfaces . . . . . . . . . . . . . 1 Goral C. M., Torrance K.E., Greenberg D. P. and B. Battaile (1984) Radiosity Online: A Bibliography . . . . . . . . . 6 Ashdown I and Eric H. (1994) Section 2: Software Acceleration Techniques for Radiosity Geometric Simplification for Indirect Illumination Calculations . . . . . . . . . . . . . . . 8 Rushmeier H., Patterson C. and Veerasamy A. (1993) Efficient Rendering of Radiosity using Textures and Bicubic Reconstruction . . . . . . . . . . . . 13 Basto R., Goslin M. and Zhang H. (1995) Direct Lighting Calculation by Monte Carlo Integration . . . . . . . . . . . . . . . 15 Shirley P. and Wang C (1994) Time Complexity of Monte Carlo Radiosity . . . . . . 19 Shirley P. (1991) Hierarchical Solution Techniques for Realistic Rendering . . . . . . . . . . . . . . . 23 Sillion F. (1995)
Efficient Hierarchical Refinement and Clustering for Radiosity in Complex Environments . . . . . . . 26 Gibson S. and Hubbold R. (1996) Wavelet Projections for Radiosity . . . . . . . . . 33 Schroder P., Gortler S., Cohen M., and Hanarahan P. (1993) Importance and Discrete Three Point Transport . . . . . . 35 Aupperle L. and Hanrahan P. (1993) An Importance Driven Monte-Carlo Solution to the Global Illumination Problem . . . . . . . . . 40 Blasi P., Saec B. and Schlick C. ((1994) An Empirical Comparison of Progressive and Wavelet Radiosity . . . . . . . . . . . . . 44 Willmot A. and Heckbert P. (1997)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 97
Hybrid Radiosity / Monte Carlo Methods . . . . . . . 50 Shirley P. (1994) Iterative methods for fast radiosity solutions . . . . . . 62 Baranoski G., Bramley R and Shirley P. (1995) Metropolis Light Transport . . . . . . . . . . . 81 Veach E. and Guibas L. (1997)
Efficient Radiosity in Dynamic Environments . . . . . 87 Forsyth D., Yang C. and Teo K. (1994) Section 3: Hardware Acceleration Techniques for Radiosity Parallel Progressive Radiosity with Adaptive Meshing . . . . . . . . . . . . . . . 95 Yu Y., Ibarra O. and Yang T. (1996) Progressive Refinement Radiosity on Ring-Connected Multicomputers . . . . . . . . . 105 Capin T., Aykanat C. and Oezguec B. (1993) Light, The Universe and Parallel Radiosity . . . . . . . 108 Brodsky A. (1996) Partitioning and Parallel Radiosity . . . . . . . . . 119 Merzouk S., Winkler C., Paul J. (1995) A Radiosity System for Real Time Photo-Realism . . . . . 122 Stuttard D., Worrall A., Paddon D., Willis C. (1995) Parallel Radiosity without Form Factors . . . . . . . . 127 Langer M., Breton P., Zucker S. (1993) Section 4: Radiosity for VR applications Virtual Radiosity . . . . . . . . . . . . . 138 Möller T. (1995) Radiosity Techniques for Virtual Reality - Faster Reconstruction and Support for Levels of Details . . . . 162 Möller T. (1996) Interactive update of Global illumination using a Line-space Hierarchy . . . . . . . . . 166 Drettakis G. and Sillion F. (1997)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 98
Section 5: Suggestive Techniques to Radiosity for VR Applications Generating Multiple Levels of Detail from Polygonal Geometry Models . . . . . . . . . 170 Schaufler G. and Stürzlinger W. (1995) Generating Various Levels of Detail of Architectural Objects for Image-Quality and Frame-Rate Control Rendering . . . . . . . . . . 175 Belblidia S., Perrin J. and Paul J. (1996) Learning Spatiotemporal Models From Training Examples . . . . . . . . . . . . . . . 178 Baumberg A., Hogg D. (1995) Learning the Distribution of Object Trajectories for Event Recognition . . . . . . . . . . . 186 Johnson N. and Hogg D. (1995) Polygonal Simplification: An Overview . . . . . . . . 191 Erikson C. (1996) Progressive Mesh . . . . . . . . . . . . . 208 Hoppe H. (1996) Progressive Simplical Complexes . . . . . . . . . 213 Hoppe H. (1997) Mesh Optimization . . . . . . . . . . . . 217 Hoppe H. (1993) Simplification Envelopes . . . . . . . . . . . 232 Cohen J, Varshney A., Manocha D., Turk G., Weber H., Agarwal P., Brooks F. and Wright W. (1996)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 99
Appendix F
Contents of CDROM
This appendix describe the content of the CDROM accompanying the Thesis. The resources are
deliberately compiled using Hypertext Mark-up Language (HTML), which can be viewed with any
web browser such as Microsoft Internet Explorer or Netscape Navigator. The first file in the
CDROM in the root directory to be loaded into the browser is WELCOME.HTM. Upon loaded, a
logo page will be featured (See Appendix A, HTML.Figure 1 Thesis CDROM: Front Page). There
are twelve main sections altogether in the CDROM namely: (1) Abstract; (2) Thesis; (3)
Selected Papers on Radiosity; (8) Radiosity Papers on the Net; (9) Radiosity Abstracts &
Bibliography Library; (10) People & Groups; (11) Auto Demo; (12) etc.
F igure F .1 Thes i s CDROM: Main Menu .
Radiosity for VR Systems University of Leeds
T S L Yeap Page 100
: Thesis Abstract in HTML.
: Thesis Cover, TOC, Chapters, Appendix and Bibliography. Take note that this section requires browsers that support JAVA.
: Where I thank all those people who have kindly given to me of their time, energy and support in the production of this Thesis, CDROM and Book.
: Contains images that uses various CG techniques: (1) Flat shading; (2) Gouraud shading; (3) Phong Shading; (4) Ray Tracing; (5) Radiosity and various other hybrids techniques
: Contains walk-throughs that were used as examples in the main thesis. In addition, additional videos and VRML resources from Lightscape, Lightworks, Jacob and Johnson.
: Contains several radiosity renderers (Shareware, Freeware or Research products) for different platform such as PC, Linux, Solaris Sparc, Irix, SGI, etc.
: This is the electronic complement of our text book accompanying this thesis. In addition, we include papers and theses that were not included in the book, mainly due to their size.
: A one-stop place for radiosity papers/publications/theses/ technical reports that can be found on the Internet.
: An annotated collection of radiosity abstracts from Inspec and Dissertations Abstracts, and various radiosity bibliographies engines on the Internet.
: A collection of peoples’ homepage from the academia and research organisations, various CG Groups and useful links to radiosity resources on the Internet.
: Upon clicking this option, we will present a slide-show of selected materials in the CDROM. Good for hands-free demonstration.
: List of miscellaneous resources: Report documents, 3D Studio source, Povray source, original bibliographies collection, survey, etc.
Bibliography Abbott E. (1952). Flatland. Dover Publications, Mineola, New York. Airey J., Rohlf J. and Brooks F. (1990). Towards Image Realism with Interactive Update Rates in Complex Virtual Building Environments. Computer Graphics (1990 Symposium on Interactive 3D Graphics) 24:2, pp 41-50. Anderson J. (1995). An introduction to Neural Networks. MIT Press. Cambridge, Massachusetts. Arvo J. (1986). Backward ray tracing. SIGGRAPH ’86 Developments in Ray Tracing seminar notes. Arvo J. and Kirk D. (1987). Fast ray tracing by ray classification. Computer Graphics (Siggraph 87’ Proceedings) 21:4, pp 55-64 Asensio F. (1992). A Hierarchical Ray-Casting Algorithm for Radiosity Shadows. Third Eurographics Workshop on Rendering, pp 179-188, Bristol, UK. Aupperle L and Hanrahan P (1993), A Hierarchical Illumination Algorithm for Surfaces with Glossy Reflection. Department of Computer Science, Princeton University. Princeton, NJ. Ashdown I. (1994). Radiosity: A Programmer’s Perspective. Wiley, Canada. Ashdown I. (1995). "Photometry and Radiometry: A Tour Guide for Computer Graphics Enthusiasts," Course 1: Realistic Input for Realistic Images. ACM SIGGRAPH Annual Conference, August 6-11, Los Angeles, CA. Ashdown I. (1997). Radiosity Related Bibliographies. <ftp://www.ledalite.com/pub/radbib97.bib>. Aykanat C, Capin T. and Ozguc B. (1993). A Parallel Progressive Radiosity Algorithm Based on Patch Data Circulation. Faculty of Engineering and Science, Bilkent University. Ankara, Turkey. Baranoski G. and Garcia L. (1992). A Parallel Strategy to Improve the Calculation of Form Factors. Proceedings of the Second International Conference on Computational Graphics and Visualization Techniques (Compugraphics '92), pp = 74-81. Lisbon, Portugal. Bartels R., Beatty J. and Barsky B. (1987). An Introduction to Splines for Use in Computer Graphics and Geometric Modeling, Morgan Kaufmann. Los Altos, CA. Baumberg A. and Hogg D. (1993). Learning Flexible Models from Image Sequences. Technical Report. University of Leeds. Baumberg A. and Hogg D. (1994). Learning flexible models from image sequences. Proceedings of European Conference on Computer Vision. Pp 299-308. Baumberg A and Hogg D. (1995). Learning Spatiotemporal Models from Training Examples. Technical Report. University of Leeds.
Basto R., Goslin M. and Zhang H. (1995). Efficient Rendering of Radiosity using Textures and Bicubic Reconstruction. Technical Report. Department of Computer Science, University of North Carolina. Chapel Hill. Beseuievsky G. and Sbert M (1996). The Multi-Frame Lighting Method: A Monte Carlo Based Solution for Radiosity in Dynamic Environments. Rendering Techniques '96 (Proceedings of the Seventh Eurographics Workshop on Rendering), pp = 185-194. Springer-Verlag/Wien. New York, NY. Blana E. (1996a). The Leeds Advanced Driving Simulator: Three Years in Operation. Working Paper 472. Institute of Transport Studies. University of Leeds. United Kingdom. Blana E. (1996b). Driving Simulator Validation Studies: A Literature Review. Working Paper 480. Institute of Transport Studies. University of Leeds. United Kingdom. Blana E. (1996c). A Survey of Driving Research Simulators Around the World. Working Paper 481. Institute of Transport Studies. University of Leeds. United Kingdom. Blinn J. and Newell M. (1976). Texture and reflection in computer generated images. Communications of ACM, 19(10), pp 542-547. Bu J. and Deprettere E. (1989). A VLSI System Architecture for High-Speed Radiative Transfer 3D Image Synthesis, The Visual Computer 5:3, pp 121-133. Bekaert P. and Willems Y. (1995). Importance-Driven Progressive Refinement Radiosity. Rendering Techniques '95 (Proceedings of the Sixth Eurographics Workshop on Rendering), pp 316-325. Springer-Verlag, New York, NY. Beran-Koehn J. and Pavicic M (1991). A Cubic Tetrahedral Adaptation of the Hemi-Cube Algorithm. Graphics Gems II, pp 299-302, Academic Press Professional, Boston, MA. Bhate N. (1993). Photorealistic Volume Rendering. Ph.D. Thesis. University of South Florida. Bhate N. (1993b). Application of Rapid Hierarchical Radiosity to Participating Media. Proceedings of ATARV-93: Advanced Techniques in Animation, Rendering, and Visualization. pp 43-53. Bilkent University. Ankara, Turkey. Bian B. and Wittels N. (1991). Accurate Image Simulation by Hemisphere Projection, Proceedings of SPIE/IS&T, volume = 1453, San Jose, CA. Bouknight W. J. (1970). “A Procedure for Generation of Three-dimensional Half-toned Computer Graphics Representation”. Communications of ACM 13:9, pp 292-301. Dionys B. (1965). Sphereland. Apollo Editions, New Yoek, 1965. Translated by Cornelie J. Rheinboldt. Capin T., Aykanat C. and Oezguec B. (1993). Progressive Refinement Radiosity on Ring-Connected Multicomputers. Proceedings of the 1993 Parallel Rendering Symposium, pp 71-76. ACM. San Jose, CA. Chalmers A and Paddon D. (1990).Parallel Radiosity Methods. Transputer Research and Applications (Proceedings NATUG 4) 4, pp 183-193, IOS Press. Ithaca, NY.
Chen S. and Williams L. (1993). View interpolation for image synthesis. Proceedings of SIGGRAPH 93’, pp 279-288. Chung S (1990). A Parallel Radiosity Method for Shared Memory Multiprocessors. Ph. D. thesis. Washington State University. Cohen J, Varshney A., Manocha D., Turk G., Weber H., Agarwal P., Brooks F. and Wright W. (1996) Simplification Envelopes. ACM SIGGRAPH ’96 Proceedings. Cohen M. and Greenberg D. (1985). The Hemi-Cube: A Radiosity Solution for Complex Environments. Computer Graphics (ACM SIGGRAPH '85 Proceedings) 19:3:31-40. Cohen M., Greenberg D., Immel D. and Brock P. (1986). An efficient radiosity approach for realistic image synthesis. IEEE Computer Graphics and Applications 6:3, pp 26-35. Cohen M., Chen E, Wallace J. and Greenberg D. (1988). A Progressive Refinement Approach to Fast Radiosity Image Generation. Computer Graphics (ACM SIGGRAPH '88 Proceedings) 22:4, pp 75-84. Cohen M. and Wallace J. (1993). Radiosity and Realistic Image Synthesis. Academic Press. San Diego, California. Cootes T., Taylor C., Cooper D. and Graham J. (1992). Training models of shape from sets of examples. Proceedings of British Machine Vision Conference, pp 9-18. Cruz C. (1991). Understanding Neural Networks: A Primer. Cutter Information Corp. MA. Drettakis G. and Sillion F. (1997). Interactive Update of Global Illumination Using A Line-Space Hierarchy. To be appeared in ACM Siggraph 97’. Dugger G. (1989). Parallelization of the Radiosity Model. M.Sc. thesis. Department of Computer Science, Southern Illinois University, Carbondale. Dutre P. and Willems Y. (1994). Importance-Driven Monte Carlo Light Tracing. Fifth Eurographics Workshop on Rendering, pp 185-194. Darmstadt, Germany. Elias P., Feda M., Ferschin P. and Purgathofer W. (1994). Cubic Monte Carlo Radiosity. Proceedings of the Winter School of Computer Graphics and CAD Systems '94, pp 9-19. University of West Bohemia. Plzen, Czech Republic. Erikson C. (1996). Polygonal Simplification: An Overview. Dept. of Computer Science, University of North Carolina, Chapel Hill, Technical Report. EUROGRAPHICS (1997). < http://www.sztaki.hu/conferences/eg97/>, The 18th Annual conference of the European Association for Computer Graphics. Fahlman S. (1988). An Empirical Study of Learning Speed in Back-Propagation Networks. Technical Report. Carnegie-Mellon University. Feda M. and Purgathofer W. (1993). Progressive Ray Refinement for Monte Carlo Radiosity. Fourth Eurographics Workshop on Rendering (Eurographics Technical Report), EG 93 RW, pp 15-26. Paris, France.
Feda M. (1996). A Monte Carlo Approach for Galerkin Radiosity. The Visual Computer 12(8), pp 390-405. Foley J., Dam A., Feiner S. and Hughes J. (1990). Computer Graphics. 2nd Edition. Addison-Wesley Publishing, Reading. Massachusetts. Forsyth D., Yang C. and Teo K. (1994). Efficient Radiosity in Dynamic Environments. Fifth Eurographics Workshop on Rendering, pp 313-323. Darmstadt, Germany. Freeman M. H. (1990). Optics. Tenth Edition. Funkhouser T. (1996). Database Management for Interactive Display of Large Architectural Models Proceedings of Graphics Interface '96, pp1-8, Morgan Kaufmann, San Francisco, CA. Funkhouser T. and Séquin C. (1993). Adaptive display algorithm for interactive frame rates during visualization of complex virtual environments. Computer Graphics (SIGGRAPH ’95 Proceedings), pp 247-254. Gautam B., Santosh A. and Westervelt F. (1993). Parallel Radiosity Computation on a Shared Memory Multiprocessor. Proceedings of the 36th Midwest Symposium on Circuits and Systems 1, pp 165-168. IEEE. Wayne State University, Detroit, MI. Gershbein R., Schroder P. and Hanrahan P. (1994). Textures and Radiosity: Controlling Emission and Reflection with Texture Maps. Computer Graphics Proceedings. ACM Siggraph. Gershbein R., Schröder P. and Hanrahan Pat (1996). Textures and Radiosity: Controlling Emission and Reflection with Texture Maps. Technical Report. Department of Computer Science. Princeton University. Gibson S. (1995). Efficient Radiosity for Complex Environments. M.Sc. Thesis. University of Manchester. Department of Computer Science. Manchestor, UK. Glassner A. (1989). An Introduction to Ray Tracing. Academic Press, San Diego, CA. Glassner A. (1995). Principles of Digital Image Synthesis. Morgan Kaufmann Publisher, Inc. San Francisco, CA. Goldberg D. (1988). Genetic Algorithms in Machine Learning, Optimization, and Search. Addison-Wesley, Reading. Goldfeather J. (1989). Progressive Radiosity Using Hemispheres. Dept. of Computer Science, University of North Carolina, Chapel Hill, Technical Report. Goldman J. (1995). Parallel Progressive Refinement and Projection-based Discontinuity Meshing for Radiosity. M.Sc. thesis. University of Illinois at Chicago. Chicago, IL. Gouraud H. (1971). “Illumination for Computer Generated Pictures”. Communications of ACM 18:6, pp 311-317. Goral C. M., Torrance K.E., Greenberg D. P. and B. Battaile (1984). “Modelling the Interaction of Light between Diffuse Surfaces”, Computer Graphics (ACM SIGGRAPH ’84 Proceedings) 18(3):213-222.
Gortler S., Schroder P., Cohen M. and Hanrahan P. (1993). Wavelet Radiosity. Computer Graphics, (ACM SIGGRAPH '93 Proceedings), pp 221-230. Gose E., Johnsonbaugh R. and Jost S. (1996). Pattern Recognition and Image Analysis. Prentice Hall. New Jersey. Graphics Interface (1997). <http://www.dgp.utoronto.ca/gi/gi97/home.html>, Graphics Interface ’97. Grum F., Bercherer, R. (1979). Optical Radiation Measurements, Volume 1, Radiometry. Academic Press, California. Haines E. and Greenberg D. (1986). The light buffer: A shadow testing accelerator. IEEE Computer Graphics and Applications 6:9 , pp 6-16. Hanrahan P. and Salzman D. (1990). A Rapid Hierarchical Radiosity Algorithm for Unoccluded Environments. Department of Computer Science, Princeton University, Princeton, NJ. Hardt S. (1997). High Fidelity Radiosity Rendering at Interactive Rates. B.Sc. and M.Sc. Thesis. Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science. Cambridge, MA Heckbert P. (1986). Survey of texture mapping. IEEE Computer Graphics and Applications. 6(11), pp 56-67. Heckbert P. (1990). Adaptive radiosity textures for bidirectional ray tracing. Computer Graphics (ACM SIGGRAPH ’90 Proceeding) 24:4, pp 145-154. Heckbert P. (1991). Simulating Global Illumination Using Adaptive Meshing. Ph.D. Thesis. University of Californa, Berkeley. Heckbert P. (1992). Discontinuity Meshing for Radiosity. Third Eurographics Workshop on Rendering, pp 203-226. Bristol, UK. Heckbert P. and Garland M. (1994). Multiresolution Modeling for Fast Rendering. Proceedings of Graphics Interface ’94. Banff, Alberta. Canada. Heinrich S. and Keller A. (1994). Quasi-Monte Carlo Methods in Computer Graphics Part II: The Radiance Equation. Technical Report 243/94. University of Kaiserlautern. Hensa Technical Report Search Site (1997). <http://www.hensa.ac.uk/search/techreps/search_easy html>. Hermitage S. (1989), Radiosity in a Ray Tracing Environment, M.Sc. thesis. University of South Carolina. Holland J (1975). Adaptation in Natural and Artificial Systems. University of Michigan Press. Hoppe H. (1996). Progressive Meshes. Computer Graphics (SIGGRAPH ’96 Proceedings), pp 99-108.
Hoppe H. and Popovic J. (1997). Progressive simplicial complexes. SIGGRAPH '97 Proceedings. Hutchinson D. (1993). Monte Carlo Path Tracing for Photorealism. M.Sc. thesis. Department of Computer Science, University of Manchester. Manchester, UK. Immel D. S., Cohen, M., and Greenberg, D. P. (1986). “A Radiosity Method for Non-diffuse Environments”. Computer Graphics (ACM SIGGRAPH ’86 Proceeding) 20:4, pp 133-142. Ito T., Makino M and Oishi S. (1992). A Shading Model of Translucent Objects by Radiosity Method, Transactions of the Institute of Electronics, Information J75D-II, 11, pp 1981-1985. Jensen H. (1993). Global Illumination - Using Bidirectional Monte Carlo Ray Tracing. M.Sc. thesis. Department of Graphical Communication, Technical University of Denmark. Lyngby, Denmark. Jensen H. (1995). Importance Driven Path Tracing Using the Photon Map. Rendering Techniques '95 (Proceedings of the Sixth Eurographics Workshop on Rendering), pp 326-335. Springer-Verlag. New York. Johnson N. and Hogg D. (1995). Learning the Distribution of Object Trajectories for Event Recognition. Technical Report. University of Leeds. United Kingdom. Jolliffe I. (1986). Principal Component Analysis. New York. Springer. Kajiyama H. and Kodaira S. (1989). An Illuminance Analysis in Partitioned Spaces Using the Monte Carlo Method. Journal of the Illuminating Engineering Society 18(2), pp 93-108. Khodulev A. and Nikolay K. (1995). Efficient Form Factor Calculation by Monte Carlo Methods. Proceedings of GRAPHICON '95 1, pp 162-168. GRAFO Computer Graphics Society Press. St. Petersburg, Russia. Kochevar P (1990). Too Many Cooks Don't Spoil the Broth: Light Simulation on Massively Parallel Computers. Third Symposium on the Frontiers of Massively Parallel Computation, pp 100-109. IEEE Computer Society Press. Kohonen T. (1982). Self-organized Formation of Topologically Correct Feature Maps, Biological Cybernetics 43, 59. Kohonen T. (1984). Self-Organization and Associative Memory. Springer, Berlin, Heidelberg. Kokcsis F. and Bohme J. (1992). Fast Algorithms and Parallel Structures for Form Factor Evaluation. The Visual Computer 8:4, pp 205-216. Linsker R. (1988). Self Organization in a Perceptual Network. Computer Magazine 21, pp 105-117. Lischinski D., Smits B., Greenberg D. (1994). Bounds and Error Estimates for Radiosity. In Computer Graphics Proceedings. Annual Conference Series, ACM SIGGRAPH, pp 67-74. Lounsbery M., Derose T. and Warren (1994): Multiresolution Analysis for Surfaces of Arbitary Topological Type. Technical Report. Department of Computer Science and Engineering. University of Washington.
Matthias E., Derose T., Duchamp T., Hoppe H., Lounsbery M. and Stuetzle W. (1995). Multiresolution Analysis of Arbitrary Meshes. Computer Graphics (SIGGRAPH ’95 Proceedings), pp 173-182. Michelin S, Maffies G., Arques D. Grossetie J. (1993). Form Factor Calculation: A New Expression with Implementations on a Parallel T. Node Computer. Computer Graphics Forum (Eurographics '93) 12:3, pp C421-C432. Barcelona, Spain. Möller T. (1995). Virtual Radiosity. M.Sc. Thesis. Czech Republic. Department of Computer Engineering, Lund University of Technology. Lund, Sweden. Möller T. (1996). Radiosity Techniques for Virtual Reality - Faster Reconstruction and Support for Levels of Details. Proceedings of Fourth International Conference in Central Europe on Computer Graphics and Visualization ’96, Plzen, Czech Republic. Montana D. and Davis L. (1989). Training Feedforward Neural Networks using Genetic Algorithms. In Eleventh International Joint Conference on Artificial Intelligence, ed. Sridharan N, Morgan Kaufmann, San Mateo (1989), p. 762. Nishita, T. and Nakamae E. (1985). “Continuous Tone Representation of Three-Dimensional Objects Taking Account of Shadows and Interreflection”, Computer Graphics (ACM SIGGRAPH ’85 Proceedings) 19(3):23-30. Oja E. (1982). A Simplified Neuron Model as a Principal Component Analyzer. Journal of Mathematical Biology 15, pp 267-273. Otake T. (1995). Saccade-based Progressive Refinement Radiosity for Virtual Reality Displays. M.Sc. thesis. Department of Computer Science, University of Alabama. Perlin K. (1984). A Unified Texture/reflectance Model. Proceedings of SIGGRAPH ’84 Advanced Image Synthesis seminar notes. Phillips S., Worrall A., Willis C. and Paddon D. (1993). Adaptive Mesh Refinement for the Radiosity Method. Proceedings of Third International Conference on Computational Graphics and Visualization Techniques (Compugraphics '93), pp 178-186. Alvor, Portugal. Phong, B. (1975a). “Illumination for computer-generated pictures”. Communications of ACM 18:6. , pp 311-317. Price M. and Truman G. (1989). Parallelism Makes Light Work. Proceedings of Computer Graphics '89, pp 409-418. London, UK. Prior D. (1989). An Architecture That Exploits Parallelism in Radiosity Calculations. Proceedings of BCS Computer Graphics and Displays Group. London, UK. Renaud C. (1991). A Parallel Radiosity Implementation on a Transputer Network. Applications of Transputers 3 (Proceedings of the Third International Conference on Applications of Transputers), pp 730-735. IOS Press. Amsterdam, Netherlands. Rosenfield Azriel (1984). Multiresolution Image Processing and Analysis. Springer, Berlin. PRS (1997). http://www.icase.edu/~kma/prs97-info.html, Parallel Rendering Symposium ‘97.
Rumelhart D., Hinton G. and Williams R. (1986). Learning representation by back-propagation errors. Nature 323, pp 533-536. Rushmeier, H. E. (1986). “Extending the Radiosity Method to Transmitting and Specularly Reflecting Surfaces”, M.Sc. thesis. Program of Computer Graphics, Cornell University, Ithaca, NY. Rushmeier, H. E., and Torrance, K. E. (1990). “Extending the radiosity method to include specularly reflecting and translucent materials”. ACM Transactions on Graphics 9:1, pp 1-27 Rushmeier H. (1991).Radiosity Methods for Volume Rendering, GIT-GVU-91-01, Graphics, Visualization and Usability Center, Georgia Institute of Technology, Atlanata, GA. Rushmeier H., Patterson C. and Veerasamy A. (1993). Geometric Simplification for Indirect Illumination Calculations. Proceedings of Graphics Interface '93, pp 227-236. Morgan Kaufmann. San Francisco, CA. Sakas G and Gerth M. (1991). Sampling and Anti-aliasing of Discrete 3-D Volume Density Textures. Proceedings of Eurographics ’91, pp 87-102. Amsterdam. Holland. Sbert M., Perez F and Pueyo X. (1995). Global Monte Carlo: A Progressive Solution. Rendering Techniques '95 (Proceedings of the Sixth Eurographics Workshop on Rendering), pp 231-239. Springer-Verlag. New York, New York. Schaufler G. and Stürzlinger W. (1995). Generating Multiple Levels of Detail from Polygonal Geometry Models. Proceedings of 2nd Eurographics Workshop on Virtual Environments. Monte Carlo, Monaco. Schirmacher H. (1996). Hierarchische Volumen-Radiosity. IMMD 9 -- Computer Graphics Group, University of Erlangen. Schroeder, W. and Zarge, J. (1992). Decimation of Triangle Meshes, Computer Graphics Proceedings, SIGGRAPH '92 26(2), pp 65-68. Schutz B. (1990). A First Course in General Relativity. Cambridge University Press. New York. SCS (School of Computer Studies), School of Transport Studies and Psychology Department (1997). University of Leeds Advanced Driving Simulator. <http://mistral.leeds.ac.uk/>. Leeds, United Kingdom. Shen X. and Hogg D. (1993). Shape Models from Image Sequences. Technical Report. University of Leeds. Shen X. and Hogg D. (1995). Generic 3-D Shape Model : Acquisitions and Applications. Technical Report. University of Leeds. Shirley P. (1990). A Ray Tracing Method for Illumination Calculation in Diffuse-Specular Scenes, Proceedings of Graphics Interface '90, pp 205-212. Shirley P. (1990b). Physically Based Lighting Calculations for Computer Graphics. Ph.D. thesis. Dept. of Computer Science, University of Illinois. Urbana-Champaign.
Shirley P., Sung K. and Brown W. (1991). A Ray Tracing Framework for Global Illumination Systems. Proceedings of Graphics Interface '91, pp 117-128. Morgan Kaufmann. San Francisco, CA. Shirley P. (1991). Time Complexity of Monte Carlo Radiosity. Eurographics '91. pp 459-465. Elsevier Science Publishers. Amsterdam, North-Holland. Shirley P. and Wang C. (1992). Distribution Ray Tracing: Theory and Practice. Third Eurographics Workshop on Rendering, pp 33-43. Bristol, UK. Shirley P. (1992). Time Complexity of Monte Carlo Radiosity. Computers & Graphics 16(1), pp 117-120. Shirley P. (1994). Hybrid Radiosity/Monte Carlo Methods. Siggraph 94 Advanced Radiosity Course. Shirley P. and Wang C (1994). Direct Lighting Calculation by Monte Carlo Integration. Photorealistic Rendering in Computer Graphics (Proceedings of the Second Eurographics Workshop on Rendering), pp 54-59. Springer-Verlag. New York, NY Shirley P., Wade B., Hubbard P., Zareski D., Walter B. and Greenberg D. (1995). Global Illumination via Density Estimation. Rendering Techniques '95 (Proceedings of the Sixth Eurographics Workshop on Rendering), pp 219-230. Springer-Verlag. New York, NY. SI3DG (1997). <http://www.research.microsoft.com/research/Symp3d.htm>, 97 Symposium on Interactive 3D Graphics ’97. Siegel, R., and Howell, J. R. (1992). Thermal Radiation Heat Transfer, 3rd Edition, Hemisphere Publishing Corporation, New York. Siggraph Bibliography Search Engine (1997). <http://www.siggraph.org/publications/bibliography/bibliography.html>. SIGGRAPH (1997). <http://w3imagis.imag.fr/Membres/Fredo.Durand/Book/sig97>, Siggraph ’97. Sillion, F., Arvo, J. R., Westin, S. H., and Greenberg, D. P. (1991). “A global illumination solution for general reflection distributions”. Computer Graphics (SIGGRAPH ’91 Proceedings) 25:4, pp 187-196. Sillion, F., and Puech, C. (1989). “A general two-pass method integrating specular and diffuse reflection.” Computer Graphics (SIGGRAPH ’89 Proceedings) 23:3, pp 335-344. Sillion, F. and Puech, C. (1994). Radiosity and Global illumination. Morgan Kaufmann, San Francisco, CA. Smits B., Arvo J and Salesin D. (1992). An Importance-Driven Radiosity Algorithm. Computer Graphics (ACM SIGGRAPH '92 Proceedings) 26:4, pp 273-282. Sobierajski L. (1994). Global Illumination Models for Volume Rendering. Ph.D. Thesis. Department of Computer Science, State University of New York at Stony Brook.
Sonka M, Illavac V and Boyle R (1997). Image Processing, Analysis and Machine Vision. Chapman and Hall, 2nd Edition. Stimson, A. (1974). Photometry and Radiometry for Engineers. Wiley, NY. Sturzlinger W. (1994). Adaptive Mesh Refinement with Discontinuities for the Radiosity Method. Fifth Eurographics Workshop on Rendering, pp 239-248. Darmstadt, Germany. Sturzlinger W. (1995). Form Factor Calculation for a Parallel Radiosity Algorithm. CEI PACT D4V-6. University Linz. Sumpter N., Boyle R. and Tillett R. (1997). Modelling Collective Animal Behaviour Using Extended Point-Distribution Models. Technical Report. University of Leeds. Turk G (1992). Re-tiling polygonal surfaces. Computer Graphics (SIGGRAPH ’92 Proceedings) 26(2), pp 55-64.
Varshney A. (1991). Parallel Radiosity Techniques for Mesh-Connected SIMD Computers. M.Sc. thesis . Department of Computer Science, University of North Carolina, Chapel Hill. Vilaplana J. (1996). Parallel Form Factors Computation with Coherence Techniques. Proceedings First Eurographics Workshop on Parallel Graphics and Visualisation. Bristol, UK. Waikato radiosity references (1997). <http://www.cs.waikato.ac.nz/cgi-bin/nzdlbeta/gw?z= xD2x4&c=cstr&q=radiosity&b=Quick+Search>. Wallace, J. R., Cohen, M. F., and Greenberg, D. P. (1987). “A two-pass solution to the rendering equation: A synthesis of ray tracing and radiosity methods”. Computer Graphics (SIGGRAPH ’87 Proceedings) 21:4, pp 311-320. Wallace J. (1988). A Two-Pass Solution to the Rendering Equation: A Synthesis of Ray Tracing and Radiosity Methods. M.Sc. thesis. Program of Computer Graphics, Cornell University, Ithaca, NY. Wu E. H. (1995).A Radiosity Solution for Random Fractal Surfaces, The Journal of Visualization and Computer Animation 6:4, pp 219-230. Yeap T., Henderson S., Brodlie K. (1997). Computer Graphics at University of Leeds. United Kingdom. <http://www.scs.leeds.ac.uk/cuddles/> Yeap, T. (1997b). T-Rex Footprints. Singapore. <http://tralvex.com> Yu Y., Ibarra O. and Yang T. (1996). Parallel Progressive Radiosity with Adaptive Meshing. Lecture Notes in Computer Science (Parallel Algorithms for Irregularly Structured Problems) 1117, pp 159-172. Springer-Verlag. Berlin, Germany. Zareski D., Wade B., Hubbard P. and Shirley P. (1995). Efficient Parallel Global Illumination Using Density Estimation. IEEE/ACM 1995 Parallel Rendering Symposium (PRS '95). Atlanta, Georgia.