[comp.graphics] silver color

tada@athena.mit.edu (Ivan Tadayoff) (01/31/88)

Does anyone know what values of RGB to use to make a nice looking silver?
(as in a metallic object?)  I've tried a variety of combinations and none 
of them seem very pleasing.

While on the subject, does anyone know a good book on how to color ray-
tracing views?  For example, how much does a light ray change when it
reflects off a metallic sphere?  

Thanks in advance for any help.

atc@ut-sally.UUCP (Alvin T. Campbell III) (02/02/88)

In article <2679@bloom-beacon.MIT.EDU> tada@athena.mit.edu (Ivan Tadayoff) 
writes:
>
>Does anyone know what values of RGB to use to make a nice looking silver?
>(as in a metallic object?)  I've tried a variety of combinations and none 
>of them seem very pleasing.
>
>While on the subject, does anyone know a good book on how to color ray-
>tracing views?  For example, how much does a light ray change when it
>reflects off a metallic sphere?  
>
>Thanks in advance for any help.

	You are attempting to do something very difficult.  Metallic
reflection can not be done very accurately using only an RGB triple 
to model reflective properties.	

	The most common shading model in graphics, developed at the
University of Utah, assumes that the diffuse color is dependent on the
light source color and the object color, but the specular color
is dependent only upon the light color.  This is a reasonable
approximation for plastic, but not for metal.  Most of the perceived
color of metal is from a specular component dependent on the light
and the surface properties.

	A reference which gives a starting point on how to do metallic
shading is the following:

	Cook, Robert L., and Kenneth E. Torrance, "A Reflectance Model
	for Computer Graphics", Computer Graphics (Proceedings of
	SIGGRAPH '81) v. 15, no. 3, (August 1981), pp.307-316.

	After digesting the material in the above reference, which will
probably take a while, you can get reflectance spectra from 

	Purdue University, Thermophysical Properties of Matter,
	v. 7: Thermal Radiative Properties of Metals, 1970.

	If all of this seems like too much work, and you just want to
settle for an RGB triple for silver, the best you can do is probably
the following:

	R = .95   G = .95   B = .95 
	Diffuse Coefficient = .25
	Specular Coefficient = .75
	Specular Power = 6.0

	I hope this helps.

				--A. T. Campbell--
				Computer Graphics Lab
			    Department of Computer Sciences
				University of Texas
				   Austin, Texas
				atc@sally.CS.UTEXAS.EDU

cfchiesa@bsu-cs.UUCP (Sir Xetwnk) (02/04/88)

In article <2679@bloom-beacon.MIT.EDU>, tada@athena.mit.edu (Ivan Tadayoff) writes:
> 
> Does anyone know what values of RGB to use to make a nice looking silver?
> (as in a metallic object?)  I've tried a variety of combinations and none 
> of them seem very pleasing.
> 
> While on the subject, does anyone know a good book on how to color ray-
> tracing views?  For example, how much does a light ray change when it
> reflects off a metallic sphere?  
> 
> Thanks in advance for any help.

Without going into the math, but perhaps filling in a few general concepts,
your question isn't so much one of finding the right COLOR for "silver,"
but rather of how to vary that color properly so that it gives the impression
of a reflective, rather than dull or "matte," surface.  A silver object is
actually colorless, or perhaps "gray" (as the previous respondent's "0.95-for-
all-three-primary-colors indicates), but usually reflects its surroundings.
In general, the more clearly (less fuzzy or vague) the reflections appear,
the shinier (silverier) your object appears to be.

If I'm not mistaken, the answer to "how much does a light ray change...etc"
has to do with defining a cone whose tip is at the reflection point and whose
axis is the normal to the sphere surface at that point.  I *think* you then 
determine whether your light source is within that cone, how far (angle) it 
is from the cone axis, and use that distance to compute how much "specular"
contribution to consider at that point, to be added to the overall illumina-
tion of the surface.  The wider (larger angle-at-the-tip) the cone, the more
diffuse the specular reflection, and the softer "finish" your surface appears
to have.  As for reflecting other objects in the environment, I haven't seen
the specifics anywhere, but would think that they should be handled similarly.

hansen@mips.COM (Craig Hansen) (02/04/88)

In article <2679@bloom-beacon.MIT.EDU>, tada@athena.mit.edu (Ivan Tadayoff) writes:
> Does anyone know what values of RGB to use to make a nice looking silver?
> (as in a metallic object?)  I've tried a variety of combinations and none 
> of them seem very pleasing.
> 
> While on the subject, does anyone know a good book on how to color ray-
> tracing views?  For example, how much does a light ray change when it
> reflects off a metallic sphere?  
> 
> Thanks in advance for any help.

The important feature to note is that a flat shade isn't going to look
silver. If you add specular reflections, it will make a dramatic difference
between a silver-colored plastic-appearing object and a silver-matallic object.
The color of the specular reflection, unlike the diffuse reflection is
generally the color of the light source, not the color of the object.
[This is a simplification, there are much more sophisticated metallic
color models. I think there was a SigGraph paper by Cook and Torrance
that covered this well.]

-- 
Craig Hansen
Manager, Architecture Development
MIPS Computer Systems, Inc.
...{ames,decwrl,prls}!mips!hansen or hansen@mips.com   408-991-0234

jackm@devvax.JPL.NASA.GOV (Jack Morrison) (02/05/88)

In article <1487@mips.mips.COM> hansen@mips.COM (Craig Hansen) writes:
>> Does anyone know what values of RGB to use to make a nice looking silver?
>> (as in a metallic object?)  I've tried a variety of combinations and none 

>The important feature to note is that a flat shade isn't going to look
>silver. If you add specular reflections, it will make a dramatic difference

>The color of the specular reflection, unlike the diffuse reflection is
>generally the color of the light source, not the color of the object.


But if you really want the shiny silver look (like Abel's "Sexy Robot"),
what you need to do is map reflections from a made-up environment.
Check your Siggraph proceedings - I believe it was Dr. Blinn's paper,
"Texture and Reflection Mapping" or some such. You know, the ol' teapot.




-- 
Jack C. Morrison	Jet Propulsion Laboratory
(818)354-1431		jackm@jpl-devvax.jpl.nasa.gov
"The paycheck is part government property, but the opinions are all mine."

val@terminus.UUCP (Val Kartchner) (02/05/88)

In article <2679@bloom-beacon.MIT.EDU>, tada@athena.mit.edu (Ivan Tadayoff)
writes:
> 
> Does anyone know what values of RGB to use to make a nice looking silver?
> (as in a metallic object?)  I've tried a variety of combinations and none 
> of them seem very pleasing.
> 
     There is no one color that makes silver or any other metallic looking
     colors.  The metallic appearance of an object (or picture) is that the
     metal is reflecting the light that is shinning on it.  This produces
     deviations from the most predominant color giving a metallic look.  If
     the metal is smoother, you get a more perfect reflection, with the tint
     of the metal applied to the reflection.  (e.g.: silver reflects white
     or a bright gray, but gold will reflect a yellow (red and green).)

     -------------------------- HLS to RGB conversion ---------------------

     Does anyone know how to convert colors from RGB (Red/Green/Blue)
     specifications to HLS (Hue/Lightness/Saturation) [HIS
     (Hue/Intensity/Saturation) or HSI].  (We would also be interested in
     converting from HSI to RGB.)  We have VT241/VT340's which require
     specifications in HSI, and we want to plot images that are specified in
     RGB values.  Mathematical specifications would be OK, but PLEASE
     include an English translation.  What we would like is to have a
     function, subroutine, or program (written in a common computer
     language) that does either or both tricks.

				Thank you in advance,
					 -=:[ VAL ]:=-

-- 
----  /\  ------------------------------------------------------------------
     /\/\  .    /\     |  Val Kartchner            |  This space
    /    \/ \/\/  \    |  #include <disclaimer.h>  |  intentionally blank
===/ U i n T e c h \===!ihnp4!utah-cs!utah-gr!uplherc!sp7040!terminus!val===

markv@uoregon.UUCP (Mark VandeWettering) (02/06/88)

In article <2679@bloom-beacon.MIT.EDU> tada@athena.mit.edu (Ivan Tadayoff) writes:

>Does anyone know what values of RGB to use to make a nice looking silver?
>(as in a metallic object?)  I've tried a variety of combinations and none 
>of them seem very pleasing.

	It is not merely a matter of selecting the appropriate
	RGB values, but also building a reflection model that is
	realistic.  Normal surfaces reflect light evenly in every
	direction in every wavelength (I know, an oversimplification).
	Metallic surfaces exhibit a more complex behavior.  Making a
	convincing metallic surface has been covered in some of the
	appropriate literature, but I am at home and my bibliography for
	such stuff isn't here.

>While on the subject, does anyone know a good book on how to color ray-
>tracing views?  For example, how much does a light ray change when it
>reflects off a metallic sphere?  
	
	Books indeed could be written, but I know of none.  Siggraph
	Course notes are great if you can get 'em.  I wish I hadn't lent
	mine out to some person in need.
>
>Thanks in advance for any help.

alibaba@ucscb.UCSC.EDU (73539000) (02/09/88)

I would suggest you pick up a copy of "Fundamentals of
Interactive Computer Graphics" by J.D. Foley and VanDam. Addison-
Wesley publishes it. It tells ya how to convert every system to
every other.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~  Alexander M. Rosenberg  ~ INTERNET: alibaba@ucscb.ucsc.edu   ~ Yoyodyne    ~
~  Crown College, UCSC     ~ UUCP:...!ucbvax!ucscc!ucscb!alibaba~ Propulsion  ~
~  Santa Cruz, CA 95064    ~ BITNET:alibaba%ucscb@ucscc.BITNET  ~ Systems, Inc~
~  (408) 426-8869	   ~ Disclaimer: Nobody is my employer  ~ :-)         ~
~			   ~ so nobody cares what I say.	~	      ~

dave@onfcanim.UUCP (Dave Martindale) (02/23/88)

In article <2029@bsu-cs.UUCP> cfchiesa@bsu-cs.UUCP (Sir Xetwnk) writes:
>
>Without going into the math, but perhaps filling in a few general concepts,
>your question isn't so much one of finding the right COLOR for "silver,"
>but rather of how to vary that color properly so that it gives the impression
>of a reflective, rather than dull or "matte," surface.  A silver object is
>actually colorless, or perhaps "gray" (as the previous respondent's "0.95-for-
>all-three-primary-colors indicates), but usually reflects its surroundings.

Actually, silver is not uniformly reflective.  I don't have the data
handy, but you will find that it reflects more strongly in read than in
blue, with green probably somewhere in between.  This gives silver
the "warm" quality of its reflection.  Aluminum, on the other hand,
is somewhat weak in red, giving a "cold" reflection (as well as having
less overall reflectivity, but that probably wouldn't be visible except
in side-by-side comparison).

However, this is a subtle difference, if you really want silver to look
different from aluminum or tin or rhodium.  First, to make something
look metallic at all, you have to get it reflecting its environment
properly.