Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

Phx::GraphicsEngine::MaterialDescription Class Reference

A description of a surface material. More...

#include <PhxGraphicsEngine.h>

Inheritance diagram for Phx::GraphicsEngine::MaterialDescription:

Phx::Description Phx::LockedPtrInterface< Description > List of all members.

Public Member Functions

virtual void resourceName (const String &resourceName)=0
const String & resourceName (void) const
virtual void shininess (double shininess)=0
 Sets material shininess - the size of specular highlights.
double shininess (void) const
 Gets the current shininess value for this material.
virtual void specular (const RgbaColor &specular)=0
 Sets the specular reflectance.
const RgbaColorspecular (void) const
 Gets the current specular reflectance color.
virtual void ambient (const RgbaColor &ambient)=0
 Sets the ambient light reflectance.
const RgbaColorambient (void) const
 Gets the current ambient reflectance.
virtual void diffuse (const RgbaColor &diffuse)=0
 Sets the diffuse light reflectance.
const RgbaColordiffuse (void) const
 Gets the current diffuse reflectance.
virtual void emission (const RgbaColor &emission)=0
 Sets the emission color for the surface.
const RgbaColoremission (void) const
 Gets the current emission color.

Protected Member Functions

void setResourceName (const String &name)
void setShininess (double s)
void setDiffuse (const RgbaColor &c)
void setAmbient (const RgbaColor &c)
void setSpecular (const RgbaColor &c)
void setEmission (const RgbaColor &c)

Detailed Description

A description of a surface material.


Member Function Documentation

const RgbaColor& Phx::GraphicsEngine::MaterialDescription::ambient void   )  const [inline]
 

Gets the current ambient reflectance.

Returns:
The amount of each color component of ambient light that is reflected.

virtual void Phx::GraphicsEngine::MaterialDescription::ambient const RgbaColor ambient  )  [pure virtual]
 

Sets the ambient light reflectance.

Parameters:
ambient The amount of each color component of ambient light that is reflected.

const RgbaColor& Phx::GraphicsEngine::MaterialDescription::diffuse void   )  const [inline]
 

Gets the current diffuse reflectance.

Returns:
The amount of each color component of diffuse light that is reflected.

virtual void Phx::GraphicsEngine::MaterialDescription::diffuse const RgbaColor diffuse  )  [pure virtual]
 

Sets the diffuse light reflectance.

The amount of diffuse light reflected from a surface is related to its angle relative to the light source.

Parameters:
diffuse The amount of each color component of diffuse light that is reflected.

const RgbaColor& Phx::GraphicsEngine::MaterialDescription::emission void   )  const [inline]
 

Gets the current emission color.

Returns:
The amount of each color component emitted from the surface, irrespective of lighting.

virtual void Phx::GraphicsEngine::MaterialDescription::emission const RgbaColor emission  )  [pure virtual]
 

Sets the emission color for the surface.

Parameters:
emission The amount of each color component of that is emitted from the surface, irrespective of lighting.

double Phx::GraphicsEngine::MaterialDescription::shininess void   )  const [inline]
 

Gets the current shininess value for this material.

Returns:
The current shininess of the material.

virtual void Phx::GraphicsEngine::MaterialDescription::shininess double  shininess  )  [pure virtual]
 

Sets material shininess - the size of specular highlights.

If the new value is different from that in the material file, useFile() will become false.

Parameters:
shininess The new shininess parameter. Clamped to range [0, +inf).

const RgbaColor& Phx::GraphicsEngine::MaterialDescription::specular void   )  const [inline]
 

Gets the current specular reflectance color.

Returns:
The amount of each color component reflected via specular reflection.

virtual void Phx::GraphicsEngine::MaterialDescription::specular const RgbaColor specular  )  [pure virtual]
 

Sets the specular reflectance.

The amount of specular light reflected from a surface is related to its angle relative to the light source and to the viewer. Specular reflectance creates "highlights" with size controlled by the shininess attribute. Plastics typically have white specular, while metals tend to have specular match the diffuse color.

Parameters:
specular The amount of each color component of specular light that is reflected.


The documentation for this class was generated from the following file:
Generated on Wed Dec 21 22:05:38 2005 for Phoenix OSFS by  doxygen 1.4.2