WrapSpecularMethod provides a base class for specular methods that wrap a specular method to alter the strength
of its calculated strength.
bitmapData:BitmapData
[read-write]
The bitmapData that encodes the specular highlight strength per texel in the red channel, and the sharpness
in the green channel.
Implementation
public function get bitmapData():BitmapData
public function set bitmapData(value:BitmapData):void
globalPosVertexReg:ShaderRegisterElement
[read-write]
Implementation
arcane function get globalPosVertexReg():ShaderRegisterElement
arcane function set globalPosVertexReg(value:ShaderRegisterElement):void
mipmap:Boolean
[read-write]
Defines whether any used textures should use mipmapping.
Implementation
arcane function get mipmap():Boolean
arcane function set mipmap(value:Boolean):void
needsGlobalPos:Boolean
[read-only]
Implementation
arcane function get needsGlobalPos():Boolean
needsNormals:Boolean
[read-only]
Indicates whether the material requires normals.
Implementation
arcane function get needsNormals():Boolean
needsProjection:Boolean
[read-only]Implementation
arcane function get needsProjection():Boolean
needsUV:Boolean
[read-only]
Indicates whether the material requires uv coordinates.
Implementation
arcane function get needsUV():Boolean
needsView:Boolean
[read-only]
Indicates whether the material requires the view direction.
Implementation
arcane function get needsView():Boolean
normalFragmentReg:ShaderRegisterElement
[read-write]
The fragment register in which the normal is stored.
Implementation
arcane function get normalFragmentReg():ShaderRegisterElement
arcane function set normalFragmentReg(value:ShaderRegisterElement):void
numLights:int
[read-write]
The amount of lights the method needs to support.
Implementation
arcane function get numLights():int
arcane function set numLights(value:int):void
parentPass:MaterialPassBase
[read-write]
Implementation
arcane function get parentPass():MaterialPassBase
arcane function set parentPass(value:MaterialPassBase):void
passes:Vector
[read-only]
Any passes required that render to a texture used by this method.
Implementation
public function get passes():Vector
projectionReg:ShaderRegisterElement
[write-only]
Implementation
arcane function set projectionReg(value:ShaderRegisterElement):void
repeat:Boolean
[read-write]
Defines whether textures should be tiled.
Implementation
arcane function get repeat():Boolean
arcane function set repeat(value:Boolean):void
shadowRegister:ShaderRegisterElement
[write-only]
Implementation
public function set shadowRegister(value:ShaderRegisterElement):void
smooth:Boolean
[read-write]
Defines whether smoothing should be applied to any used textures.
Implementation
arcane function get smooth():Boolean
arcane function set smooth(value:Boolean):void
specularDataRegister:ShaderRegisterElement
[read-only]
The register element containing the specular data.
Implementation
arcane function get specularDataRegister():ShaderRegisterElement
specularTextureRegister:ShaderRegisterElement
[read-only]
The register element containing the specular map data.
Implementation
arcane function get specularTextureRegister():ShaderRegisterElement
UVFragmentReg:ShaderRegisterElement
[read-write]
Implementation
arcane function get UVFragmentReg():ShaderRegisterElement
arcane function set UVFragmentReg(value:ShaderRegisterElement):void
viewDirFragmentReg:ShaderRegisterElement
[read-write]
Implementation
arcane function get viewDirFragmentReg():ShaderRegisterElement
arcane function set viewDirFragmentReg(value:ShaderRegisterElement):void
viewDirVaryingReg:ShaderRegisterElement
[write-only]
Implementation
public function set viewDirVaryingReg(value:ShaderRegisterElement):void
public function WrapSpecularMethod(modulateMethod:Function, baseSpecularMethod:BasicSpecularMethod = null)
Parameters
| modulateMethod:Function — The method which will add the code to alter the base method's strength. It needs to have the signature modSpecular(t : ShaderRegisterElement, regCache : ShaderRegisterCache) : String, in which t.w will contain the specular strength and t.xyz will contain the half-vector or the reflection vector.
|
|
| baseSpecularMethod:BasicSpecularMethod (default = null ) — The base specular method on which this method's shading is based.
|
Init Parameters
arcane override function activate(context:Context3D, contextIndex:uint):void
Sets the render state for this method.
Parameters
| context:Context3D — The Context3D currently used for rendering.
|
|
| contextIndex:uint |
arcane override function deactivate(context:Context3D):void
Parameters
public override function dispose(deep:Boolean):void
Cleans up any resources used by the current object.
Parameters
| deep:Boolean — Indicates whether other resources should be cleaned up, that could potentially be shared across different instances.
|
arcane override function getFragmentAGALPreLightingCode(regCache:ShaderRegisterCache):String
Get the fragment shader code that will be needed before any per-light code is added.
Parameters
Returns
arcane override function getFragmentCodePerLight(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
Returns
arcane override function getFragmentPostLightingCode(regCache:ShaderRegisterCache, targetReg:ShaderRegisterElement):String
Get the fragment shader code that should be added after all per-light code. Usually composits everything to the target register.
Parameters
Returns
arcane override function getVertexCode(regCache:ShaderRegisterCache):String
Get the vertex shader code for this method.
Parameters
Returns
public override function invalidateBitmapData():void
Marks the texture for update next on the next render.
arcane override function reset():void
Resets the method's state for compilation.