Packageaway3d.materials.methods
Classpublic class SimpleShadowMapMethodBase
InheritanceSimpleShadowMapMethodBase Inheritance ShadowMapMethodBase Inheritance ShadingMethodBase Inheritance NamedAssetBase Inheritance flash.events.EventDispatcher
Subclasses DitheredShadowMapMethod, FilteredShadowMapMethod, HardShadowMapMethod, NearShadowMapMethod, SoftShadowMapMethod, TripleFilteredShadowMapMethod

SimpleShadowMapMethodBase provides an abstract method for simple (non-wrapping) shadow map methods.



Public Properties
 PropertyDefined By
 Inheritedalpha : Number
The "transparency" of the shadows.
ShadowMapMethodBase
 InheritedassetFullPath : Array
[read-only]
NamedAssetBase
 InheritedassetNamespace : String
[read-only]
NamedAssetBase
 InheritedassetType : String
[read-only] The type of the asset.
ShadowMapMethodBase
 InheritedcastingLight : LightBase
[read-only] The light casting the shadows.
ShadowMapMethodBase
 Inheritedepsilon : Number
A small value to counter floating point precision errors when comparing values in the shadow map with the calculated depth value.
ShadowMapMethodBase
 Inheritedid : String
NamedAssetBase
 Inheritedname : String
NamedAssetBase
 InheritedoriginalName : String
[read-only] The original name used for this asset in the resource (e.g.
NamedAssetBase
 Inheritedpasses : Vector.<MaterialPassBase>
[read-only] Any passes required that render to a texture used by this method.
ShadingMethodBase
Protected Properties
 PropertyDefined By
 Inherited_alpha : Number = 1
ShadowMapMethodBase
 Inherited_castingLight : LightBase
ShadowMapMethodBase
  _depthMapCoordReg : ShaderRegisterElement
SimpleShadowMapMethodBase
 Inherited_epsilon : Number = .02
ShadowMapMethodBase
 Inherited_passes : Vector.<MaterialPassBase>
ShadingMethodBase
 Inherited_shadowMapper : ShadowMapperBase
ShadowMapMethodBase
 Inherited_sharedRegisters : ShaderRegisterData
ShadingMethodBase
  _usePoint : Boolean
SimpleShadowMapMethodBase
Public Methods
 MethodDefined By
  
Creates a new SimpleShadowMapMethodBase object.
SimpleShadowMapMethodBase
 Inherited
assetPathEquals(name:String, ns:String):Boolean
NamedAssetBase
 Inherited
Copies the state from a ShadingMethodBase object into the current object.
ShadingMethodBase
 Inherited
dispose():void
Cleans up any resources used by the current object.
ShadingMethodBase
 Inherited
resetAssetPath(name:String, ns:String = null, overrideOriginal:Boolean = true):void
NamedAssetBase
Protected Methods
 MethodDefined By
  
Gets the fragment code for shadow mapping with a planar shadow map.
SimpleShadowMapMethodBase
  
Gets the vertex code for shadow mapping with a planar shadow map (fe: directional lights).
SimpleShadowMapMethodBase
  
Gets the fragment code for shadow mapping with a point light.
SimpleShadowMapMethodBase
  
Gets the vertex code for shadow mapping with a point light.
SimpleShadowMapMethodBase
 Inherited
getTex2DSampleCode(vo:MethodVO, targetReg:ShaderRegisterElement, inputReg:ShaderRegisterElement, texture:TextureProxyBase, 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
A helper method that generates standard code for sampling from a cube texture.
ShadingMethodBase
 Inherited
Marks the shader program as invalid, so it will be recompiled before the next render.
ShadingMethodBase
Public Constants
 ConstantDefined By
 InheritedDEFAULT_NAMESPACE : String = default
[static]
NamedAssetBase
Property Detail
_depthMapCoordRegproperty
protected var _depthMapCoordReg:ShaderRegisterElement

_usePointproperty 
protected var _usePoint:Boolean

depthMapCoordRegproperty 
depthMapCoordReg:ShaderRegisterElement

Wrappers that override the vertex shader need to set this explicitly


Implementation
    arcane function get depthMapCoordReg():ShaderRegisterElement
    arcane function set depthMapCoordReg(value:ShaderRegisterElement):void
Constructor Detail
SimpleShadowMapMethodBase()Constructor
public function SimpleShadowMapMethodBase(castingLight:LightBase)

Creates a new SimpleShadowMapMethodBase object.

Parameters
castingLight:LightBase — The light used to cast shadows.
Method Detail
activate()method
override arcane function activate(vo:MethodVO, stage3DProxy:Stage3DProxy):void

Parameters

vo:MethodVO
 
stage3DProxy:Stage3DProxy

activateForCascade()method 
arcane function activateForCascade(vo:MethodVO, stage3DProxy:Stage3DProxy):void

Sets the method state for cascade shadow mapping.

Parameters

vo:MethodVO
 
stage3DProxy:Stage3DProxy

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

getCascadeFragmentCode()method 
arcane function getCascadeFragmentCode(vo:MethodVO, regCache:ShaderRegisterCache, decodeRegister:ShaderRegisterElement, depthTexture:ShaderRegisterElement, depthProjection:ShaderRegisterElement, targetRegister:ShaderRegisterElement):String

Gets the fragment code for combining this method with a cascaded shadow map method.

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.
 
regCache:ShaderRegisterCache — The register cache used during the compilation.
 
decodeRegister:ShaderRegisterElement — The register containing the data to decode the shadow map depth value.
 
depthTexture:ShaderRegisterElement — The texture containing the shadow map.
 
depthProjection:ShaderRegisterElement — The projection of the fragment relative to the light.
 
targetRegister:ShaderRegisterElement — The register to contain the shadow coverage

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

Parameters

vo:MethodVO
 
regCache:ShaderRegisterCache
 
targetReg:ShaderRegisterElement

Returns
String
getPlanarFragmentCode()method 
protected function getPlanarFragmentCode(vo:MethodVO, regCache:ShaderRegisterCache, targetReg:ShaderRegisterElement):String

Gets the fragment code for shadow mapping with a planar shadow map.

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.
 
regCache:ShaderRegisterCache — The register cache used during the compilation.
 
targetReg:ShaderRegisterElement — The register to contain the shadow coverage

Returns
String
getPlanarVertexCode()method 
protected function getPlanarVertexCode(vo:MethodVO, regCache:ShaderRegisterCache):String

Gets the vertex code for shadow mapping with a planar shadow map (fe: directional lights).

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.
 
regCache:ShaderRegisterCache — The register cache used during the compilation.

Returns
String
getPointFragmentCode()method 
protected function getPointFragmentCode(vo:MethodVO, regCache:ShaderRegisterCache, targetReg:ShaderRegisterElement):String

Gets the fragment code for shadow mapping with a point light.

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.
 
regCache:ShaderRegisterCache — The register cache used during the compilation.
 
targetReg:ShaderRegisterElement — The register to contain the shadow coverage

Returns
String
getPointVertexCode()method 
protected function getPointVertexCode(vo:MethodVO, regCache:ShaderRegisterCache):String

Gets the vertex code for shadow mapping with a point light.

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.
 
regCache:ShaderRegisterCache — The register cache used during the compilation.

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

Parameters

vo:MethodVO
 
regCache:ShaderRegisterCache

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

Initializes unchanging shader constants using the data from a MethodVO.

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.

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

Initializes the properties for a MethodVO, including register and texture indices.

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.

setRenderState()method 
override arcane function setRenderState(vo:MethodVO, renderable:IRenderable, stage3DProxy:Stage3DProxy, camera:Camera3D):void

Sets the render state for a single renderable.

Parameters

vo:MethodVO — The MethodVO object linking this method with the pass currently being compiled.
 
renderable:IRenderable — The renderable currently being rendered.
 
stage3DProxy:Stage3DProxy — The Stage3DProxy object currently used for rendering.
 
camera:Camera3D — The camera from which the scene is currently rendered.