material Element Reference

Abstract representation of a surface Material, defined without respect to the underlying surface. More...

List of all members.

Attributes

string bumpMap
 Specifies a path to an image to be applied as a bump map for this material.
ureal_t bumpIntensity
 Scaling factor for the intensity of the bump map effect.
medium medium
 Internal medium of shapes to which this material is applied.
filter filter
 Filter to use for filtering texture map lookups.
ureal_t repeatU
 Number of times to repeat texture coordinates across this Material in the horizontal direction, u.
ureal_t repeatV
 Number of times to repeat texture coordinates across this Material in the vertical direction, v.
bsdf bsdf
 Constant reflectivity model of this material, whose model-specific inputs are allowed to vary across the surface of this material.
emitter emitter
 Constant emittance model / distribution for this material, whose model-specific inputs are allowed to vary across the surface of this material.


Detailed Description

Abstract representation of a surface Material, defined without respect to the underlying surface.

There is a loose coupling between Shapes and Materials from the point-of-view of a Material, but all Shapes know about their surface Material. Materials subclass PropertyMap, and it is through this interface that Material properties may be set (ex: diffuse color, texture/bump/color map(s), index of refraction of interior volume, etc.).

Reflectivity, emittance, and sensor response (BSDFs, Emitters, and Sensors respectively) are three properties of a material that are defined at a single point on a surface. A Material encapsulates BSDF, Emitter, and Sensor properties defined over its surface, where specific instances of BSDF, Emitter, and Sensor are allowed to have their inputs vary with respect to position along the surface. In this respect, Materials represent a mapping from surface position to associated BSDF, Emitter, and Sensor functions, where the underlying functions themselves remain constant along the surface, and only the inputs vary among the different instances / surface points. For example, a Material may have a DiffuseBSDF over its entire surface, but a specific DiffuseBSDF instance obtained by getBSDF or implicitly in initSurfacePoint (which fills in the SurfacePoint's BSDF), is allowed to have its kd parameter (diffuse albedo) vary with respect to the given surface point via lookup in an associated kd texture map defined over the UV coordinates of the surface.

Note:
material corresponds to the underlying Milton class 'Material.'

Example usage:

"material": {
// this example material declares a planar area light source
// declare reflectivity (optional)
"bsdf" : {
"type" : "diffuse",
"kd"
: 0.5,
},
// declare emittance (optional)
"type" : "oriented",
"power" : [ 80, 80, 80 ],
},

// subnodes to which this material is applied
"translate" : [ 0, 1, 0 ],
// rotate plane to face downwards towards origin
"rotate" : [ 0, 0, 0, 1, 0, 0, 180 ],
"scale" : [ .75, 1, .75 ],
"plane" : { },
},
},

Attribute Documentation

Specifies a path to an image to be applied as a bump map for this material.

typestring
optionaltrue
defaultno bump map

Scaling factor for the intensity of the bump map effect.

typepositive real scalar
optionaltrue
default5

Internal medium of shapes to which this material is applied.

typemedium
optionaltrue
defaultair

Filter to use for filtering texture map lookups.

typefilter
optionaltrue
defaulttriangle

Number of times to repeat texture coordinates across this Material in the horizontal direction, u.

typepositive real scalar
optionaltrue
default1

Number of times to repeat texture coordinates across this Material in the vertical direction, v.

typepositive real scalar
optionaltrue
default1

Constant reflectivity model of this material, whose model-specific inputs are allowed to vary across the surface of this material.

typebsdf
optionaltrue
defaultgray, diffuse

Constant emittance model / distribution for this material, whose model-specific inputs are allowed to vary across the surface of this material.

typeemitter
optionaltrue
defaultnull (no emittance)


Generated on 28 Feb 2009 for MiltonScenefileFormat by doxygen 1.5.6