Packageaway3d.materials.methods
Classpublic class BasicDiffuseMethod
InheritanceBasicDiffuseMethod Inheritance LightingMethodBase Inheritance ShadingMethodBase Inheritance flash.events.EventDispatcher
Subclasses CompositeDiffuseMethod, DepthDiffuseMethod, TerrainDiffuseMethod, WrapDiffuseMethod

BasicDiffuseMethod provides the default shading method for Lambert (dot3) diffuse lighting.



Public Properties
 PropertyDefined By
  alphaThreshold : Number
The minimum alpha value for which pixels should be drawn.
BasicDiffuseMethod
  diffuseAlpha : Number
The alpha component of the diffuse reflection.
BasicDiffuseMethod
  diffuseColor : uint
The color of the diffuse reflection when not using a texture.
BasicDiffuseMethod
 Inheritedpasses : Vector.<MaterialPassBase>
[read-only] Any passes required that render to a texture used by this method.
ShadingMethodBase
  texture : Texture2DBase
The bitmapData to use to define the diffuse reflection color per texel.
BasicDiffuseMethod
  _totalLightColorReg : ShaderRegisterElement
BasicDiffuseMethod
 InheritedviewDirVaryingReg : ShaderRegisterElement
ShadingMethodBase
Protected Properties
 PropertyDefined By
  _alphaThreshold : Number = 0
BasicDiffuseMethod
  _diffuseInputRegister : ShaderRegisterElement
BasicDiffuseMethod
 Inherited_globalPosReg : ShaderRegisterElement
ShadingMethodBase
 Inherited_normalFragmentReg : ShaderRegisterElement
ShadingMethodBase
 Inherited_passes : Vector.<MaterialPassBase>
ShadingMethodBase
 Inherited_projectionReg : ShaderRegisterElement
ShadingMethodBase
 Inherited_secondaryUVFragmentReg : ShaderRegisterElement
ShadingMethodBase
  _shadowRegister : ShaderRegisterElement
BasicDiffuseMethod
 Inherited_tangentVaryingReg : ShaderRegisterElement
ShadingMethodBase
  _useTexture : Boolean
BasicDiffuseMethod
 Inherited_uvFragmentReg : ShaderRegisterElement
ShadingMethodBase
 Inherited_viewDirFragmentReg : ShaderRegisterElement
ShadingMethodBase
 Inherited_viewDirVaryingReg : ShaderRegisterElement
ShadingMethodBase
Public Methods
 MethodDefined By
  
Creates a new BasicDiffuseMethod object.
BasicDiffuseMethod
  
[override] Copies the state from a BasicDiffuseMethod object into the current object.
BasicDiffuseMethod
  
dispose():void
[override] Cleans up any resources used by the current object.
BasicDiffuseMethod
  
generateMip(stage3DProxy:Stage3DProxy):void
BasicDiffuseMethod
Protected Methods
 MethodDefined By
 Inherited
getTexSampleCode(vo:MethodVO, targetReg:ShaderRegisterElement, inputReg:ShaderRegisterElement, uvReg:ShaderRegisterElement = null, forceWrap:String = null):String
A helper method that generates standard code for sampling from a texture using the normal uv coordinates.
ShadingMethodBase
 Inherited
Marks the shader program as invalid, so it will be recompiled before the next render.
ShadingMethodBase
Property Detail
_alphaThresholdproperty
protected var _alphaThreshold:Number = 0

_diffuseInputRegisterproperty 
protected var _diffuseInputRegister:ShaderRegisterElement

_shadowRegisterproperty 
protected var _shadowRegister:ShaderRegisterElement

_totalLightColorRegproperty 
public var _totalLightColorReg:ShaderRegisterElement

_useDiffuseTextureproperty 
arcane var _useDiffuseTexture:Boolean

_useTextureproperty 
protected var _useTexture:Boolean

alphaThresholdproperty 
alphaThreshold:Number

The minimum alpha value for which pixels should be drawn. This is used for transparency that is either invisible or entirely opaque, often used with textures for foliage, etc. Recommended values are 0 to disable alpha, or 0.5 to create smooth edges. Default value is 0 (disabled).


Implementation
    public function get alphaThreshold():Number
    public function set alphaThreshold(value:Number):void
diffuseAlphaproperty 
diffuseAlpha:Number

The alpha component of the diffuse reflection.


Implementation
    public function get diffuseAlpha():Number
    public function set diffuseAlpha(value:Number):void
diffuseColorproperty 
diffuseColor:uint

The color of the diffuse reflection when not using a texture.


Implementation
    public function get diffuseColor():uint
    public function set diffuseColor(value:uint):void
shadowRegisterproperty 
shadowRegister:ShaderRegisterElement  [write-only]


Implementation
    arcane function set shadowRegister(value:ShaderRegisterElement):void
textureproperty 
texture:Texture2DBase

The bitmapData to use to define the diffuse reflection color per texel.


Implementation
    public function get texture():Texture2DBase
    public function set texture(value:Texture2DBase):void
Constructor Detail
BasicDiffuseMethod()Constructor
public function BasicDiffuseMethod()

Creates a new BasicDiffuseMethod object.

Method Detail
activate()method
override arcane function activate(vo:MethodVO, stage3DProxy:Stage3DProxy):void

Parameters

vo:MethodVO
 
stage3DProxy:Stage3DProxy

cleanCompilationData()method 
override arcane function cleanCompilationData():void

copyFrom()method 
override public function copyFrom(method:ShadingMethodBase):void

Copies the state from a BasicDiffuseMethod object into the current object.

Parameters

method:ShadingMethodBase

dispose()method 
override public function dispose():void

Cleans up any resources used by the current object.

generateMip()method 
public function generateMip(stage3DProxy:Stage3DProxy):void

Parameters

stage3DProxy:Stage3DProxy

getFragmentCodePerLight()method 
override arcane function getFragmentCodePerLight(vo:MethodVO, lightIndex:int, lightDirReg:ShaderRegisterElement, lightColReg:ShaderRegisterElement, regCache:ShaderRegisterCache):String

Get the fragment shader code that will generate the code relevant to a single light.

Parameters

vo:MethodVO
 
lightIndex:int
 
lightDirReg:ShaderRegisterElement
 
lightColReg:ShaderRegisterElement
 
regCache:ShaderRegisterCache

Returns
String
getFragmentCodePerProbe()method 
override arcane function getFragmentCodePerProbe(vo:MethodVO, lightIndex:int, cubeMapReg:ShaderRegisterElement, weightRegister:String, regCache:ShaderRegisterCache):String

Get the fragment shader code that will generate the code relevant to a single light probe object.

Parameters

vo:MethodVO — The index of the light currently processed. This is a continuation of the lightIndex parameter of the getFragmentCodePerLight method.
 
lightIndex:int — The register containing the cube map for the current probe
 
cubeMapReg:ShaderRegisterElement — A string representation of the register + component containing the current weight
 
weightRegister:String — The register cache providing any necessary registers to the shader
 
regCache:ShaderRegisterCache

Returns
String
getFragmentPostLightingCode()method 
override arcane function getFragmentPostLightingCode(vo:MethodVO, regCache:ShaderRegisterCache, targetReg:ShaderRegisterElement):String

Parameters

vo:MethodVO
 
regCache:ShaderRegisterCache
 
targetReg:ShaderRegisterElement

Returns
String
getFragmentPreLightingCode()method 
override arcane function getFragmentPreLightingCode(vo:MethodVO, regCache:ShaderRegisterCache):String

Parameters

vo:MethodVO
 
regCache:ShaderRegisterCache

Returns
String
initVO()method 
override arcane function initVO(vo:MethodVO):void

Parameters

vo:MethodVO