Material |
public abstract class MaterialBase : IMaterial, IImmutable, IEquatable<IMaterial>
The MaterialBase type exposes the following members.
Name | Description | |
---|---|---|
MaterialBase | Initializes a new instance of the MaterialBase class with default values for specular intensity, exponent and mixing coefficient. | |
MaterialBase(Double, Double) | Initializes a new instance of the MaterialBase class. | |
MaterialBase(Double, Double, Double) | Initializes a new instance of the MaterialBase class. |
Name | Description | |
---|---|---|
Color | Gets the diffuse color of the material. | |
HasColor | Gets a value indicating whether this instance has a color by itself. | |
HasTexture | Gets a value indicating whether this instance has texture. | |
IndexOfRefraction | ||
IsVisible | Gets a value indicating whether this material is visible at all. There might be one material instance that could be used as a convenient place holder for null, that is treated as "no material". Drawing contexts should not draw anything if the material returns false for this property. | |
Metalness | Mixing coefficient for specular reflection: value between 0 and 1. If 0, the reflected specular light is multiplied with the material diffuse color If 1, the reflected specular light has the same color as the incident light (thus as if it is reflected at a white surface) | |
PhongModelDiffuseIntensity | ||
PhongModelSpecularExponent | ||
PhongModelSpecularIntensity | Gets the specular intensity normalized for phong model. This is the expression SpecularIntensity*(1+SpecularExponent). This pre-factor in the Phong equation ensures that the total light intensity reflected in all directions of the half sphere will not change when changing the SpecularExponent. | |
Smoothness | The smothness value, a value in the range [0,1]. A value of 0 defines a rough diffuse surface, and a value of 1 a very shiny surface. |
Name | Description | |
---|---|---|
Equals(IMaterial) | Indicates whether the current object is equal to another object of the same type. | |
Equals(Object) | Determines whether the specified object is equal to the current object. (Inherited from Object) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) | |
GetHashCode | Serves as the default hash function. (Inherited from Object) | |
GetType | Gets the Type of the current instance. (Inherited from Object) | |
HasSameSpecularPropertiesAs | Determines whether this material has the same specular properties as the material provided in anotherMaterial. | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object) | |
ToString | Returns a string that represents the current object. (Inherited from Object) | |
VerifyIndexOfRefraction | Verifies the specular mixing coefficient to be in the range [0, 1]. | |
VerifyMetalness | Verifies the metalness to be in the range [0, 1]. | |
VerifySmoothness | Verifies the smothness to be in the range [0,1] | |
WithColor | ||
WithIndexOfRefraction | Gets a new instance of the material with the specular mixing coefficient set to the provided value. | |
WithMetalness | Gets a new instance of the material with the specular mixing coefficient set to the provided value. | |
WithSmoothness | Gets a new instance of the material with the smothness set to the provided value. | |
WithSpecularProperties | Gets a new instance of this material with all specular properties set to the provided values. | |
WithSpecularPropertiesAs | Returns a new material based on this material, but with all specular properties taken from the template material provided in templateMaterial. |
Name | Description | |
---|---|---|
_indexOfRefraction | The index of refraction. i.e. a value between 1 and infinity. | |
_metalness | Value between 0 and 1. A value of 0 indicates a plastic like surface, a value of 1 a metal like surface. If 0, the reflected specular light has the same color as the incident light (thus as if it is reflected at a white surface). This is the behaviour of plastic surfaces. If 1, the reflected specular light is multiplied with the material diffuse color. This is the behaviour of metals like gold. | |
_smoothness | A value between 0 and 1. A value of 0 defines a rough surface, a value of 1 a very shiny one. |