Packagelaya.d3.core.material
Classpublic class PBRMaterial
InheritancePBRMaterial Inheritance BaseMaterial Inheritance laya.resource.Resource



Public Properties
 PropertyDefined By
 InheritedalphaTest : Boolean
获取是否透明裁剪。
BaseMaterial
 InheritedalphaTestValue : Number
获取透明测试模式裁剪值。
BaseMaterial
 Inheritedblend : int
透明混合。
BaseMaterial
 InheritedblendConstColor : Vector4
混合常量颜色。
BaseMaterial
 InheritedblendEquation : int
混合方程。
BaseMaterial
 InheritedblendEquationAlpha : int
Alpha混合方程。
BaseMaterial
 InheritedblendEquationRGB : int
RGB混合方程。
BaseMaterial
 Inheritedcull : int
渲染剔除。
BaseMaterial
 InheriteddepthFunc : int
深度测试函数。
BaseMaterial
 InheriteddepthTest : Boolean
是否深度测试。
BaseMaterial
 InheriteddepthWrite : Boolean
是否深度写入。
BaseMaterial
  diffuseTexture : BaseTexture
获取漫反射贴图。
PBRMaterial
 InheriteddstBlend : int
目标混合参数,在blend为BLEND_ENABLE_ALL时生效。
BaseMaterial
 InheriteddstBlendAlpha : int
Alpha目标混合参数,在blend为BLEND_ENABLE_SEPERATE时生效。
BaseMaterial
 InheriteddstBlendRGB : int
RGB目标混合参数,在blend为BLEND_ENABLE_SEPERATE时生效。
BaseMaterial
  HammersleyNoiseTex : DataTexture2D
[static]
PBRMaterial
  has_tangent : Boolean
[write-only]
PBRMaterial
  metaless : Number
PBRMaterial
  normalTexture : BaseTexture
获取法线贴图。
PBRMaterial
  pbrInfoTexture : BaseTexture
获取pbr信息贴图。
PBRMaterial
  pbrlutTex : DataTexture2D
[static]
PBRMaterial
  pbrlutTexture : BaseTexture
获取PBRLUT贴图。
PBRMaterial
  renderMode : int
[write-only]
PBRMaterial
 InheritedrenderQueue : int
所属渲染队列.
BaseMaterial
  roughness : Number
获取粗糙度的值,0为特别光滑,1为特别粗糙。
PBRMaterial
  SHADERDEFINE_FIX_METALESS : int = 0
[static]
PBRMaterial
  SHADERDEFINE_FIX_ROUGHNESS : int = 0
[static]
PBRMaterial
  SHADERDEFINE_HAS_PBRINFO : int = 0
[static]
PBRMaterial
  SHADERDEFINE_HAS_TANGENT : int = 0
[static]
PBRMaterial
  SHADERDEFINE_TEST_CLIPZ : int = 0
[static]
PBRMaterial
  SHADERDEFINE_USE_GROUNDTRUTH : int = 0
[static]
PBRMaterial
 InheritedsrcBlend : int
源混合参数,在blend为BLEND_ENABLE_ALL时生效。
BaseMaterial
 InheritedsrcBlendAlpha : int
Alpha源混合参数,在blend为BLEND_ENABLE_SEPERATE时生效。
BaseMaterial
 InheritedsrcBlendRGB : int
RGB源混合参数,在blend为BLEND_ENABLE_SEPERATE时生效。
BaseMaterial
  testClipZ : Boolean
[write-only]
PBRMaterial
  transformUV : TransformUV
获取UV变换。
PBRMaterial
  use_groundtruth : Boolean
[write-only]
PBRMaterial
Public Methods
 MethodDefined By
  
PBRMaterial
 Inherited
设置渲染相关状态。
BaseMaterial
 Inherited
_setRenderStateFrontFace(isTarget:Boolean, transform:Transform3D):void
设置渲染相关状态。
BaseMaterial
 Inherited
_upload():void
上传材质。
BaseMaterial
 Inherited
clone():*
克隆。
BaseMaterial
 Inherited
cloneTo(destObject:*):void
克隆。
BaseMaterial
  
createHammersleyTex(w:int, h:int):Uint8Array
PBRMaterial
  
disableFog():void
禁用雾化。
PBRMaterial
  
禁用灯光。
PBRMaterial
  
load(url:String):PBRMaterial
[static] 加载标准材质。
PBRMaterial
  
onAsynLoaded(url:String, data:*, params:Array):void
[override]
PBRMaterial
  
radicalInverse_VdC(bits:int):Number
vdc算法产生的序列。这个比random要均匀一些。
PBRMaterial
 Inherited
setShaderName(name:String):void
设置使用Shader名字。
BaseMaterial
Protected Methods
 MethodDefined By
 Inherited
增加禁用宏定义。
BaseMaterial
 Inherited
_addShaderDefine(value:int):void
增加Shader宏定义。
BaseMaterial
 Inherited
_getBool(shaderIndex:int):*
获取布尔。
BaseMaterial
 Inherited
_getBuffer(shaderIndex:int):*
获取Buffer。
BaseMaterial
 Inherited
_getColor(shaderIndex:int):*
获取颜色。
BaseMaterial
 Inherited
_getInt(shaderIndex:int):*
获取整形。
BaseMaterial
 Inherited
_getMatrix4x4(shaderIndex:int):*
获取矩阵。
BaseMaterial
 Inherited
_getNumber(shaderIndex:int):*
获取浮点。
BaseMaterial
 Inherited
_getTexture(shaderIndex:int):BaseTexture
获取纹理。
BaseMaterial
 Inherited
_getVector2(shaderIndex:int):*
获取二维向量。
BaseMaterial
 Inherited
移除禁用宏定义。
BaseMaterial
 Inherited
_removeShaderDefine(value:int):void
移除Shader宏定义。
BaseMaterial
 Inherited
_setBool(shaderIndex:int, b:Boolean):void
设置布尔。
BaseMaterial
 Inherited
_setBuffer(shaderIndex:int, buffer:Float32Array):void
设置Buffer。
BaseMaterial
 Inherited
_setColor(shaderIndex:int, color:*):void
设置颜色。
BaseMaterial
 Inherited
_setInt(shaderIndex:int, i:int):void
设置整型。
BaseMaterial
 Inherited
_setMatrix4x4(shaderIndex:int, matrix4x4:Matrix4x4):void
设置矩阵。
BaseMaterial
 Inherited
_setNumber(shaderIndex:int, number:Number):void
设置浮点。
BaseMaterial
 Inherited
_setTexture(shaderIndex:int, texture:BaseTexture):void
设置纹理。
BaseMaterial
 Inherited
_setVector2(shaderIndex:int, vector2:Vector2):void
设置二维向量。
BaseMaterial
Public Constants
 ConstantDefined By
  AOOBJPOS : int = 14
[static]
PBRMaterial
 InheritedBLEND_DISABLE : int = 0
[static] 混合枚举_禁用。
BaseMaterial
 InheritedBLEND_ENABLE_ALL : int = 1
[static] 混合枚举_启用_RGB和Alpha统一混合。
BaseMaterial
 InheritedBLEND_ENABLE_SEPERATE : int = 2
[static] 混合枚举_启用_RGB和Alpha单独混合。
BaseMaterial
 InheritedBLENDEQUATION_ADD : int = 0
[static] 混合方程枚举_加法,例:source + destination
BaseMaterial
 InheritedBLENDEQUATION_REVERSE_SUBTRACT : int = 2
[static] 混合方程枚举_反序减法,例:destination - source
BaseMaterial
 InheritedBLENDEQUATION_SUBTRACT : int = 1
[static] 混合方程枚举_减法,例:source - destination
BaseMaterial
 InheritedBLENDPARAM_CONSTANT_ALPHA : int = 0x8003
[static] 混合参数枚举_常量阿尔法,例:RGB(Ac, Ac, Ac),Alpha(Ac)。
BaseMaterial
 InheritedBLENDPARAM_CONSTANT_COLOR : int = 0x8001
[static] 混合参数枚举_常量颜色,例:RGB(Rc, Gc, Bc),Alpha(Ac)。
BaseMaterial
 InheritedBLENDPARAM_DST_ALPHA : int = 0x0304
[static] 混合参数枚举_目标阿尔法,例:RGB(Ad, Ad, Ad),Alpha(Ad)。
BaseMaterial
 InheritedBLENDPARAM_DST_COLOR : int = 0x0306
[static] 混合参数枚举_目标颜色,例:RGB(Rd, Gd, Bd),Alpha(Ad)。
BaseMaterial
 InheritedBLENDPARAM_ONE : int = 1
[static] 混合参数枚举_一,例:RGB(1,1,1),Alpha:(1)。
BaseMaterial
 InheritedBLENDPARAM_ONE_MINUS_CONSTANT_ALPHA : int = 0x8004
[static] 混合参数枚举_一减常量阿尔法,例:RGB(1-Ac, 1-Ac, 1-Ac),Alpha(1-Ac)。
BaseMaterial
 InheritedBLENDPARAM_ONE_MINUS_CONSTANT_COLOR : int = 0x8002
[static] 混合参数枚举_一减常量颜色,例:RGB(1-Rc, 1-Gc, 1-Bc),Alpha(1-Ac)。
BaseMaterial
 InheritedBLENDPARAM_ONE_MINUS_DST_ALPHA : int = 0x0305
[static] 混合参数枚举_一减目标阿尔法,例:RGB(1-Ad, 1-Ad, 1-Ad),Alpha(Ad)。
BaseMaterial
 InheritedBLENDPARAM_ONE_MINUS_DST_COLOR : int = 0x0307
[static] 混合参数枚举_一减目标颜色,例:RGB(1-Rd, 1-Gd, 1-Bd),Alpha(1-Ad)。
BaseMaterial
 InheritedBLENDPARAM_ONE_MINUS_SRC_ALPHA : int = 0x0303
[static] 混合参数枚举_一减源阿尔法,例:RGB(1-As, 1-As, 1-As),Alpha(1-As)。
BaseMaterial
 InheritedBLENDPARAM_ONE_MINUS_SRC_COLOR : int = 0x0301
[static] 混合参数枚举_一减源颜色,例:RGB(1-Rs, 1-Gs, 1-Bs),Alpha(1-As)。
BaseMaterial
 InheritedBLENDPARAM_SRC_ALPHA : int = 0x0302
[static] 混合参数枚举_源透明,例:RGB(As, As, As),Alpha(1-As)。
BaseMaterial
 InheritedBLENDPARAM_SRC_ALPHA_SATURATE : int = 0x0308
[static] 混合参数枚举_阿尔法饱和,例:RGB(min(As, 1 - Ad), min(As, 1 - Ad), min(As, 1 - Ad)),Alpha(1)。
BaseMaterial
 InheritedBLENDPARAM_SRC_COLOR : int = 0x0300
[static] 混合参数枚举_源颜色,例:RGB(Rs, Gs, Bs),Alpha(As)。
BaseMaterial
 InheritedBLENDPARAM_ZERO : int = 0
[static] 混合参数枚举_零,例:RGB(0,0,0),Alpha:(1)。
BaseMaterial
 InheritedCULL_BACK : int = 2
[static] 剔除枚举_剔除背面。
BaseMaterial
 InheritedCULL_FRONT : int = 1
[static] 剔除枚举_剔除正面。
BaseMaterial
 InheritedCULL_NONE : int = 0
[static] 剔除枚举_不剔除。
BaseMaterial
  defaultMaterial : PBRMaterial
[static] 默认材质,禁止修改
PBRMaterial
 InheritedDEPTHFUNC_ALWAYS : int = 0x0207
[static] 深度测试函数枚举_总是通过。
BaseMaterial
 InheritedDEPTHFUNC_EQUAL : int = 0x0202
[static] 深度测试函数枚举_等于时通过。
BaseMaterial
 InheritedDEPTHFUNC_GEQUAL : int = 0x0206
[static] 深度测试函数枚举_大于等于时通过。
BaseMaterial
 InheritedDEPTHFUNC_GREATER : int = 0x0204
[static] 深度测试函数枚举_大于时通过。
BaseMaterial
 InheritedDEPTHFUNC_LEQUAL : int = 0x0203
[static] 深度测试函数枚举_小于等于时通过。
BaseMaterial
 InheritedDEPTHFUNC_LESS : int = 0x0201
[static] 深度测试函数枚举_小于时通过。
BaseMaterial
 InheritedDEPTHFUNC_NEVER : int = 0x0200
[static] 深度测试函数枚举_从不通过。
BaseMaterial
 InheritedDEPTHFUNC_NOTEQUAL : int = 0x0205
[static] 深度测试函数枚举_不等于时通过。
BaseMaterial
  DIFFUSETEXTURE : int = 1
[static]
PBRMaterial
  HSNOISETEXTURE : int = 15
[static]
PBRMaterial
  MATERIALMETALESS : int = 7
[static]
PBRMaterial
  MATERIALROUGHNESS : int = 6
[static]
PBRMaterial
  NORMALTEXTURE : int = 2
[static]
PBRMaterial
  PBRINFOTEXTURE : int = 3
[static]
PBRMaterial
  PBRLUTTEXTURE : int = 4
[static]
PBRMaterial
  RENDERMODE_CUTOUT : int = 3
[static] 渲染状态_透明测试。
PBRMaterial
  RENDERMODE_CUTOUTDOUBLEFACE : int = 4
[static] 渲染状态_透明测试_双面。
PBRMaterial
  RENDERMODE_OPAQUE : int = 1
[static] 渲染状态_不透明。
PBRMaterial
  RENDERMODE_OPAQUEDOUBLEFACE : int = 2
[static] 渲染状态_不透明_双面。
PBRMaterial
  RENDERMODE_TRANSPARENT : int = 13
[static] 渲染状态_透明混合。
PBRMaterial
  UVAGE : int = 9
[static]
PBRMaterial
  UVANIAGE : int = 5
[static]
PBRMaterial
  UVMATRIX : int = 8
[static]
PBRMaterial
Property Detail
diffuseTextureproperty
diffuseTexture:BaseTexture

获取漫反射贴图。


Implementation
    public function get diffuseTexture():BaseTexture
    public function set diffuseTexture(value:BaseTexture):void
HammersleyNoiseTexproperty 
public static var HammersleyNoiseTex:DataTexture2D

has_tangentproperty 
has_tangent:Boolean  [write-only]


Implementation
    public function set has_tangent(value:Boolean):void
metalessproperty 
metaless:Number


Implementation
    public function get metaless():Number
    public function set metaless(value:Number):void
normalTextureproperty 
normalTexture:BaseTexture

获取法线贴图。


Implementation
    public function get normalTexture():BaseTexture
    public function set normalTexture(value:BaseTexture):void
pbrInfoTextureproperty 
pbrInfoTexture:BaseTexture

获取pbr信息贴图。


Implementation
    public function get pbrInfoTexture():BaseTexture
    public function set pbrInfoTexture(value:BaseTexture):void
pbrlutTexproperty 
public static var pbrlutTex:DataTexture2D

pbrlutTextureproperty 
pbrlutTexture:BaseTexture

获取PBRLUT贴图。


Implementation
    public function get pbrlutTexture():BaseTexture
    public function set pbrlutTexture(value:BaseTexture):void
renderModeproperty 
renderMode:int  [write-only]


Implementation
    public function set renderMode(value:int):void
roughnessproperty 
roughness:Number

获取粗糙度的值,0为特别光滑,1为特别粗糙。


Implementation
    public function get roughness():Number
    public function set roughness(value:Number):void
SHADERDEFINE_FIX_METALESSproperty 
public static var SHADERDEFINE_FIX_METALESS:int = 0

SHADERDEFINE_FIX_ROUGHNESSproperty 
public static var SHADERDEFINE_FIX_ROUGHNESS:int = 0

SHADERDEFINE_HAS_PBRINFOproperty 
public static var SHADERDEFINE_HAS_PBRINFO:int = 0

SHADERDEFINE_HAS_TANGENTproperty 
public static var SHADERDEFINE_HAS_TANGENT:int = 0

SHADERDEFINE_TEST_CLIPZproperty 
public static var SHADERDEFINE_TEST_CLIPZ:int = 0

SHADERDEFINE_USE_GROUNDTRUTHproperty 
public static var SHADERDEFINE_USE_GROUNDTRUTH:int = 0

testClipZproperty 
testClipZ:Boolean  [write-only]


Implementation
    public function set testClipZ(value:Boolean):void
transformUVproperty 
transformUV:TransformUV

获取UV变换。


Implementation
    public function get transformUV():TransformUV
    public function set transformUV(value:TransformUV):void
use_groundtruthproperty 
use_groundtruth:Boolean  [write-only]


Implementation
    public function set use_groundtruth(value:Boolean):void
Constructor Detail
PBRMaterial()Constructor
public function PBRMaterial()



Method Detail
createHammersleyTex()method
public function createHammersleyTex(w:int, h:int):Uint8Array

Parameters

w:int
 
h:int

Returns
Uint8Array
disableFog()method 
public function disableFog():void

禁用雾化。

disableLight()method 
public function disableLight():void

禁用灯光。

load()method 
public static function load(url:String):PBRMaterial

加载标准材质。

Parameters

url:String — 标准材质地址。

Returns
PBRMaterial
onAsynLoaded()method 
override public function onAsynLoaded(url:String, data:*, params:Array):void

Parameters

url:String
 
data:*
 
params:Array

radicalInverse_VdC()method 
public function radicalInverse_VdC(bits:int):Number

vdc算法产生的序列。这个比random要均匀一些。

Parameters

bits:int

Returns
Number
Constant Detail
AOOBJPOSConstant
public static const AOOBJPOS:int = 14

defaultMaterialConstant 
public static const defaultMaterial:PBRMaterial

默认材质,禁止修改

DIFFUSETEXTUREConstant 
public static const DIFFUSETEXTURE:int = 1

HSNOISETEXTUREConstant 
public static const HSNOISETEXTURE:int = 15

MATERIALMETALESSConstant 
public static const MATERIALMETALESS:int = 7

MATERIALROUGHNESSConstant 
public static const MATERIALROUGHNESS:int = 6

NORMALTEXTUREConstant 
public static const NORMALTEXTURE:int = 2

PBRINFOTEXTUREConstant 
public static const PBRINFOTEXTURE:int = 3

PBRLUTTEXTUREConstant 
public static const PBRLUTTEXTURE:int = 4

RENDERMODE_CUTOUTConstant 
public static const RENDERMODE_CUTOUT:int = 3

渲染状态_透明测试。

RENDERMODE_CUTOUTDOUBLEFACEConstant 
public static const RENDERMODE_CUTOUTDOUBLEFACE:int = 4

渲染状态_透明测试_双面。

RENDERMODE_OPAQUEConstant 
public static const RENDERMODE_OPAQUE:int = 1

渲染状态_不透明。

RENDERMODE_OPAQUEDOUBLEFACEConstant 
public static const RENDERMODE_OPAQUEDOUBLEFACE:int = 2

渲染状态_不透明_双面。

RENDERMODE_TRANSPARENTConstant 
public static const RENDERMODE_TRANSPARENT:int = 13

渲染状态_透明混合。

UVAGEConstant 
public static const UVAGE:int = 9

UVANIAGEConstant 
public static const UVANIAGE:int = 5

UVMATRIXConstant 
public static const UVMATRIX:int = 8