| Package | laya.d3.shader | 
| Class | public class Shader3D | 
| Inheritance | Shader3D  BaseShader  laya.resource.Resource | 
| Property | Defined By | ||
|---|---|---|---|
|  | activeShader : BaseShader [static]  | BaseShader | |
| _attributeParams : Array = null | Shader3D | ||
| _attributeParamsMap : Array | Shader3D | ||
|  | bindShader : BaseShader [static]  | BaseShader | |
| _cameraUniformParamsMap : Array | Shader3D | ||
| _id : int | Shader3D | ||
| _includeFiles : * [static]  | Shader3D | ||
| _materialUniformParamsMap : Array | Shader3D | ||
| nameKey : StringKey [static]  | Shader3D | ||
| _program : * = null | Shader3D | ||
| _pshader : * | Shader3D | ||
| _renderElementUniformParamsMap : Array | Shader3D | ||
| _sceneUniformParamsMap : Array | Shader3D | ||
| _spriteUniformParamsMap : Array | Shader3D | ||
| _uniformParams : Array = null | Shader3D | ||
| _vshader : * | Shader3D | ||
| Property | Defined By | ||
|---|---|---|---|
| shaderParamsMap : Object [static]  | Shader3D | ||
| Method | Defined By | ||
|---|---|---|---|
| Shader3D(vs:String, ps:String, attributeMap:Object, sceneUniformMap:Object, cameraUniformMap:Object, spriteUniformMap:Object, materialUniformMap:Object, renderElementUniformMap:Object) 
		 根据vs和ps信息生成shader对象
		  | Shader3D | ||
| addInclude(fileName:String, txt:String):void [static]  | Shader3D | ||
| bind():Boolean | Shader3D | ||
| create(vs:String, ps:String, attributeMap:Object, sceneUniformMap:Object, cameraUniformMap:Object, spriteUniformMap:Object, materialUniformMap:Object, renderElementUniformMap:Object):Shader3D [static]  | Shader3D | ||
| uploadAttributes(attributeShaderValue:Array, _bufferUsage:*):void 
		 按数组的定义提交
		  | Shader3D | ||
| uploadCameraUniforms(shaderValue:Array):void 
		 按数组的定义提交
		  | Shader3D | ||
| uploadMaterialUniforms(shaderValue:Array):void 
		 按数组的定义提交
		  | Shader3D | ||
| uploadRenderElementUniforms(shaderValue:Array):void 
		 按数组的定义提交
		  | Shader3D | ||
| uploadSceneUniforms(shaderValue:Array):void 
		 按数组的定义提交
		  | Shader3D | ||
| uploadSpriteUniforms(shaderValue:Array):void 
		 按数组的定义提交
		  | Shader3D | ||
| uploadTexture2D(value:*):void | Shader3D | ||
| Method | Defined By | ||
|---|---|---|---|
| _preGetParams(vs:String, ps:String):Object | Shader3D | ||
| detoryResource():void [override]  | Shader3D | ||
| recreateResource():void [override]  | Shader3D | ||
| Constant | Defined By | ||
|---|---|---|---|
| PERIOD_CAMERA : int = 3 [static] shader变量提交周期,逐相机。 | Shader3D | ||
| PERIOD_MATERIAL : int = 1 [static] shader变量提交周期,逐材质。 | Shader3D | ||
| PERIOD_RENDERELEMENT : int = 0 [static] shader变量提交周期,逐渲染单元。 | Shader3D | ||
| PERIOD_SCENE : int = 4 [static] shader变量提交周期,逐场景。 | Shader3D | ||
| PERIOD_SPRITE : int = 2 [static] shader变量提交周期,逐精灵和相机,注:因为精灵包含MVP矩阵,为复合属性,所以摄像机发生变化时也应提交。 | Shader3D | ||
| _attributeParams | property | 
public var _attributeParams:Array = null| _attributeParamsMap | property | 
public var _attributeParamsMap:Array| _cameraUniformParamsMap | property | 
public var _cameraUniformParamsMap:Array| _id | property | 
public var _id:int| _includeFiles | property | 
public static var _includeFiles:*| _materialUniformParamsMap | property | 
public var _materialUniformParamsMap:Array| _program | property | 
public var _program:* = null| _pshader | property | 
public var _pshader:*| _renderElementUniformParamsMap | property | 
public var _renderElementUniformParamsMap:Array| _sceneUniformParamsMap | property | 
public var _sceneUniformParamsMap:Array| _spriteUniformParamsMap | property | 
public var _spriteUniformParamsMap:Array| _uniformParams | property | 
public var _uniformParams:Array = null| _vshader | property | 
public var _vshader:*| nameKey | property | 
public static var nameKey:StringKey| shaderParamsMap | property | 
protected static var shaderParamsMap:Object| Shader3D | () | Constructor | 
public function Shader3D(vs:String, ps:String, attributeMap:Object, sceneUniformMap:Object, cameraUniformMap:Object, spriteUniformMap:Object, materialUniformMap:Object, renderElementUniformMap:Object)根据vs和ps信息生成shader对象
Parameters| vs:String | |
| ps:String | |
| attributeMap:Object | |
| sceneUniformMap:Object— 帮助里要详细解释为什么需要nameMap | |
| cameraUniformMap:Object | |
| spriteUniformMap:Object | |
| materialUniformMap:Object | |
| renderElementUniformMap:Object | 
| _preGetParams | () | method | 
 protected function _preGetParams(vs:String, ps:String):ObjectParameters
| vs:String | |
| ps:String | 
| Object | 
| addInclude | () | method | 
 public static function addInclude(fileName:String, txt:String):voidParameters
| fileName:String | |
| txt:String | 
| bind | () | method | 
 public function bind():BooleanReturns| Boolean | 
| create | () | method | 
 public static function create(vs:String, ps:String, attributeMap:Object, sceneUniformMap:Object, cameraUniformMap:Object, spriteUniformMap:Object, materialUniformMap:Object, renderElementUniformMap:Object):Shader3DParameters
| vs:String | |
| ps:String | |
| attributeMap:Object | |
| sceneUniformMap:Object | |
| cameraUniformMap:Object | |
| spriteUniformMap:Object | |
| materialUniformMap:Object | |
| renderElementUniformMap:Object | 
| Shader3D | 
| detoryResource | () | method | 
override protected function detoryResource():void| recreateResource | () | method | 
override protected function recreateResource():void| uploadAttributes | () | method | 
 public function uploadAttributes(attributeShaderValue:Array, _bufferUsage:*):void按数组的定义提交
Parameters
| attributeShaderValue:Array— 数组格式[name,value,...] | |
| _bufferUsage:* | 
| uploadCameraUniforms | () | method | 
 public function uploadCameraUniforms(shaderValue:Array):void按数组的定义提交
Parameters
| shaderValue:Array— 数组格式[name,value,...] | 
| uploadMaterialUniforms | () | method | 
 public function uploadMaterialUniforms(shaderValue:Array):void按数组的定义提交
Parameters
| shaderValue:Array— 数组格式[name,value,...] | 
| uploadRenderElementUniforms | () | method | 
 public function uploadRenderElementUniforms(shaderValue:Array):void按数组的定义提交
Parameters
| shaderValue:Array— 数组格式[name,value,...] | 
| uploadSceneUniforms | () | method | 
 public function uploadSceneUniforms(shaderValue:Array):void按数组的定义提交
Parameters
| shaderValue:Array— 数组格式[name,value,...] | 
| uploadSpriteUniforms | () | method | 
 public function uploadSpriteUniforms(shaderValue:Array):void按数组的定义提交
Parameters
| shaderValue:Array— 数组格式[name,value,...] | 
| uploadTexture2D | () | method | 
 public function uploadTexture2D(value:*):voidParameters
| value:* | 
| PERIOD_CAMERA | Constant | 
public static const PERIOD_CAMERA:int = 3shader变量提交周期,逐相机。
| PERIOD_MATERIAL | Constant | 
public static const PERIOD_MATERIAL:int = 1shader变量提交周期,逐材质。
| PERIOD_RENDERELEMENT | Constant | 
public static const PERIOD_RENDERELEMENT:int = 0shader变量提交周期,逐渲染单元。
| PERIOD_SCENE | Constant | 
public static const PERIOD_SCENE:int = 4shader变量提交周期,逐场景。
| PERIOD_SPRITE | Constant | 
public static const PERIOD_SPRITE:int = 2shader变量提交周期,逐精灵和相机,注:因为精灵包含MVP矩阵,为复合属性,所以摄像机发生变化时也应提交。