Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
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
University of Leeds Leeds, United Kingdom
August 1997
© University of Leeds 1997
University of Leeds
Abstract
Radiosity for Virtual Reality Systems
Supervisor : Professor Graham M. Birtwistle
The synthesis of actual and computer generated photo-realistic images has been the
aim of artists and graphic designers for many decades. Some of the most realistic
images were generated using radiosity techniques. Unlike ray tracing, radiosity
models the actual interaction between the light and its environment. In photo
realistic Virtual Reality (VR) environments, the need for quick feedback based on
user actions is crucial. It is generally recognised that traditional implementation of
radiosity is computationally very expensive and therefore not feasible for use in VR
systems where practical data sets are of huge complexity.
To achieve photo-realism in images, we look into what radiosity can offer and the
current state of art by doing a radiosity trend analysis. In addition, we also review
several acceleration techniques which are suitable for applying radiosity in the
synthesis of VR environments.
Finally, we introduce two new methods and several hybrid techniques to the
radiosity research community for using radiosity in VR applications.
Acknowledgements
This thesis would have been mission impossible if not for all those mentioned here. Many many
thanks to:
Ian Ashdown, an advisor as well as a friend whom I met on the Internet for sharing his knowledge in
radiosity as well as his wide bibliographic collection on radiosity literature (more than 1100 papers).
This has allowed me to do a radiosity trends analysis based on his bibliography as well as speeding
up my search for specific paper.
Prof. Donald P. Greenberg, Prof. Philip M. Hubbard, Dr. Al Z, Dr. Brian Smits, Dr. Eric Lafortune,
Dr. Erik Robson, Dr. Luc Renambot, Dr. Neil Gatenby, Dr. Sumant Pattanaik, Ali Anghaie,
Antonio Costa, Abraham Kee, Defee Pawel, Erik Robson, Gregory Ward, Ian Ashdown, Luc
Renambot, Martin Thompson, Neil Gatenby, Rakesh Malik, Rob Love, Terrance Wong, Wim
Dumon who took part in the survey correspondences on radiosity, sharing their practical experiences
and knowledge.
Graham Birtwistle for recommending Brian and Prezemek since day 1 of this thesis. Thanks for
being a wonderful supervisor and for proof-reading all the drafts. I am always amazed by his
creativity such as his suggestions on doing a trends analysis, the idea on thesis road maps, the
compilation on "Selected Papers on Radiosity" book and many other brilliant recommendations.
Wow!
Tracy Goh, my beloved fiancee for devoting enormous amount of time and effort in proof-reading
the drafts and also for her unlimited love and support throughout the M. Sc. programme, which kept
me emotionally strong and going.
Dennis Bell (MA in Education) and Azman Said (was an English teacher now doing MA in Mass
Communication) for proof-reading my drafts.
Dan Yeap for working on the SysEng logo (back in 1995) and correspondences on Computer
Graphics - rendering aspects and the more complicated part of 3D Studio v4.0.
Ken Brodlie and Terence Fernando for introducing me to the theoretical world of Scientific
Visualisation and Advanced Computer Graphics, which otherwise I would be still stuck in the
hacking world of CG!
Ong Lee Haw and Lim Huiling for beta-testing the web materials in the CDROM using various web
browers.
Stuart Butterfield and Neil Sumpter for helping me out with the camcorder and the CDROM
authoring.
SCS Support for rendering their unlimited help and support in terms of the computing facilities.
Brian Wyvill for giving me the initial boost by showing my where to find good sources of
information for Computer Graphics - Radiosity materials, in particular works by Donald P.
Greenberg.
Przemek Prusinkiewicz for recommending useful books on radiosity since day 1.
Neo Kwakwa (reading MSc in Combustion and Energy, LU) who shared with me, his knowledge in
radiative heat transfer concepts and materials.
Defence Science Organisation for expressing their interest in my thesis, which inspired me to do an
even better thesis!
Classic FM UK Radio Broadcasting station for supplying me unlimited doses of excellent classical
music to boost my brain power and inspiration for this thesis and the M. Sc. programme!
Mary Morris (place where I stayed) M flat shower room, where many knotty problems in the
understanding of radiosity were solved. Very eerie but true.
Contents
1 Introduction 1
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Goal of This Work . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Organisation of Thesis . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Research Methods . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.5 Our Contributions . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Radiometry and Photometry 4
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Mathematics Preliminary . . . . . . . . . . . . . . . . . . . . . 5
2.2.1 Solid Angles . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 Radiometry . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3.1 Radiant Energy . . . . . . . . . . . . . . . . . . . . . . . 7
2.3.2 Radiant Flux (Radiant Power) . . . . . . . . . . . . . . . . . 7
2.3.3 Irradiance and Radiant Exitance . . . . . . . . . . . . . . . . 8
2.3.4 Radiant Intensity . . . . . . . . . . . . . . . . . . . . . . 8
2.3.5 Radiance . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4 Photometry . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.4.1 Luminous energy . . . . . . . . . . . . . . . . . . . . . . 11
2.4.2 Luminous Flux . . . . . . . . . . . . . . . . . . . . . . . 11
2.4.3 Illuminance and Luminous Exitance . . . . . . . . . . . . . . 11
2.4.4 Luminous Intensity . . . . . . . . . . . . . . . . . . . . . 11
2.4.5 Luminance . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3 Traditional Illumination and Shading Models 13
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.2 Illumination Models . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2.1 Ambient Reflection. . . . . . . . . . . . . . . . . . . . . . 14
3.2.2 Diffuse Reflection . . . . . . . . . . . . . . . . . . . . . . 14
3.2.3 Specular Reflection . . . . . . . . . . . . . . . . . . . . . 15
3.3 Shading Models . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.1 Flat Shading . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.2 Gouraud Shading . . . . . . . . . . . . . . . . . . . . . . 16
3.3.3 Phong Shading . . . . . . . . . . . . . . . . . . . . . . . 16
3.3.4 Ray Tracing . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4 Radiosity Principles 18
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.1.1 Lambertian Surfaces . . . . . . . . . . . . . . . . . . . . . 19
4.2 Radiosity Rendering Pipeline . . . . . . . . . . . . . . . . . . . . 21
4.3 Meshing the Environment . . . . . . . . . . . . . . . . . . . . . 21
4.3.1 Uniform Mesh . . . . . . . . . . . . . . . . . . . . . . . 22
4.3.2 Higher Density Uniform Mesh . . . . . .. . . . . . . . . . . 23
4.3.3 Non-uniform Mesh . . . . . . . . . . . . . . . . . . . . . 23
4.4 The Radiosity Equation . . . . . . . . . . . . . . . . . . . . . . 24
4.4.1 Concept of Form Factor . . . . . . . . . . . . . . . . . . . 24
4.4.1.1 Form Factors between Differential Areas . . . . . . . . 25
4.4.1.2 Form Factors between Finite Area Patches . . . . . . . . 26
4.4.1.3 Reciprocity Relationship between Form Factors . . . . . 27
4.4.1.4 Summation Relation . . . . . . . . . . . . . . . . . 27
4.4.1.5 Assumptions . . . . . . . . . . . . . . . . . . . . 27
4.4.2 Form Factor Computation using Hemicube . . . . . . . . . . . 28
4.5 The Radiosity Equation Revisited . . . . . . . . . . . . . . . . . . 29
4.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5 Radiosity Trend Analysis 31
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2 Trend Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.3 Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.3.1 Class R Literature Review . . . . . . . . . . . . . . . . . . 33
5.3.2 Class S Literature Review . . . . . . . . . . . . . . . . . . 34
5.3.3 Class H Literature Review . . . . . . . . . . . . . . . . . . 35
5.3.4 Class V Literature Review . . . . . . . . . . . . . . . . . . 36
5.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
6 Accelerated Techniques for Radiosity 37
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.1.1 What is Virtual Reality? . . . . . . . . . . . . . . . . . . . 38
6.2 Extended Radiosity Pipeline . . . . . . . . . . . . . . . . . . . . 38
6.3 Accelerated Techniques for Surface Meshing Stage . . . . . . . . . . 39
6.3.1 Adaptive Meshing . . . . . . . . . . . . . . . . . . . . . . 39
6.3.2 Radiosity Textures . . . . . . . . . . . . . . . . . . . . . 40
6.4 Accelerated Techniques for Form Factor Computation Stage . . . . . . . 42
6.4.1 Monte Carlo Methods for Radiosity . . . . . . . . . . . . . . 43
6.5 Accelerated Techniques for Solving Radiosity Equation Stage . . . . . 45
6.5.1 Progressive Radiosity . . . . . . . . . . . . . . . . . . . . 45
6.5.2 Parallel Progressive Radiosity . . . . . . . . . . . . . . . . . 47
6.6 Accelerated Techniques for Virtual Reality Engine Stage . . . . . . . 49
6.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7 Novel Approaches for VR Applications 50
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.2 First Novel Approach . . . . . . . . . . . . . . . . . . . . . . . 51
7.2.1 Background: Progressive Meshes . . . . . . . . . . . . . . . 52
7.2.2 Progressive Meshes Progressive Radiosity . . . . . . . . . . . . 53
7.2.3 A Parallel Solution for PMPR . . . . . . . . . . . . . . . . . 56
7.2.4 Potential Hybrids . . . . . . . . . . . . . . . . . . . . . . 58
7.3 Second Novel Approach . . . . . . . . . . . . . . . . . . . . . . 60
7.3.1 Background: Point Distribution Model . . . . . . . . . . . . . 61
7.3.2 Background: Neural Networks. . . . . . . . . . . . . . . . . 62
7.3.3 Motion Prediction with PDM . . . . . . . . . . . . . . . . . 63
7.3.4 Potential Hybrids . . . . . . . . . . . . . . . . . . . . . . 66
7.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
8 The Road Ahead and Conclusion 66
8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
8.2 The Road Ahead . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.4 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
A Colour Figures 72
B Radiosity Survey Results 79
B.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
B.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
B.2.1 Is radiosity your preferred solution for generating realistic images?
Why? If not, what are yours? . . . . . . . . . . . . . . . . . 80
B.2.2 What are the radiosity renderers in the market? . . . . . . . . . . 82
B.2.3 What are the efficient ways to speed up computation of radiosity? . . 82
B.2.4 What are the alternatives which produce better quality images than
radiosity, or in general, for global illumination solutions? . . . . . 83
B.2.5 Where are the good places to look for radiosity resources? . . . . . 84
B.2.6 What is the future for radiosity in computer graphics? . . . . . . . 84
B.3 Actual Email Message Questionnaire/Survey . . . . . . . . . . . . . . 86
C Radiosity Illustrations 87
C.1 Illustrations . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
D Walk-throughs Screen Snapshots 90
D.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
D.1.1. Initial Stage Snapshots . . . . . . . . . . . . . . . . . . . . 90
D.1.2 One-third Stage Snapshots . . . . . . . . . . . . . . . . . . 91
D.1.3 Two-third Stage Snapshots . . . . . . . . . . . . . . . . . . 91
D.1.4 Final Stage Snapshots . . . . . . . . . . . . . . . . . . . . 92
E Contents of Book - “Selected Papers on Radiosity” 93
F Contents of CDROM 97
Bibliography
List of Figures
1.1 Thesis Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1 Chapter 2 Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 (a) A two dimensional circle with angle, θ.
(b) A three-dimensional sphere with solid angle, ω. . . . . . . . . . . . . . . 5
2.3 A ray of light intersecting a surface . . . . . . . . . . . . . . . . . . . . 6
2.4 (a) Irradiance. (b) Radiant exitance. . . . . . . . . . . . . . . . . . . . . 8
2.5 (a) Radiance (arriving). (b) Radiance (leaving). . . . . . . . . . . . . . . . 9
2.6 Luminous efficiency function. . . . . . . . . . . . . . . . . . . . . . . 10
3.1 Chapter 3 Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.2 Spheres shaded showing variation of magnitude in ambient component over the
surface of each sphere. . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3 Spheres shaded showing variation of magnitude in diffuse component over the
surface of each sphere. . . . . . . . . . . . . . . . . . . . . . . . . 14
3.4 Spheres shaded showing variation of magnitude in specular component over the
surface of each sphere. . . . . . . . . . . . . . . . . . . . . . . . . 15
3.5 Toy duck using flat shading. . . . . . . . . . . . . . . . . . . . . . . .
15
3.6 Toy duck using Gouraud shading. . . . . . . . . . . . . . . . . . . . . 16
3.7 Toy duck using Phong shading. . . . . . . . . . . . . . . . . . . . . . 16
3.8 Ray traced Glasses. . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.1 Chapter 4 Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2 Design Studio of the Future (a) Actual photo. (b) Radiosity image. . . . . . . . . 19
4.3 Reflection from a Lambertian surface. . . . . . . . . . . . . . . . . . . . 20
4.4 Graphics Pipeline for Radiosity. . . . . . . . . . . . . . . . . . . . . . 21
4.5 A room with a chair in patches. Scene generated using Helios. . . . . . . . . . . 21
4.6 (a) Uniform mesh. (b) Uniform mesh, with shaded errors. . . . . . . . . . . . 22
4.7 (a) Higher density uniform mesh.
(b) Higher density uniform mesh, with shaded errors. . . . . . . . . . . . . . 23
4.8 (a) Non-uniform mesh. (b) Non-uniform mesh, with shaded errors. . . . . . . . . 23
4.9 Patch Ej receiving flux Φij from patch Ei. . . . . . . . . . . . . . . . . . . 25
4.10 Form factor geometry between two differentiate patches. . . . . . . . . . . . 25
4.11 Form factor FdEi-Ej determination by area integration over Ej. . . . . . . . . . . 26
4.12 Form factor FEi-Ej determination by area integration over Ei and Ej. . . . . . . . . 26
4.13 (a) Planar surface. (b) Convex surface. (c) Concave surface. . . . . . . . . . . 27
4.14 Projecting patch Ej onto the cells of a hemicube. . . . . . . . . . . . . . . .
28
5.1 Chapter 5 Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2 Graph Plot of Radiosity Trend Analysis. . . . . . . . . . . . . . . . . . . 32
6.1 Chapter 6 Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.2 Extended Graphics Pipeline for Radiosity. . . . . . . . . . . . . . . . . . 38
6.3 Acceleration Techniques for Surface Meshing Stage. . . . . . . . . . . . . . 39
6.4 (a) Low density mesh. (b) Adaptive Mesh. . . . . . . . . . . . . . . . . . 39
6.5 Algorithm: Adaptive meshing. . . . . . . . . . . . . . . . . . . . . . . 40
6.6 Converting a mesh into uv-space to generate a texture map. . . . . . . . . . . . 40
6.7 Rex node data structure modified to C++ like structure. . . . . . . . . . . . . 41
6.8 Frame rates comparison for Adaptive mesh vs Texture Mapping for radiosity
computation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.9 Acceleration Techniques for Form Factor Computation Stage. . . . . . . . . . . 42
6.10 Analytic/Traditional emission of energy. . . . . . . . . . . . . . . . . . . 43
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. . . . . . . . . . . . . . . . . 43
6.12 Algorithm: Monte Carlo Radiosity. . . . . . . . . . . . . . . . . . . . . 44
6.13 Acceleration Techniques for Solving Radiosity Equation Stage. . . . . . . . . . 45
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. . . . . . . . . . . . 46
6.15 Convergence plots for three radiosity methods. . . . . . . . . . . . . . . . 47
6.16 Algorithm: Progressive Radiosity. . . . . . . . . . . . . . . . . . . . . 47
6.17 Algorithm: Parallelized Progressive Radiosity. . . . . . . . . . . . . . . . 48
6.18 Distribution of 4 processors over 16 elements in a patch. . . . . . . . . . . . 48
6.19 Acceleration Techniques for VR Engine Stage. . . . . . . . . . . . . . . . 49
7.1 Chapter 7 Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.2 First Novel Approach: Progressive Meshes Progressive Radiosity. . . . . . . . . 51
7.3 Illustration of vertex split and edge collapse. . . . . . . . . . . . . . . . . 52
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. . . . . . . . . . . . . . . . . . . . . . . 53
7.5 Six snapshots of Progressive Radiosity rendered scene. . . . . . . . . . . . . 53
7.6 Nine Snapshots of Progressive Meshes Progressive Radiosity rendered scene. . . . 54
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. . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
7.8 Algorithm: Progressive Meshes Progressive Radiosity. . . . . . . . . . . . . 55
7.9 Nine Snapshots of Parallized PMPR rendered scene. . . . . . . . . . . . . . 56
7.10 Algorithm: Parallized Progressive Meshes Progressive Radiosity. . . . . . . . . 57
7.11 Second Novel Approach: Motion Prediction with PDM. . . . . . . . . . . . .
60
7.12 Image sequences and PDM. Landmarks in (f) is based on (e). . . . . . . . . . .
61
7.13 Prediction of path(s) a user is going to take. . . . . . . . . . . . . . . . . . 62
7.14 Plan perspective of several walk-throughs in SCS Foyer. . . . . . . . . . . . . 63
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. . . . . . . 64
7.16 Prediction of a simple path. . . . . . . . . . . . . . . . . . . . . . . . 64
7.17 Prediction of several complex paths. . . . . . . . . . . . . . . . . . . . 65
8.1 Chapter 8 Road Map. . . . . . . . . . . . . . . . . . . . . . . . . . 67
List of Tables
2.1 Fundamental Radiometric quantities. . . . . . . . . . . . . . . . . . . . 7
2.2 Fundamental Photometric quantities. . . . . . . . . . . . . . . . . . . . 10
5.1 Radiosity Trends Analysis. . . . . . . . . . . . . . . . . . . . . . . . 32
7.1 Seventy-two Potential Radiosity Hybrids. . . . . . . . . . . . . . . . . . 59
7.2 Selected paths based on Number of Processor, type of Strategy and the
list of predicted paths. . . . . . . . . . . . . . . . . . . . . . . . . . 65
8.1 List of Radiosity related Papers Presented on Various ’97 Conferences. . . . . . . 68
Radiosity for VR Systems University of Leeds
T S L Yeap Page 1
Chapter 1
Introduction
1.1 Overview
For the past three decades, computer graphics (CG) researchers have been pursuing the goal in the
synthesis of photo-realistic images. Most techniques [Bouknight, 1970][Gouraud, 1971][Phong,
1975] including ray tracing are ad hoc approaches that do not model the physical aspects of light-
environment interaction.
Radiosity for CG was first introduced by researchers at Program of Computer Graphics at Cornell
University [Goral et al., 1984] and Fukuyama and Hiroshima University [Nishita et al., 1985]. The
study of radiosity arose from the field of radiative heat transfer, and was first developed in the 1950s
for computing radiant interchange between surfaces [Siegel et al., 1992] and was used for
applications such as radiative transfer between panels on spacecraft.
The radiosity method was further developed to account for the interaction of diffuse reflection
between objects in scenes. Later research has extended the classical limitations of the original
radiosity solution to include glossy, mirror reflection [Immel et al., 1986][Sillion et al., 1986][Sillion
et al., 1989][Wallace et al., 1987] and even participating media such as smoke and haze [Rushmeier
et al., 1990].
1.2 Goals of This Work
A survey in Ashdown’s bibliographic collection [Ashdown, 1997] of radiosity related literature -
over eleven hundred since 1900 - revealed that less than two percent (Figure 1.1) of the work
explicitly addressed the issue of applying radiosity to Virtual Reality applications. Such research
was directed in the long term towards the development of quick and efficient use of radiosity in VR
systems, where quick means user feedback of less than 50 milliseconds delay between computation
of scenes and efficient means low usage of memory and computing power. Realisation of these goals
is years away, but the hope is that this thesis would contribute towards those goals in a few ways; by
Radiosity for VR Systems University of Leeds
T S L Yeap Page 2
reviewing and suggesting existing radiosity techniques which may or may not have been applied to
VR applications and introducing two novel techniques not yet applied to radiosity for VR
applications.
1.3 Organisation of Thesis
This thesis comprises eight chapters (Figure 1.1). The first chapter gives an introduction to radiosity
and the scope of the thesis. Chapter 2 covers the basis of radiosity; that is the understanding of light;
radiometry and photometry. Chapter 3 covers traditional illumination and shading models. Chapter 4
covers radiosity principles. Chapter 5 studies radiosity trends in detail with a literature review.
Chapter 6 provides a review of previous works that accelerate radiosity solution (both software and
hardware approaches) that may be suitable for VR applications. Chapter 7 reveals some of our novel
approaches to accelerate radiosity solution for VR applications and the concluding chapter
summaries our contributions and looks at the future of radiosity.
Figure 1.1 Thesis Road Map.
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 6Acceleration Techniques
for Radiosity Computation
Chapter 7Novel Approaches for
VR Applications
Chapter 1Introduction
Chapter 4Radiosity Principles
Chapter 3Traditional Illuminationand Shading Models
Radiosity for VR Systems University of Leeds
T S L Yeap Page 3
1.4 Research Methods
Literature search was done on established CG bibliographies database website [Siggraph,
1997][UNICE, 1997][Waikato, 1997][Hensa, 1997]. In addition, Siggraph and Computer Graphics
Forum proceedings in Edward Boyle library were excellent sources of reference. CDROMs such as
Inspec, Dissertation Abstract, MathSci, CRIB (Current Research in Britain) and Computer Select
were also utilised. In addition, various CG software packages such as 3D Studio, Persistence of
Vision, Helios, Radiance, RaySmith were used to generate and test the images.
Radiosity trends analysis was done in order to gain appreciation on the development of radiosity in
the research community. Furthermore, a survey was carried out over Usenet newsgroups, University
of Leeds newsgroups and individual electronic mail to specific researcher during the period of April-
July 1997. This allows us to obtain opinions and insight on specific subject areas that were covered
in this thesis.
1.5 Our Contributions
Most of the papers and publications presented to date focus more on the synthesis of photo-realistic
images. Our main contributions are:
• Trend analysis of radiosity research -- the first to be carried out in the community.
• Introduction of first original technique - Progressive Mesh Progressive Radiosity for VR
applications.
• Presentation of second novel technique - Motion Prediction with Point Distribution Model -
in which the radiosity rendering pipeline is extended by a VR Stage (Chapter 6). These
techniques were extensively used 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].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 4
Chapter 2
Radiometry and Photometry
2.1 Introduction
In order to understand radiosity, we must understand and know how to measure light. This chapter
(figure 2.1) introduces the terms in radiometry and photometry.
Figure 2.1 Chapter 2 Road Map.
2.1 Introduction
2.2 Mathematics Preliminary2.2.1 Solid Angles
2.3 Radiometry2.3.1 Radiant Energy2.3.2 Radiant Flux (Radiant Power)2.3.3 Irradiance and Radiance
Exitance2.3.4 Radiant Intensity2.3.5 Radiance
2.4 Photometry2.4.1 Luminous Energy2.4.2 Luminous Flux2.4.3 Illminance and Luminous
Exitance2.4.4 Luminous Intensity2.4.5 Luminance
2.4 Summary
Chapter 1Introduction
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 3Traditional Illuminationand Shading Models
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 4Radiosity Principles
Chapter 6Acceleration Techniques
for VR Applications
Chapter 7Novel Approaches for
VR Applications
The earliest hypothesis was that space was filled with ‘ether’, and that light was propagated through
ether much as sound travels through solids. However, this theory does not fit all known facts.
Aristotle (384-322 B.C.) suggested the corpuscular theory; that light was propagated by streams of
small corpuscles. In the nineteenth century, Maxwell Hertz and others showed that electromagnetic
radiation had many properties of light. However, this did not explain how the small amount of
energy in a travelling wave could cause the expulsion of electrons from photosensitive materials.
Finally, Planck and Einstein revived the corpuscular theory to explain the photoelectric effect. They
Radiosity for VR Systems University of Leeds
T S L Yeap Page 5
reasoned that light could be radiated and absorbed discontinuously in discrete bundles of energy,
known as photons.
Radiosity models light [Ashdown, 1994] and light is a form of radiant energy [Freeman, 1990] or
electromagnetic radiation, ranging from radio waves (long wavelength), microwaves, infra-red,
visible light, ultra-violet, x-rays to gamma rays (short wavelength).
Radiometry is the discipline concerned with measurements of electromagnetic energy within the
optical spectrum [Stimson, 1974]. This part of the spectrum includes infrared, visible and ultraviolet
light, while photometry is the science of measuring visible light in units that are weighed according
to the sensitivity of the human eye [Ashdown, 1995].
2.2 Mathematics Preliminary
This section provides some mathematics that will be used in subsequent sections. Fundamentals of
geometry, elementary calculus and matrix theory are assumed.
2.2.1 Solid Angle
The concept of solid angles is important as the environment we are dealing with is three dimensional.
A solid angle ω, is the three-dimensional analogy to a two dimensional angle θ. In two dimension, θ
equals to 1 if c is equal to r and is defined as one radian. Its circumference is 2πr, and there are 2π
radians in a circle (Figure 2.2a and 2.2b).
Figure 2.2a A two dimensional circle with angle, θ. Redrawn from [Ashdown, 1994].
Figure 2.2b A three-dimensional sphere with solid angle, ω. Adapted from [Ashdown, 1994].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 6
Similarly, in three dimension, ω equals to 1 if A = r 2 and is defined as one steradian. There are 4π
steradians in a sphere.
Considering that the ray intersects the surface at an angle, if the area of intersection with the surface
has a differentiate cross-section area dA, the cross-section area of the ray is dAcosθ, where θ is the
angle between the ray and the surface normal (see Figure 2.3). This ray cross-section area dAcosθ is
also known as projected area of the ray-surface intersection area dA or ∆A.
Figure 2.3 A ray of light intersecting a surface. Adapted from [Ashdown, 1995].
2.3 Radiometry
Radiometry is the discipline concerned with measurements of electromagnetic energy within the
optical spectrum [Stimson, 1974].
This section will lay out the important terms and definitions used in radiometry that are useful in
radiosity. We will revisit some of these terms and definitions in subsequent chapters,.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 7
The set of fundamental quantities concerned with the measurement of the light energy is summarised
in Table 2.1.
Table 2.1 Fundamental Radiometric quantities [Grum et al., 1979].
Quantity Symbo
l
Defining Equation Units Eqn.
No.
Radiant energy Q, Qe J (joule) (2.1)
Radiant power or flux Φ, Φ e Φ = dQ / dt W (watt) (2.2)
Irradiance E, Ee E = dΦin / dA W m - 2 (2.3)
Radiant exitance M, Me M = dΦout / dA W m - 2 (2.4)
Radiant intensity I, Ie I = dΦ / dω W sr - 1 (2.5)
Radiance L, Le L = d2Φ / dω (dAcosθ) = dI / (dAcosθ)
W m - 2 sr - 1
(2.6)
2.3.1 Radiant Energy
Radiant energy, Q is light. It is propagated in the form of electromagnetic waves. When light is
absorbed by an object, its energy is converted into another form. Visible light is transformed into
kinetic energy when it causes an electric current to flow in a photographic light meter.
Radiant energy is measured in joules or J.
2.3.2 Radiant Flux (Radiant Power)
Radiant flux, Φ is the rate of change of its radiant energy with respect to time.. Mathematically, the
definition of radiant flux is:
Φ = dQ / dt
where dQ is differential amount of radiant energy and t is time. Radiant flux is measured in watts or
w. The unit of measurement for power is in watts and radiant flux is thus also known as radiant
power.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 8
2.3.3 Irradiance and Radiant Exitance
Irradiance, E is the radiant flux per unit area at a point on a surface that is arriving from any
direction above the surface. The definition of irradiance is:
E = dΦin / dA
In other words, irradiance is the rate of change of its power with respect to area. A visualisation of
irradiance is Figure 2.4a. Irradiance is measured in watts power per square meter or W m - 2.
Figure 2.4a Irradiance. Redrawn from [Ashdown, 1995]. Figure 2.4b Radiant exitance. Redrawn from
[Ashdown, 1995].
dA
dA
Radiant exitance, M is the radiant flux per unit area at a point leaving the surface (Figure 2.4b). The
definition of radiant exitance is:
M = dΦout / dA
Radiant exitance, like irradiance, is measured in watts per square meter or W m - 2.
2.3.4 Radiant Intensity
Radiant intensity, I is defined as the rate of change of its power with respect to its solid angle.
I = dΦ / dω
Radiant intensity is measured in watts per steradian. Steradian is the measurement unit of a solid
angle.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 9
2.3.5 Radiance
As mentioned by Ashdown, radiance is best understood by first visualising it. Imagine a ray of light
arriving at or leaving a point on a surface in a given direction. Radiance is simply the radiant flux
contained in this ray.
Figure 2.5a Radiance (arriving). Redrawn from [Ashdown, 1995].
Figure 2.5b Radiance (leaving). Redrawn from [Ashdown, 1995].
The definition of radiance, L is:
L = d2Φ / dω (dAcosθ)
where dω is the solid angle of the ray incident to the differential surface dA. dAcosθ is the ray cross-
section area.
There is no distinction whether the ray of light is arriving or leaving a surface (Figure 2.5a and
2.5b). Recall that the definition of radiant intensity (equation 2.5) is:
I = dΦ / dω
We can then rewrite the definition of radiance as:
L= dI / (dAcosθ)
Radiance is measured in watts per square meter per steradian or W m - 2 sr - 1.
.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 10
2.4 Photometry
Photometry is the science of measuring visible light in units that are weighed according to the
sensitivity of the human eye [Ashdown, 1995]. The difference between radiometry and photometry
lies in the units of measurement used.
This section will lay out the important terms and definitions used in photometry that are useful in
radiosity. We will revisit some of these terms and definitions in subsequent chapters,.
The human eye is only receptive to a limited range of electromagnetic radiation - 388 to 782
nanometers (nm) [Freeman, 1990]. Moreover, the response of our visual system varies between this
range of wavelength. For instance, a green light source might appear brighter than the same radiance
of blue light. Thus, a standard spectral response function [Ashdown, 1995][Freeman, 1995] or
photopic luminous efficiency function (Figure 2.6) was developed.
Figure 2.6 Luminous efficiency function. Redrawn from [Ashdown, 1995].
Wavelength
PhotopicluminousEfficiency
00.10.20.30.40.50.60.70.80.9
1
390 440 490 540 590 640 690 740
The set of fundamental quantities concerned with the measurement of the light is summarised in
Table 2.2.
Table 2.2 Fundamental Photometric quantities [Grum et al., 1979].
Quantity Symbol Defining Equation Units Eqn. No.
Luminous energy Qv lm s (2.7)
Luminous flux Φ v Φ v = dQv / dt lm (2.8)
Illuminance Ev Ev = dΦvin / dA lm m - 2 (2.9)
Luminous exitance Mv Mv = dΦvout / dA lm m - 2 (2.10)
Luminous intensity Iv Iv = dΦv / dω cd = lm sr - 1 (2.11)
Luminance Lv Lv = d2Φ v / dω (dAcosθ) = dIv / (dAcosθ)
cd m - 2
(2.12)
Radiosity for VR Systems University of Leeds
T S L Yeap Page 11
2.4.1 Luminous energy
Luminous energy, Qv is photometric equivalent of radiant energy and is measured in lumen seconds
or lm s.
2.4.2 Luminous flux
Luminous flux, Φ v is photometric equivalent of radiant flux and is measured in lumens or lm.
Φ v = dQv / dt
2.4.3 Illuminance and Luminous Exitance
Illuminance, Mv is the photometric equivalent of irradiance and is measured in lumens per square
meter or lm m - 2.
Mv = dΦvin / dA
Luminous Exitance, Ev is the photometric equivalent of radiant exitance and is also measured in
lumens per square meter or lm m - 2.
Ev = dΦvout / dA
2.4.4 Luminous Intensity
Luminous intensity, Iv is the photometric equivalent of radiant intensity and is measured in lumens
per square steradian (lm sr - 1 ) or candela (cd).
Iv = dΦv / dω
Radiosity for VR Systems University of Leeds
T S L Yeap Page 12
2.4.5 Luminance
Luminance, Lv is the photometric equivalent of radiance and is measured in candela per square meter
or cd m - 2.
Lv = d2Φ v / dω (dAcosθ) = dIv / (dAcosθ)
Visually, luminance is perceived by the brightness of a surface when viewed from a given direction.
2.5 Summary
In this chapter, we have presented the definitions of those various terms in radiometry and
photometry terms which are essential for the radiosity theory.
However, we have only covered the basics required for subsequent chapters. A comprehensive
coverage on radiometry can be found in [Grum et al., 1979] and [Stimson, 1974]. An excellent
introduction to photometry can be found in [Stimson, 1974].
In the next chapter, we will look at the traditional illumination and shading models that are common
in many existing commercial applications.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 13
Chapter 3
Traditional Illumination and Shading Models
3.1 Introduction
Illumination models express the factors determining a surface's colour at a given point while a
shading model determines when the illumination model is applied and the parameters with which it is
concerned.
This chapter (Figure 3.1) looks at some common illumination and shading models that are popular in
many commercial applications.
Figure 3.1 Chapter 3 Road Map.
3.1 Introduction
3.2 Illumination Models3.2.1 Ambient Reflection3.2.2 Diffuse Reflection3.2.3 Specular Reflection
3.3 Shading Models3.3.1 Flat Shading3.3.2 Gouraud Shading3.3.3 Phong Shading3.3.4 Ray Tracing
3.4 Summary
Chapter 1Introduction
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 3Traditional Illuminationand Shading Models
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 4Radiosity Principles
Chapter 6Acceleration Techniques
for VR Applications
Chapter 7Novel Approaches for
VR Applications
Radiosity for VR Systems University of Leeds
T S L Yeap Page 14
3.2 Illumination Models
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
4.4.1.1 Form Factor between DifferientialAreas
4.4.1.2 Form Factor between Finite AreaPatches
4.4.1.3 Reciprocity Relationship betweenForm Factors
4.4.1.4 Summation Relation4.4.1.5 Assumptions
4.4.2 Form Factor Computation using Hemicube
4.5 The Radiosity Equation Revisited
4.6 Summary
Chapter 1Introduction
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 3Traditional Illuminationand Shading Models
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 4Radiosity Principles
Chapter 6Acceleration Techniques
for VR Applications
Chapter 7Novel Approaches for
VR Applications
Radiosity for VR Systems University of Leeds
T S L Yeap Page 20
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
the other two uniform meshing techniques.
Figure 4.8a Non-uniform mesh. Figure 4.8b Non-uniform mesh, with shaded errors.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 25
4.4 The Radiosity Equation
To be computationally useful, a radiosity equation for radiant exitance M, needs to be defined. It is
defined as:
RadiantExitance i = RadiantExitanceoi + Reflectancei j
n
=∑
1
RadiantExitancej * FormFactorij (4.4)
where i denotes surface i, ij denotes i with respect to j and reflectance is the colour (red, green and blue) of the surface.
This equation basically means that the radiant exitance of some surface i is equal to the its original
emission plus the sum of any reflected energy from every other surface j in the environment.
4.4.1 Concept of Form Factor
Form factor is the last component in the radiosity equation which requires further explanation. It is
defined as the fraction of energy leaving a given surface that arrives at a second surface directly and
is the essence of radiosity [Cohen et al., 1993]. Formally, form factor of a patch i is defined as the
proportion of the total flux leaving patch i that is received by patch j.
In the next two sections, we will discuss the form factor geometry from a simple case (between two
differential patches) to the complete case (form factor between one patch to another patch).
Radiosity for VR Systems University of Leeds
T S L Yeap Page 26
4.4.1.1 Form Factor between Differential Areas
Consider two differentiate area patches dEi and dEj as shown Figure 4.9, where both are Lambertian
surfaces. The fraction of flux emitted by dEi that is received by dEj is known as the differentiate
form factor denoted as dFdEi-dEj. This is also known as point to point form factor calculation.
Figure 4.9 Patch Ej receiving flux Φij from patch Ei. Redrawn from [Ashdown, 1994].
The form factor from a differential area dEi to another differential area dEj is given by:
dFdEi-dEj = cosθi cosθj dAi / πr2 (4.2)
where θi and θj are the angles between a line connecting dEi and dEj and their respective surface
normalise (Figure 4.10) and dAj is the differentiate area of dEj.
Figure 4.10 Form factor geometry between two differentiate patches. Adapted from [Ashdown, 1994].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 27
4.4.1.2 Form Factor between Finite Area Patches
This is the computation of form factor between two patches. This is also known as area to area from
factor calculation in radiosity literature.
The form factor from a finite area patch Ei to another finite area patch Ej is given by:
FEi-Ej = 1
2A rdA dA
A
i j
Aj i
i j
∫ ∫cos cosθ θ
π (4.5)
Figure 4.11 shows a single integration of dEi over Ej.
Figure 4.11 Form factor FdEi-Ej determination by area integration over Ej. Redrawn from [Ashdown, 1994].
Figure 4.12 shows a complete integration of Ei over Ej.
Figure 4.12 Form factor FEi-Ej determination by area integration over Ei and Ej.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 28
4.4.1.3 Reciprocity Relation between Form Factors
The reciprocal form factor FEi-Ej is obtained by reversing the patch subscripts.
Ai Fij = Aj Fij (4.6)
This is an important relationship, because the computation of form factor Fij allow us to compute Fji
easily.
4.4.1.4 Summation relation
The summation relation states that
Fijj
n
==
∑ 11
(4.7)
for any patch Ei in a closed environment with n patches.
This summation includes the form factor Fij, which is defined as the fraction of flux emitted by Ei
that is also directly received by Ei.
Fii = 0 if Ei is planar or convex (Figure 4.13a and 4.13b), and
Fii ≠ 0 if Ei is concave (Figure 4.13c)
Figure 4.13a Planar surface. Figure 4.13b Convex surface. Figure 4.13c Concave surface.
4.4.1.5 Assumptions
The form factor concept holds the assumption that the media with which light interacts are non-
participating medium. In other words, the medium does neither absorb, refract nor scatter light. The
medium is analogous to a vacuum.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 29
4.4.2 Form Factor using Hemicube
Cohen found that one could solve the form factor by approximation using hemicube (algorithm
[Cohen et al., 1995]. The important observation was that patches that have the same projected area
on a hemisphere will occupy the same solid angle and a hemicube could be to replace the
hemisphere. Figure 4.14 shows a 3x6x6 cells of grid, collectively a hemicube. Each of the cell (either
top or side) are the individual form factors (called delta form factors, ∆F). The projected patch of
dEi can be computed by summing all the delta form factors of the cells that it covers:
FdEi-Ej = ∆F eredcov∑ (4.8)
where ∆Fcovered refers to the form factors of those cells by the projection of Ej onto one or more of the
hemicube faces.
The accuracy of Equation 4.8 dependent on the hemicube’s grid spacing is also known as its
resolution. Our illustration is a simple 36x36 cells. Typical resolutions used by researchers ranged
from 32x32 to 1024x1024 cells [Cohen et al., 1993].
Figure 4.14 Projecting patch Ej onto the cells of a hemicube.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 30
4.5 The Radiosity Equation Revisited
Restating equation 4.4
RadiantExitance i = RadiantExitanceoi + Reflectancei j
n
=∑
1
RadiantExitancej FormFactorij
Letting,
Mi be the RadiantExitancei of each patch Ei in an n patches,
εi be the RadiantExitanceoi , that is initial exitance of patch Ei ,
ρi be the Reflectancei,
Mj be the RadiantExitancej,
and Fij be the Form factor between patch i and j.
We have,
Mi = εi + j
n
=∑
1
Mi Fij (4.9)
By expressing εi in terms of other terms, we have,
εi = Mi - j
n
=∑
1
Mi Fij (4.10)
This equation can then be expressed as a set of n simultaneous linear equations:
ε1 = M1 - (ρ1 M1 F11 + ρ1 M2 F12 + … + ρn Mn F1n)
ε2 = M2 - (ρ2 M1 F21 + ρ2 M2 F22 + … + ρn Mn F2n) : (4.11) : εn = Mn - (ρn M1 Fn1 + ρn M2 Fn2 + … + ρn Mn Fnn)
In matrix notation, this can be compactly represented as:
ε = (I-F) M (4.12)
where
I is nxn identity matrix,
M is the final nx1 exitance vector,
ε is the initial nx1 exitance vector
and F is an nxn matrix whose i, jth element is ρiFij
Radiosity for VR Systems University of Leeds
T S L Yeap Page 31
Expanding equation 4.12 into tableau form, we have,
ε
ε
ε
1
2
n
M
=
M
M
M
1
2
n
M
1 1 11
2 21
1
−
−
−
ρ
ρ
ρ
F
F
Fn n
M
−
−
−
ρ
ρ
ρ
1 12
2 22
2
F
F
Fn n
M
L
L
O
L
−
−
−
ρ
ρ
ρ
1 1
2 2
F
F
F
n
n
n nn
M
(4.13)
From equation 4.12, the solution for M can be computed by inverting (I-F),
M = ε (I-F)-1 (4.14)
There are several methods that can be used to solve this matrix iteratively: Jacobi iteration, Gauss-
Seidel iteration, Southwell iteration, overrelaxation. A good tutorial of these methods for radiosity
can be found in [Glassner, 1995].
Equation 4.14 is the most important result for the classical radiosity technique. An illustration based
on it can be found in Appendix C.
4.6 Summary
This chapter presents the essence of radiosity method. The key notion of form factor was introduced,
and the formulation of radiosity method as a matrix equation was derived.
Various important stages of radiosity rendering pipeline were covered - mainly surfaces meshing,
form factor computation and radiosity equations.
In the following chapter, we will look at some radiosity trends and review radiosity literature.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 32
Chapter 5
Radiosity Trends Analysis
5.1 Introduction
This chapter (Figure 5.1) covers radiosity trends analysis and gives a detailed literature review of
different aspects of radiosity research namely - classical radiosity and extended radiosity related
work; soft acceleration techniques; hard acceleration techniques and radiosity for VR. To our
knowledge, no previous radiosity trends analysis has been done1 .
The analysis was based on an excellent set of radiosity bibliography [Ashdown et al., 1997], which
contains over eleven hundred papers and publications from 1900 to 1997.
Figure 5.1 Chapter 5 Road Map.
5.1 Introduction
5.2 Trends Analysis
5.3 Literature Review5.3.1 Class R Literature Review5.3.2 Class S Literature Review5.3.3 Class H Literature Review5.3.4 Class V Literature Review
5.4 Summary
Chapter 1Introduction
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 3Traditional Illuminationand Shading Models
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 4Radiosity Principles
Chapter 6Acceleration Techniques
for VR Applications
Chapter 7Novel Approaches for
VR Applications
1. Probably because (1) the wide collection of Ashdown bibliography was not as complete as before, (2) developing new techniques in
radiosity is more interesting and (3) there are few incentives in doing such analysis in the field of computer graphics.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 33
5.2 Trend Analysis
Papers and publications before 1984 did not apply radiosity to computer graphics at all. There were
less than one hundred papers in that time. Research on radiosity applicable to computer graphics
started to take off in 1984 and a total of 976 papers and publications were reviewed between 1984
and 1996. (Table 5.1 and Figure 5.1). Work done in 1997 was not taken into account for the trend
analysis because the collection was incomplete.
We have grouped the radiosity literature into four categories, namely:
• Class R - Radiosity, extended radiosity and related papers
• Class S - Soft approach, acceleration techniques
• Class H - Hard approach, acceleration techniques
• Class V - VR, Walk-through, flybys, real-time radiosity
Table 5.1 Radiosity Trends Analysis.
C\Yr 84 85 86 87 88 89 90 91 92 93 94 95 96 Total
R 12 16 16 14 20 29 37 61 81 84 87 72 51 580
S 1 2 2 5 9 11 18 23 45 47 50 38 251
H 1 11 9 14 11 20 24 22 14 126
V 1 1 1 2 7 7 19
bold denotes peak value Class R: 59.4%, Class S: 25.7%, Class H: 12.9%, Class V: 1.95%
Figure 5.2 Graph Plot of Radiosity Trends Analysis.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 34
It was noted that class R, S and H were declining while there were only nineteen papers that were
directly related to applying radiosity to virtual reality systems. In general, the enthusiasm for
radiosity research for class R, S and H appeared to peak in the period 1994-1995, whereas we would
expect to see more works for class V in the future.
5.3 Literature Review
There are separate reviews for each class defined in the previous section. This enables us to have a
clearer picture on the different aspects of radiosity research. More importantly, it helps to provide a
basis for a more accurate review of the acceleration techniques and VR aspects for radiosity in the
subsequent chapters.
5.3.1 Class R Literature Review
Class R refers to papers and publications related to radiosity and extended radiosity.
The first two papers which started the race (applying radiosity to computer graphics) were by
researchers at Program of Computer Graphics at Cornell University [Goral et al., 1984] and
Fukuyama and Hiroshima University [Nishita et al., 1985]. It was noted that radiosity solutions for
diffuse surfaces were assumed. It was not until 1986 that non-diffuse surfaces such as specular
surfaces were covered [Immel et al., 1986][Rushmeier, 1986]. Shading models that involved
transparency were done by Ito et al. [ Ito et al., 1991].
Radiosity techniques were subsequently combined with ray tracing [Wallace et al., 1987][Wallace,
1988][Hermitage, 1989][Shirley, 1990]. Radiosity was further extended to volume rendering
[Rushmeier, 1991][Bhate, 1993][ Sobierajski, 1994].
Research carried out in 1995 and 1996 was less focused, with no single common area. Wu
concentrated on applying radiosity to fractal surfaces [Wu, 1995] while Funkhouser looked at the
database aspects [Funkhouser, 1996] for huge data sets.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 35
5.3.2 Class S Literature Review
Class S refers to papers and publications on acceleration techniques using software techniques or
algorithms.
The strategies and algorithms for subdividing the domain of the radiosity function into finite
elements is known as meshing. The quality of mesh directly affects the quality of the final radiosity
solution. Discontinuity meshing [Heckbert, 1992] was one of the first elegant solution to be
presented. Phillips introduced an adaptive mesh refinement algorithm [Phillips, 1993]. Sturzlinger
combined discontinuity meshing and an adaptive mesh refinement algorithm [Sturzlinger, 1994]. In
the later chapter, we will discuss a novel meshing method introduced very recently and known as
Progressive Meshes [Hoppe, 1996] and apply it to radiosity rendering pipeline.
The efficient computation of form factors was first introduced in 1985 by Cohen et al. using the
hemi-cube [Cohen et al., 1995]. It was only in 1991 when the next major method for computing the
form factor using cubic tetrahedral [Beran-Koehn et al., 1991] was introduced. Another variation
introduced during this period is hemisphere projections [Bian et al., 1991].
Accelerated computation of radiosity was first achieved by using a technique called progressive
refinement approach [Cohen et al., 1988][Goldfeather, 1989]. This method allows us to present the
visualisation results from coarse to fine, and is very good for controlling the level of details in VR
applications.
Hierarchical radiosity [Hanrahan et al., 1990] was another milestone in accelerating radiosity
solution. This approach simplified the number of individual relationships - form factors. Asensio
extended this idea by incorporating ray casting algorithm [Asensio, 1992] for radiosity solutions.
Working jointly with Pat Hanrahan, Aupperle applied hierarchical radiosity technique to account for
glossy surfaces [Aupperle, 1993] and Bhate showed how this technique can account for participating
media [Bhate, 1993b].
Gortler et al. extended hierarchical radiosity by applying wavelet transformation techniques, which
started another revolution of radiosity - wavelet radiosity [Gortler et al., 1993].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 36
The latest wave was a new class of radiosity known as importance based radiosity [Smits et al.,
1992]. This method computes accurate solutions for surfaces that are more important and less
accurate for other surfaces. For example, in an art gallery, lights that are reflecting on the painting
and sculptures are more important than elsewhere - floor, staircase, wall, etc. Bekaert et al.
incorporated progressive refinement techniques to importance based radiosity [Bekaert et al., 1995].
5.3.3 Class H Literature Review
Class H refers to papers and publications on acceleration techniques that are related to hardware or
to algorithms for specific hardware architectures.
The first few papers appeared in 1987. One approach was to use specialised Very Large Scale
Integration (VLSI) architectures [Bu, 1987] for computing radiosity. Another approach was the
reformulation of classical radiosity equation suitable for parallel algorithms [Dugger, 1989][Price et
al., 1989][Prior, 1989][Chalmers et al., 1990][Kochevar, 1990].
Renaud was the first to exploit a transputer network [Renaud, 1991] for radiosity solution. Varshney
implemented the radiosity solution on a Single Instruction Multiple Data (SIMD) computer
[Varshney, 1991]. Shared memory multiprocessors [Chung, 1990][Gautam et al., 1993] were also
used for computing radiosity.
Others concentrated on the computation of form factors. This was done by reformulating the form
factors suitable for use in parallel algorithms and machines [Baranoski, 1992][Kokcsis et al.,
1992][Michelin et al., 1993][Sturzlinger, 1995][Zareski et al., 1995][Vilaplana, 1996].
Radiosity for VR Systems University of Leeds
T S L Yeap Page 37
5.3.4 Class V Literature Review
Class V refers to papers and publications on radiosity solutions for VR applications. So far, less
than two percent of the papers are dedicated to this class.
Airey et al. were the first to publish a paper addressing issues related to updates on an interactive
environment [Airey et al., 1990] using radiosity. It was only in 1995 that Otake in his M. Sc. thesis
applied progressive refinement algorithm in radiosity to VR applications [Otake, 1995]. Gibson
utilised hierarchical radiosity [Gibson, 1995] and Forsyth et al. adapted it to take into account of
dynamic environments where objects in the scene changes their position [Forsyth et al., 1995].
Möller applied radiosity textures in his implementation and was reported to be able to achieve
interactive rates [Möller, 1995][Möller, 1996].
In the next chapter, we introduce novel approaches used by researchers in University of Leeds for
machine vision applications [Baumberg et al., 1993][Baumberg et al., 1994] [Baumberg et al.,
1995][Shen X et al., 1993][Shen X et al., 1995][Sumpter et al., 1997], which were extended to VR
applications using radiosity solutions.
5.4 Summary
In this chapter, we have looked at the chronological radiosity research activities in several classes -
radiosity related; software and hardware acceleration techniques; radiosity in VR. The first three
classes are mature research areas while radiosity in VR is the still under exploration.
In the next chapter, we will look at techniques which helps to accelerate the computation of radiosity,
both software techniques and hardware solutions.
.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 38
Chapter 6
Acceleration Techniques for Radiosity
6.1 Introduction
Previously, we looked at the classical approaches to computing radiosity for an environment.
However, for complex environments in particular, in a VR environment, quick user feedback is
crucial. Hence, this is where various accelerated techniques have an important role to play in the
various stages of the radiosity pipeline.
In this chapter, we will introduce the concept of an extended radiosity pipeline and review the more
important accelerated techniques in four of the stages in the extended radiosity pipeline - surface
meshing; form factor computation; solving of radiosity equation; and the VR engine. As mentioned
earlier, the other two stages, environment modelling and scene visualization, are extensively covered
in [Foley et al., 1990].
Figure 6.1 Chapter 6 Road Map.
Chapter 1Introduction
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 3Traditional Illuminationand Shading Models
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 4Radiosity Principles
Chapter 6Acceleration Techniques
for VR Applications
Chapter 7Novel Approaches for
VR Applications
6.1 Introduction6.1.1 What is Virtual Reality?
6.2 Extended Radiosity Pipeline
6.3 Acceleration Techniques for Surface Meshing Stage6.3.1Adaptive Meshing6.3.2 Radiosity Textures
6.4 Acceleration Techniques for Form Factor Computation Stage6.4.1 Monte Carlo Methods for Radiosity
6.5 Acceleration Techniques for Solving Radiosity Equation Stage6.5.1 Progressive Radiosity6.5.1 Parallel Progressive Radiosity
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){
patch[patchi , RADIANCE]= patch[patchi , RADIANCE] + ρ*m; patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ρ*m;
} }
}
Radiosity for VR Systems University of Leeds
T S L Yeap Page 46
Although Monte Carlo methods are used extensively in radiosity, there is not yet a paper published
on VR applications. Considering that the time complexity of this approach is O(n), this makes the
approach very attractive candidate for VR applications. A similar approach to Monte Carlo was
implemented in [Shirley et al., 1995] suitable for walkthroughs.
6.5 Acceleration Techniques for Solving Radiosity Equation Stage
This is the area which received the most attention from the research community, demonstrated by the
massive number of papers published and continual exploration for more innovative methods in
solving the radiosity equation. Generally, three approaches have been used. The first approach is by
solving the radiosity equations, including the form factors, e.g. Monte Carlo radiosity (as mentioned
in 6.4.2); the second approach is to build better mousetraps by novel approaches such as
progressive radiosity [Cohen et al., 1988][Goldfeather, 1989], hierarchical radiosity [Hanrahan et
al., 1990], importance-based radiosity [Smits et al., 1992] and wavelet radiosity [Gortler et al.,
1993]; and finally, one may re-formulate the radiosity equations suitable for computation in parallel
machines (Figure 6.13). Due to space constraint, we will cover only progressive radiosity and a
parallel approach for progressive radiosity.
Figure 6.13 Acceleration Techniques for Solving Radiosity Equation Stage.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
VR Engine
1. Progressive Radiosity2. Parallel Progress Radiosity
3. Hierarchical Radiosity4. Importance-based Radiosity
5. Wavelet Radiosity
Radiosity for VR Systems University of Leeds
T S L Yeap Page 47
6.5.1 Progressive Radiosity
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;
patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ∆RAD; patch[patchj , RADIANCE]= patch[patchj , RADIANCE] + ∆RAD; }
} patch[patchi , TO_BE_EMIT] = 0; }
}
Radiosity for VR Systems University of Leeds
T S L Yeap Page 49
6.5.2 Parallel Progressive Radiosity
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;
patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ∆RAD; patch[patchj , RADIANCE]= patch[patchj , RADIANCE] + ∆RAD; }
} patch[patchi , TO_BE_EMIT] = 0; }
}
This parallel progressive algorithm distributes its processors p over several elements n in a patch. A
simple illustration is shown in Figure 6.18.
Figure 6.18 Distribution of 4 processors over 16 elements in a patch.
Unfortunately, Goldman did not do a time complexity analysis for this algorithm. An estimate based
on the time complexity established for serialized progressive algorithm would be O( nm
+ k), where m
is the number of processors used, and k is a constant factor for communications between the
processors.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 50
6.6 Acceleration Techniques for Virtual Reality Engine
As mentioned in the previous chapter, application of radiosity to Virtual Reality applications
received attention by the research community very recently, evident by the lesser number of papers
published. No papers (figure 6.19) specifically address this stage in the extended pipeline of
radiosity, the reason as Forsyth et al. [Forsyth et al., 1994] put it “Predicting link events is a
significant outstanding problem”. In their case, they were referring to dynamic environments where
objects in the scene change positions. Similarly, it is equally difficult to predict where the user would
move in a walk-through.
Figure 6.19 Acceleration Techniques for VR Engine Stage.
ModelEnvironment
SurfaceMeshing
Form FactorCalculation
Solve LinearRadiosityEquations
3D SceneVisualization
VR Engine
nil
Existing approaches [Airey et al., 1990][Otake, 1995][Gibson, 1995][Forsyth et al., 1995][Möller,
1995][Möller, 1996][Drettakis et al., 1997] and those mentioned in earlier sections coupled their
implementation tightly into the traditional radiosity rendering pipeline instead of being a stage by
itself. As such, it is less flexible and cannot be easily adapted for use in other rendering systems.
6.7 Summary
In this chapter, we have introduced the concept of extended radiosity pipeline by adding an extra
stage into the standard pipeline - VR engine. Two techniques namely adaptive meshing and radiosity
textures were reviewed under accelerated techniques for surface meshing stage. Monte Carlo
methods were reviewed for accelerated form factor computation. Next, we looked at progressive
radiosity and its parallel version for accelerating the solution of radiosity equation and finally we
inspected papers that were devoted for VR applications directly, though their techniques were tightly
coupled into various stages in the standard pipeline.
In the next chapter, we will look at two novel techniques suitable for VR systems using radiosity.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 51
Chapter 7
Novel Approaches for VR Applications
7.1 Introduction
Hitherto, we have seen several acceleration techniques that were either used by researchers for VR
applications or may be suited to VR applications. We note that all radiosity researchers coupled their
techniques into the traditional radiosity pipeline. In this chapter, the first novel approach we
introduce is Progressive Meshes Progressive Radiosity, which is coupled into the surface meshing
stage of the traditional radiosity pipeline. The second novel approach we present is suitable for the
VR Engine stage in the extended radiosity pipeline - Motion Prediction with PDM (Point
Distribution Model).
In both these new approaches, we are using architectural model for illustration purposes directed to
VR applications such as walk-through. Nevertheless, these approaches are equally suited to other
applications such as for cockpit simulation, scientific visualization, medical simulation, etc.
Figure 7.1 Chapter 7 Road Map.
Chapter 1Introduction
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 3Traditional Illuminationand Shading Models
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 4Radiosity Principles
Chapter 6Acceleration Techniques
for VR Applications
Chapter 7Novel Approaches for
VR Applications
7.1 Introduction
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
problems in computer graphics: mesh simplification2, smooth geomorphing level-of detail (LOD)
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,
MX .
Figure 7.8 Algorithm: Progressive Meshes 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. 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;
patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ∆RAD; patch[patchj , RADIANCE]= patch[patchj , RADIANCE] + ∆RAD; }
} patch[patchi , TO_BE_EMIT] = 0; }
// 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;
patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ∆RAD; patch[patchj , RADIANCE]= patch[patchj , RADIANCE] + ∆RAD; }
} patch[patchi , TO_BE_EMIT] = 0; }
}
Radiosity for VR Systems University of Leeds
T S L Yeap Page 57
7.2.3 A Parallel Solution for PMPR
This is similar to progressive radiosity, where it is easily suited for a parallel version. However, it
would be a waste of resources if the principle mesh is used for the first section. Instead, we could
introduce a new factor mid_vsplits_percent such that the first sequence of iterations would use a
finer mesh in place of the coarse one. However, in general, it is not easy to determine the actual
percentage to be used because each model is different.
An illustration of this algorithm is visualised in figure 7.9. The principle mesh is 11% of the original
mesh.
Figure 7.9 Nine Snapshots of Parallized PMPR rendered scene.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 58
Figure 7.10 outlines the algorithm for the parallised version of PMPR algorithm.
Figure 7.10 Algorithm: Parallized Progressive Meshes 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. 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;
patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ∆RAD; patch[patchj , RADIANCE]= patch[patchj , RADIANCE] + ∆RAD; }
} patch[patchi , TO_BE_EMIT] = 0; }
// 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;
patch[patchi , TO_BE_EMIT] = patch[patchi , TO_BE_EMIT] + ∆RAD; patch[patchj , RADIANCE]= patch[patchj , RADIANCE] + ∆RAD; }
} patch[patchi , TO_BE_EMIT] = 0; }
}
Radiosity for VR Systems University of Leeds
T S L Yeap Page 59
7.2.4 Potential Hybrids
A list of variations based on PMPR that could be explored in detail are:
• Progressive Meshes Monte Carlo Radiosity (PMM-CR): This method combines
Progressive Mesh with Monte Carlo radiosity [Feda et al., 1993][Rushmeier et al.,
1993][Sbert et al., 1995]. This would allow faster radiosity convergence. Recall that the
time complexity for Monte Carlo radiosity is O(n). As compared to the average time
complexity of progressive radiosity of O(n) with worse case of O(n2 ).
• Multi-resolution Meshes Progressive Radiosity (MM-PR): Lounsbery et al. used wavelet
theory [Lounsbery et al., 1994] to create a multi-resolution representation of a mesh which
was extended by Matthias et al. to compactly store multiple level of detail within one
model [Matthias et al., 1995]. Progression of different level of detail of the meshes are
possible simply by adding or subtracting wavelet coefficients (similar to operations like
vsplits and ecol in our PMPR). The radiosity implementation of MMPR is very similar to
PMPR (algorithm in Figure 7.8 and Figure 7.10), that is replacing vsplits with adding and
ecol with subtracting. The main advantage of this method is that it is possible to edit the
model at each LOD.
• A Generic Multiresolution Meshes Progressive Radiosity (GMM-PR) is another possibility
where the data structure we used need not be confined to wavelet coefficients, but others
such as image pyramids [Rosenfield, 1984], volume pyramids [Sakas et al., 1991], texture
and reflectance [Perlin, 1984], multiple angles pictures [Chen, 1993], ray space [Heckbect
et al., 1994] and polygonal models [Turk, 1992].
• Progressive Adaptive Meshes with Progressive Radiosity (PAM-PR): This method would
avoid the need for pre-processing the original mesh into principle mesh and its sub-meshes.
However, this would mean that the mesh is being computed together with the radiosity
solution rather than reading it from a file or memory. Selective refinement is not possible
for this method because an adaptive mesh would refine the scene globally rather than
locally.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 60
• Progressive Monte Carlo Meshes Progressive Radiosity (PMCM-PR): This method
samples the geometry of the original model using a Monte Carlo method followed by
progressive radiosity. This method allows global refinement by increasing the number of
samples, although local selective refinement is not easy to achieve.
• Paranomical Meshes Progressive Radiosity (PNM-PR): Paranomical mesh is a result of
an affine transformation (translation, rotation and scaling operations) of a 3D mesh into
2D representation, exhibited by Quick-time Virtual Reality and RealSpace 3D technology
introduced in 1996. See the resources from Lightscape in the thesis CDROM for
examples.
Since an explanations of other variants would span several pages, several other proposed hybrid
solutions are summarised in table 7.1. Only extensive experimental test can reveal which of the
hybrid or hybrids are the best in terms of speed and/or quality.
Table 7.1 Seventy-two Potential Radiosity Hybrids.
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.
Number of Processor(s)
1 2 3
Strategy 1
6 paths (5 Dest. + Current) a-d, a-d-e5 a-d, a-d-e, a-d-f, a-d-i a-d, a-d-e, a-d-f, a-d-i, a-d-g, a-d-k
4 paths (3 Dest. + Current) a-d, a-d-i a-d, a-d-i, a-d-g, a-d-k a-d, a-d-i, a-d-g, a-d-k
3 paths (2 Dest. + Current) a-d, a-d-g a-d, a-d-g, a-d-k a-d, a-d-g, a-d-k
Strategy 2
6 paths (5 Dest. + Current) a-d, a-d-g a-d, a-d-g, a-d-e, a-d-i a-d, a-d-g, a-d-e, a-d-f, a-d-i, a-d-k
4 paths (3 Dest. + Current) a-d, a-d-g a-d, a-d-g, a-d-i, a-d-k a-d, a-d-g, a-d-i, a-d-k
3 paths (2 Dest. + Current) a-d. a-d-g a-d, a-d-g, a-d-k a-d, a-d-g, a-d-k
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
applying radiosity to VR systems.
Figure 8.1 Chapter 8 Road Map.
Chapter 1Introduction
ClassR
ClassS
ClassH
ClassV
Chapter 5Radiosity
Trends Analysis
Chapter 3Traditional Illuminationand Shading Models
Chapter 8The Road Aheadand Conclusion
Chapter 2Radiometry
and Photometry
Chapter 4Radiosity Principles
Chapter 6Acceleration Techniques
for VR Applications
Chapter 7Novel Approaches for
VR Applications
8.1 Introduction
8.2 The Road Ahead
8.3 Contributions
8.4 Future Work
Radiosity for VR Systems University of Leeds
T S L Yeap Page 69
8.2 The Road Ahead
We were elated with the response from radiosity researchers and hobbyists (Appendix B) in the
survey that was carried out over the Internet newsgroups and through electronic mails during the
period of April 1997 to August 1997 and were particularly pleased to receive a response from the
father of radiosity - Professor Donald Greenberg. In this section, our views on the future directions
of radiosity are based on the comments by the survey participants and the analysis of papers that
were submitted to highly acclaim conferences such as EUROGRAPHICS ’97 [EUROGRAPHICS,
1997], SIGGRAPH ’97 [SIGGRAPH, 1997], Graphics Interface ’97 [GI, 1997], Parallel Rendering
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
radiosity, (2) software accelerations techniques for radiosity, (3) hardware accelerations techniques
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
thousands newsgroups, eight were targeted:
comp.graphics.algorithms comp.graphics.rendering.raytracing comp.graphics.rendering.misc comp.graphics.research comp.sys.sgi.graphics comp.graphics.visualization comp.graphics.apps.lightwave comp.graphics.apps.wavefront
The first six were considered general newsgroups appropriate for the questionnaire, as participants
would also be interested in other aspects of Computer Graphics. It was disappointing to find out that
comp.graphics.research appears to be inactive and no mails were exchanged in that group. The last
two groups were selected targeting at participants who uses radiosity aspects in Lightwave and
Wavefront.
To try to get the best possible responses, questions were kept short and to the point. There are only
six questions starting from personal opinion to more objective opinion on radiosity.
Subsequently, this survey was conducted on the bulletin board of School of Computer Studies,
University of Leeds under local.postgrads. It until mid-June that having grasp the essence of
radiosity and the research community that we further extended this survey to specific radiosity
researchers, both in the academia and organisation. Seven well-known radiosity researchers replied
between June and July period and this was when I attained the next level of realisation on radiosity
knowledge especially where its future lies.
Radiosity for VR Systems University of Leeds
T S L Yeap Page 81
Twenty three responses were collected and they were from:
Ian Ashdown [email protected] 11 Apr Luc Renambot [email protected] 18 Apr Erik Robson [email protected] 18 Apr Al Z [email protected] 18 Apr Ali Anghaie [email protected] 18 Apr Defee Pawel [email protected] 18 Apr Rakesh Malik [email protected] 18 Apr Antonio Costa [email protected] 20 Apr Gregory J. Ward [email protected] 21 Apr
Abraham Kee [email protected] 22 Apr
Neil Gatenby [email protected] 22 Apr
Terrance Wong [email protected] 22 Apr
Wim Dumon [email protected] 23 Apr
Martin Thompson [email protected] 23 Apr
Rob Love [email protected] 29 Apr
Philip M. Hubbard [email protected] 19 Jun
Ben Trumbore [email protected] 19 Jun
Brian Smits [email protected] 19 Jun
Simon Gibson [email protected] 20 Jun
Donald Greenberg [email protected] 23 Jun
Eric Lafortune [email protected] 23 Jun
Sumant Pattanaik [email protected] 14 Jul
Jiayi Chong [email protected] 3 Aug
B.2 Results
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
factors where FA,B = FB,A, FA,C = FC,A, FB,C = FC,B.
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)
Acknowledgements; (4) Graphics Gallery; (5) Videos, VRMLs; (6) Software, Source Codes; (7)
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.
UNICE CG Search Engine (1997). <http://bavi.unice.fr/Biblio/Graphics/rad.html>.
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.