[comp.graphics] Raytracer Glass?

pwh@bradley.UUCP (06/28/90)

What are the spectral properties of glass
that I could use in a raytracing program?
(have MTV and Rayshade, either nff or the
Rayshade description language would be fine,
but I'd prefer nff)

I've a friend who's been working on the problem
for a while now, and it's given some interesting results,
but nothing that actually looks like glass....
----------------------------------------------------------------------------
				...uiucdcs\
	Pete Hartman		......noao >!bradley!pwh
				......cepu/

		INTERNET: pwh@bradley.edu
		ARPA: cepu!bradley!pwh@seas.ucla.edu

mkelly@comix.cs.uoregon.edu (Michael A. Kelly) (07/01/90)

In article <8600001@bradley> pwh@bradley.UUCP writes:
>
>What are the spectral properties of glass
>that I could use in a raytracing program?

Try "Color Science" by Wyszecki & Stiles (1982).  I don't have the
book with me but I'm pretty sure it has the information you need.

Mike.

musgrave-forest@CS.YALE.EDU (F. Ken Musgrave) (07/01/90)

In article <8600001@bradley> pwh@bradley.UUCP writes:
>
>What are the spectral properties of glass
>that I could use in a raytracing program?
>
>I've a friend who's been working on the problem
>for a while now, and it's given some interesting results,
>but nothing that actually looks like glass....

  Glass is not so easy to do - I got a Master's degree for doing it! 

  Three things are necessary: (1) The proper index of refraction (1.5-1.9).
(2) The proper reflection function - Fresnel's Law.  (3) Dispersion.
Also, you should propagate rays spawned by total internal reflection -
many ray tracers quash such rays outright; this can lead to ugly artifacts
in (glass) objects with planar surfaces.

  The first two things can be standard features in a ray tracer, the third 
is uncommon.  There are two published solutions (that I know of):

	Thomas, S. W., "Dispersive Refraction in Ray Tracing", Visual 
	Computer, vol. 2, no. 1, pp 3-8, Springer Int'l, Jan. '86

	Musgrave, F. K., "Prisms and Rainbows: a Dispersion Model for 
	Computer Graphics", Proceedings of the Graphics Interface '89,
	London, Canada, June '89

  Neither of these references is easy to get.  Perhaps UC Santa Cruz would
provide a copy of my thesis:

	Musgrave, F. K., "A Realistic Model of Refraction for Computer
	Graphics", Master's Thesis, UC Santa Cruz, Santa Cruz CA, Sept. '87

  As an alternative, I will put the troff sources for my GI paper where you
can get them via anonymous ftp on weedeater.math.yale.edu - but you won't
get any of the nice illustrations.

  At any rate to get dispersion into a ray tracer requires some hacking,
and will in general slow down the rendering a *lot*.  Thomas & I used quite
different approaches; his would probably be faster for scenes without much
dispersion, and vice-versa.

  A future version of Craig Kolb's RayShade may feature dispersion...
(I'm not at liberty to distribute my ray tracer with dispersion.)

						Ken

*===============================================================*
F. Kenton ("Ken") Musgrave	arpanet: musgrave-forest@yale.edu
Yale U Depts of Math and CS	(203) 432-4016
Box 2155 Yale Station		Primary Metaphysical Principle:
New Haven, CT 06520				Deus ex machina
*===============================================================*

3ksnn64@cadlab1.ecn.purdue.edu (Joe Cychosz) (07/06/90)

In article <8600001@bradley> pwh@bradley.UUCP writes:
>
>What are the spectral properties of glass
>that I could use in a raytracing program?

One thing to keep in mind, glass is usually about 4% reflective.