Yage3D.net
 

yage.resource.material

Authors:
Eric Poggel

License:
LGPL v3

class Material ;


MaterialTechnique[] techniques ;


this(bool createAPass = false);


Material dup ();
Create a deep copy of the Material, cloning both techniques and passes.

void setPass (MaterialPass pass);
This is a convenience function to set the value for the first pass of the first technique. A MaterialTechnique is created and added if none exist.

MaterialPass getPass ();
Get the first pass of the first technique if it exists, otherwise return null .

static Material getDefaultMaterial ();


class MaterialTechnique ;


MaterialPass[] passes ;


MaterialTechnique dup ();


bool hasTranslucency ();
Returns true if the Technique has regions that can be partially seen through. This is true if the first pass has blending enabled.

class MaterialPass ;


enum Blend ;


NONE
Draw a layer or texture as completely opaque.

ADD
Add the color values of a layer or texture to those behind it.

AVERAGE
Average the color values of a layer or texture with those behind it.

MULTIPLY
Mutiply the color values of a lyer or texture with those behind it.

enum Cull ;


BACK
Cull the back faces of a layer and render the front.

FRONT
Cull the front faces of a layer and render the back.

NONE
Draw both back and front faces

enum Draw ;
How to draw polygons

POLYGONS
Draw a layer as complete filled-in polygons.

LINES
Draw a layer as Lines (a wireframe).

POINTS
Draw a layer as a series of points.

enum AutoShader ;
Type of shader to generate, if the shader property is null

NONE
Used fixed-function rendering or the Pass's Shader property if set.

PHONG
Per pixel lighting, and if there's a second texture, use it as a normal map

DETAIL
Per pixel lighting, and if there's a second texture, use it as a detail texture

bool reflective ;
Use environment mapping for the texture

bool lighting ;
If false , diffuse is used as the color.

bool flat ;
If true , use flat shading

float linePointSize ;
Thickness in pixels of lines and points.

Blend blend ;
Loaded from Collada's transparent property.

Yage source files are copywritten by their specified authors and available under the terms of the GNU LGPL.
Documentation generated with CandyDoc on Wed Aug 11 11:14:28 2010