3D Lingo Dictionary > A-B > blendFunctionList |  |

blendFunctionList

Syntax

    member(whichCastmember).shader(whichShader).blendFunctionList{[index]}
    member(whichCastmember).model(whichModel).shader.blendFunctionList{[index]}
    member(whichCastmember).model(whichModel).shaderList{[index]}.blendFunctionList{[index]}

Description

3D `#standard` shader property; a linear list that indicates the manner in which each texture layer blends with the texture layer below it.

The shader's texture list and blend function list both have eight index positions. Each index position in the blend function list controls blending for the texture at the corresponding index position in the texture list. You can set all index positions of the list to the same value at one time by not specifying the optional `index` parameter. Use the `index` parameter to set the list one index position at a time.

Each index position of the blend function list can have one of the following values:

`#multiply` multiplies the RGB values of the texture layer by the RGB values of the texture layer below it.

`#add` adds the RGB values of the texture layer to the RGB values of the texture layer below it, and then clamps to 255.

`#replace` causes the texture to cover the texture layer below it. No blending occurs.

`#blend` causes blending to be controlled by the value of the `blendSource` property, which allows alpha blending. See the entry for the `blendSource` property for more information.

The default value of this property is `#multiply`.

Example

In this example, the `shaderList` property of the model named MysteryBox contains six shaders. This statement shows that the value of the fourth index position of the `blendFunctionList` property of the second shader is set to `#blend`. Blending of the fourth texture layer of the second shader of the model will be controlled by the settings of the `blendSource`, `blendSourceList`, `blendConstant`, `blendConstantList`, `diffuse`, `diffuseColor`, and `useDiffuseWithTexture` properties.

    put member("Level2").model("MysteryBox").shaderList[2].blendFunctionList[4]
    -- #blend

See also

`blendConstant`, `blendConstantList`, `blendFunction`, `blendSource`, `blendSourceList`, `diffuse, diffuseColor, useDiffuseWithTexture`