Re: Ambient components of materials: default incorrect?

New Message Reply Date view Thread view Subject view Author view

From: Angus Dorbie (dorbie++at++sgi.com)
Date: 06/12/2001 13:39:38


The light model is really simple, this just gives you a little more
flexibility describing materials. Many set ambient == diffuse, others
don't. I don't think too many lose sleep over the defaults. Different
apps can assume different defaults which I assume is your problem, but
if you are reading app specific data defaults should be implied based on
the application defaults.

Cheers,Angus.

Bram Stolk wrote:
>
> pfHello,
>
> It looks like the default ambient component of a material
> is not what you would expect.
>
> >From the manpage:
> After createing a pfMaterial, the default colors are:
>
> Light Component | Red Green Blue
> ________________|___________________
> PFMTL_AMBIENT | 0.2 0.2 0.2
> PFMTL_DIFFUSE | 0.8 0.8 0.8
> PFMTL_EMISSION | 0.0 0.0 0.0
> PFMTL_SPECULAR | 0.0 0.0 0.0
>
> More logical would be:
> ambient and diffuse both to 1,1,1
>
> At first, I thought that this was a bug in Performer, but it
> turns out that OpenGL uses the same defaults, even though
> in the OpenGL Programming Guide (red-book), it is stated that
> "Ambient and diffuse reflectances define the color of the
> material and are typically similar if not identical"
>
> This last statement makes a lot of sense:
> The color of an object when lit with ambient light is highly
> likely to be exactly the same as the color of the object
> when it is lit with diffuse light. The red-book gives a good
> example of a situation when you do want to use different values:
> if the object is in a room with red walls, the object is likely
> to have different ambient characteristics.
> Note that in this case you require knowledge on other objects
> in the proximity of the object you are specifying.
>
> The .2,.2,.2 ambient component that OpenGL and Performer use
> per default, was probably inspired by the idea that in outdoor
> scenes you want more diffuse light than ambient light.
> HOWEVER! this fact should be expressed in the color settings
> of the lightsources, not in the color settings of the materials.
>
> More evidence that the default ambient and default diffuse
> components of a material should be identical, is on page 197
> of the redbook:
>
> "For real-world objects, diffuse and ambient reflectance are
> normally the same color. For this reason, OpenGL provides
> you with a convenient way of assigning the same value to both
> simultaneously with glMaterial*()"
>
> How confusing: why providing this convenience, without having
> a convenient default in the first place ????
>
> A lot of modeling packages and modelers abuse ambient
> settings, so in projects with a lot of data conversions, we
> experience quite a few problems with this. To sanatize our
> models, we try to adhere to the recommendations in the red-book,
> unfortunately this seems to clash with default pfMaterials, and
> even with the default OpenGL materials.
>
> So, how are other people on this list treating ambient light and
> the ambient component of material colors?
>
> Bram Stolk
>
> --
> ------------------------------------------------------------------------------
> Bram Stolk, VR Specialist.
> SARA Academic Computing Services Amsterdam, PO Box 94613, 1090 GP AMSTERDAM
> email: bram++at++sara.nl Phone +31-20-5923059 Fax +31-20-6683167
>
> "I heard if you play the NT-4.0-CD backwards, you get a satanic message."
> "Thats nothing, if you play it forward, it installs NT-4.0"
> ------------------------------------------------------------------------------
> -----------------------------------------------------------------------
> List Archives, FAQ, FTP: http://www.sgi.com/software/performer/
> Open Development Project: http://oss.sgi.com/projects/performer/
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com

-- 
For Performer+OpenGL tutorials http://www.dorbie.com/

"Whenever there is a conflict between human rights and property rights, human rights must prevail." --Abraham Lincoln


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Tue Jun 12 2001 - 13:35:55 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.