Co-authored with Alejandro Aceves-Gaona (principal).
Under review. (This is a preprint.)
We present a new glyph called a "comet" to represent vectors. Comets improve the accuracy of vector visualization to enhance understanding while reducing visual clutter. Also, they eliminate an ambiguity possible with conventional vector glyphs. By using a hue-lightness-saturation (HLS) color space, devoting saturation to distinguish head from tail, and partially devoting lightness to represent the depth component of a vector's direction, comets allow increased visual accuracy and keep hue and (partially) lightness free to encode other quantities such as the nature of the object to which the vector is attached, if any. Comets are computationally inexpensive and can represent large data sets. We show how it is possible to use the OpenGL(TM) lighting model to place comets in static display lists that can be viewed by a moving camera without reconstruction.
Co-authored with Masaki Kameya (principal).
Under review. (This is a preprint.)
We present a representation for reflectance, especially measured reflectance data, that is both smooth and time-efficient. By fitting a multi-level B-spline approximation to bidirectional reflectance distribution function (BRDF) data, we can obtain a continuous function that matches the data to arbitrary precision. This algorithm shows very good time efficiency both constructing as well as evaluating the fit. Synthesized images show the accuracy and the smoothness of the fit BRDF. The finer level of fitting we use, the higher accuracy we can achieve. Our results compare favorably with other schemes currently in wide use. One shortcoming of our method is the amount of storage required. We present one approach that addresses this, a bi-level representation combined with hashing.
Co-authored with Shuangshuang Jin (principal).
Under review. (This is a preprint.)
We investigate current vertex normal computation algorithms and evaluate their effectiveness at approximating analytically-computable (and thus comparable) normals for a variety of classes of model. We find that the most accurate algorithm depends on the class and that for some classes, none of the available algorithms are particularly good. We also compare the relative speeds of all algorithms.
Co-authored with Renwei Wang and Donald Hung.
Appeared in "Canadian Journal of Electrical and Computer Engineering", vol. 28, no. 1 (January, 2003).
We describe an algorithm for computing ray/Bézier patch intersections from a hardware design aspect. This algorithm uses patch subdivision and other geometrical techniques to find a given maximum number of intersection points nearest to the ray origin. We propose a pipeline-based hardware architecture, verify the number of pipeline stages required by simulation, and estimate the performance of a load-balanced implementation based on a state-of-the-art digital signal processor (DSP).
Co-authored with Renwei Wang (principal) and Donald Hung.
Presented at the 2002 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'02), (Las Vegas, June 2002).
Co-authored with Patrick Chiang (principal).
Presented at the Thirteenth Western Computer Graphics Symposium (Silver Star, British Columbia; March 24-27, 2001).
Co-authored with Renwei Wang and Donald Hung.
Presented at the Thirteenth Western Computer Graphics Symposium (Silver Star, British Columbia; March 24-27, 2001).
We describe an algorithm for computing ray/Bézier patch intersections from a pipelined hardware point-of-view. This algorithm uses patch subdivision and other geometrical techniques to find a given maximum number of intersection points nearest to the ray origin. We propose a pipeline-based hardware architecture, and verify the number of pipeline stages required by simulation.
Co-authored with Masaki Kameya (principal).
Presented at the Thirteenth Western Computer Graphics Symposium (Silver Star, British Columbia; March 24-27, 2001).
Co-authored with Michael P. Weis (principal).
Presented at the Twelfth Western Computer Graphics Symposium (Sun Peaks, British Columbia; March 25-28, 2001).
The problem of scattered data interpolation is the fitting of a smooth surface (or, more generally, a manifold) through a set of non-uniformly distributed data points that extends to all positions in a domain. Common sources of scattered data include experiments, physical measurements, and computational values. Scattered data interpolation assists in interpreting such data through the calculation of values at arbitrary positions in the domain. Despite much attention in the literature, scattered data interpolation remains a difficult and computationally expensive problem to solve. BSPLND is a software package that solves this problem. It uses the scattered data interpolation technique presented by Lee, Wohlberg, and Shin. This technique is fast and produces a C2-continuous interpolation function for any set of scattered data using a hierarchical set of cubic B-splines. BSPLND extends the technique to work with data having an arbitrary number of dimensions for both its domain and range.
Co-authored with Wayne Cochran (principal) and John Hart.
Appeared in "The Visual Computer", vol. 17 (2001).
We have discovered a class of fractal functions that are differentiable. Fractal interpolation functions have been used for over a decade to generate rough functions passing through a set of given points. The integral of a fractal interpolation function remains a fractal interpolation function, and this new fractal interpolation function is differentiable. Tensor products of pairs of these fractal functions form fractal surfaces with a well defined tangent plane. We use this surface normal to shade fractal surfaces, and demonstrate its use with renderings of fractal mirrors.
Co-authored with Alain Fournier.
Appeared in "Computer Graphics Forum", vol. 19, no. 2 (June, 2000).
There is an older, less detailed version of this paper below.
Recently, there has been considerable interest in the representation of radiance in terms of wavelet basis functions. We will present a coordinate system called Nusselt coordinates which, when combined with wavelets, considerably simplifies computation of radiative transport and surface interaction. It also provides straightforward computation of the physical quantities involved.
We show how to construct a discrete representation of the radiative transport operator T involving inner products of smoothing functions, discuss the possible numerical integration techniques, and present an application. We also show how surface interaction can be represented as a kind of matrix product of the wavelet projections of an incident radiance and a bidirectional reflectance distribution function (BRDF).
Co-authored with Victor Roetman (principal).
Presented at the Eleventh Western Computer Graphics Symposium (Panorama, British Columbia; March 26-29, 2000).
In this paper, we describe our approach to interactively render the CSG models used in the MCNP nuclear transport code using OpenGL and standard graphics hardware. The approach uses the algorithm presented by T. F. Wiegand in ``Interactive Rendering of CSG Models.''
Doctoral Thesis presented at the University of British Columbia (1998).
This thesis considers the problem of global illumination: the modelling of light as it travels through a scene interacting with the objects contained within the scene. Starting with a description of the problem and a discussion of previous work, we explore a new approach called light-driven global illumination that offers several advantages over its predecessors: a lower asymptotic complexity, a wider range of representable surface interaction phenomena, and an absence of the need for ``meshing'' -- object surface subdivision needed primarily to represent shadows.
Light-driven global illumination is intermediate between local and global illumination. Representing light with wavelet basis functions, we are able to treat both the interaction between two surfaces and the interaction of a surface with a radiation field in a source-to-destination model that applies to whole surfaces, not just small elements.
We have found this ``wavelet radiative transfer'' to be a valid way to generate and store complex global light field data as four-dimensional textures for incorporation in local illumination solutions. Wavelets can considerably reduce the otherwise substantial storage and reconstruction problems associated with doing this. We include several examples of this.
We also discuss plausible illumination models, which are required to make light-driven global illumination work theoretically. Like wavelet radiative transfer, these models have application in other areas of rendering besides global illumination.
Finally, we develop the theory behind light-driven global illumination and apply it successfully to some simple examples. While we find the algorithm to be quite slow compared to other well-known rendering algorithms, we analyze what is needed to make it competitive.
In conclusion, we find that representing light with wavelets has a set of advantages that are independent of the comparative inefficiency of the light-driven algorithm.
Presented at the Ninth Western Computer Graphics Symposium (Whistler, British Columbia; April 23-26, 1998).
We discuss the design of a proposed instrument called a spherical target gonioreflectometer to measure the reflective properties of materials. By computing the image geometry of an illuminated sphere made of or coated with reflective material, we show that we can generate a sufficient amount of data to fill the parameter space needed to create bidirectional reflectance distribution functions (BRDFs) for real substances.
Co-authored with Alain Fournier.
Presented at the 7th Eurographics Workshop on Rendering in Porto, Portugal (17-19 June, 1996). There is an older but more detailed version of this paper by the same name below.
We describe the basis of the work he have currently under way to implement a new rendering algorithm called light-driven global illumination. This algorithm is a departure from conventional raytracing and radiosity renderers which addresses a number of deficiencies intrinsic to those approaches.
Presented at the 1996 Western Computer Graphics Symposium at Panorama, BC (4-6 March, 1996). There is a more recent, detailed version of this paper above.
In this work-in-progress paper, we present a solution to the illumination problem that is intermediate between the conventional local and global approaches to illumination. It involves the representation of radiance on a surface as a finite element expansion in terms of wavelets. By expanding in terms of ``Nusselt coordinates'', we show how irradiance, transport, and surface interaction can be evaluated simply and directly in terms of wavelet coefficients. We present an example of transport.
Presented at the 11th ACM Symposium on Computational Geometry (June 5-7, 1995).
VideHoc is an interactive graphical program that visualizes two-dimensional homogeneous coordinates. Users manipulate data in one of four views and all views are dynamically updated to reflect the change.
Co-authored with Alain Fournier.
There is an updated but less detailed version of this paper by the same name above.
We describe the basis of the work he have currently under way to implement a new rendering algorithm called ``light-driven global illumination''. This algorithm is a departure from conventional raytracing and radiosity renderers which addresses a number of deficiencies intrinsic to those approaches.
Appeared in "International Journal for Numerical Methods in Engineering", vol. 37, no. 6 (30 March, 1994).
Simulated annealing can minimize both profile and fill of sparse matrices. We applied these techniques to a number of sparse matrices from the Harwell-Boeing Sparse Matrix Collection. We were able to reduce profile typically to about 80% of that attained by conventional profile minimization techniques (and sometimes much lower), but fill reduction was less successful (85% at best). We present a new algorithm that significantly speeds up profile computation during the annealing process. Simulated annealing is, however, still much more time-consuming than conventional techniques and is therefore likely to be useful only in situations where the same sparse matrix is being used repeatedly.
As presented at the 1993 Western Computer Graphics Symposium at Silver Star, BC. A slightly modified version appeared in Computer Graphics Forum, vol. 13, no. 2 (June, 1994).
There is a need to develop shaders that not only ``look good'', but are more physically plausible. From physical and geometric considerations, we review the derivation of a shading equation expressing reflected radiance in terms of incident radiance and the bidirectional reflectance distribution function (BRDF). We then examine the connection between this equation and conventional shaders used in computer graphics. Imposing the additional physical constraints of energy conservation and Helmholtz reciprocity allows us to create variations of the conventional shaders that are more physically plausible.
As presented at the 1992 Western Computer Graphics Symposium in Banff, Alberta.
We investigate the application of multigrid techniques to the solution of the ``classic'' radiosity equation. After overviews of the global illumination problem and of radiosity, we describe the latter's solution via multigrid methods.
An implementation of the multigrid algorithm presented here is able to solve the classic radiosity equation in about 50% of the time required by the more commonly-used Gauss-Seidel approach. Although few researchers currently use classic radiosity, we discuss possibilities for the adaption of multigrid methods to more recent radiosity solution techniques.
Presented at Eurographics '90 (3-7 September, 1990).
This paper describes a way to perform realistic three-dimensional texturing of ray-traced objects with irregular surfaces. Such texturing has been done in the past with texture mapping, particle systems, or volumetric methods. We propose an alternative to these called a "lattice". Lattices work as fast but inexact ray tracers. As long as lattices are used for small objects, though, the inexactness doesn't show on the scale of the display, and the result is acceptable.
The paper shows how lattices can be integrated with a more traditional ray tracer, with several examples.
Time and memory space considerations are major constraints on lattices, preventing widespread application at the present time. The paper discusses these limitations and how they might be reduced.
Presented at the 1986 Winter USENIX Conference
This paper presents an architectural description of Galadriel, a window management system that provides both text and graphics services to client processes. Unlike most other window managers, Galadriel runs under UNIX on a hosted, display list terminal instead of a bitmapped workstation. It discusses the advantages and disadvantages of this approach as well as areas for further development.