CompositeSpecularMethod provides a base class for specular methods that wrap a specular method to alter the strength
of its calculated strength.
globalPosReg:ShaderRegisterElement[override]
Implementation arcane function get globalPosReg():ShaderRegisterElement arcane function set globalPosReg(value:ShaderRegisterElement):voidgloss:Number[override]
The sharpness of the specular highlight.
Implementation public function get gloss():Number public function set gloss(value:Number):voidnormalFragmentReg:ShaderRegisterElement[override]
Implementation arcane function get normalFragmentReg():ShaderRegisterElement arcane function set normalFragmentReg(value:ShaderRegisterElement):voidpasses:Vector.<MaterialPassBase> [read-only] [override]
Any passes required that render to a texture used by this method.
Implementation public function get passes():Vector.<MaterialPassBase>projectionReg:ShaderRegisterElement[override]
Implementation arcane function get projectionReg():ShaderRegisterElement arcane function set projectionReg(value:ShaderRegisterElement):voidsecondaryUVFragmentReg:ShaderRegisterElement[override]
Implementation arcane function get secondaryUVFragmentReg():ShaderRegisterElement arcane function set secondaryUVFragmentReg(value:ShaderRegisterElement):voidshadingModel:String[override]
The model used by the specular shader
Implementation public function get shadingModel():String public function set shadingModel(value:String):voidshadowRegister:ShaderRegisterElement [write-only] [override]
Implementation arcane function set shadowRegister(value:ShaderRegisterElement):voidspecular:Number[override]
The overall strength of the specular highlights.
Implementation public function get specular():Number public function set specular(value:Number):voidtangentVaryingReg:ShaderRegisterElement[override]
Implementation arcane function get tangentVaryingReg():ShaderRegisterElement arcane function set tangentVaryingReg(value:ShaderRegisterElement):voidtexture:Texture2DBase[override]
The bitmapData that encodes the specular highlight strength per texel in the red channel, and the sharpness
in the green channel. You can use SpecularBitmapTexture if you want to easily set specular and gloss maps
from greyscale images, but prepared images are preffered.
Implementation public function get texture():Texture2DBase public function set texture(value:Texture2DBase):voidUVFragmentReg:ShaderRegisterElement[override]
Implementation arcane function get UVFragmentReg():ShaderRegisterElement arcane function set UVFragmentReg(value:ShaderRegisterElement):voidviewDirFragmentReg:ShaderRegisterElement[override]
Implementation arcane function get viewDirFragmentReg():ShaderRegisterElement arcane function set viewDirFragmentReg(value:ShaderRegisterElement):voidviewDirVaryingReg:ShaderRegisterElement[override]
Implementation public function get viewDirVaryingReg():ShaderRegisterElement public function set viewDirVaryingReg(value:ShaderRegisterElement):voidpublic function CompositeSpecularMethod(modulateMethod:Function, baseSpecularMethod:BasicSpecularMethod = null)
Creates a new WrapSpecularMethod object.
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.
|
override arcane function activate(vo:MethodVO, stage3DProxy:Stage3DProxy):void
Parameters
override arcane function cleanCompilationData():voidoverride arcane function deactivate(vo:MethodVO, stage3DProxy:Stage3DProxy):void Parameters
override public function dispose():void
Cleans up any resources used by the current object.
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
Returnsoverride 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 |
Returnsoverride arcane function getFragmentPostLightingCode(vo:MethodVO, regCache:ShaderRegisterCache, targetReg:ShaderRegisterElement):String
Parameters
Returnsoverride arcane function getFragmentPreLightingCode(vo:MethodVO, regCache:ShaderRegisterCache):String
Parameters
Returnsoverride arcane function getVertexCode(vo:MethodVO, regCache:ShaderRegisterCache):String
Parameters
Returnsoverride arcane function initConstants(vo:MethodVO):void Parameters
override arcane function initVO(vo:MethodVO):void Parameters
override arcane function reset():void
Tue Jul 17 2012, 10:37 AM +01:00