Variables
				
					
					Const CAMERA_DEFAULT_MASK
					CAMERA_DEFAULT_MASK: number = Layers.makeMaskExclude([Layers.BitMask.UI_2D, Layers.BitMask.GIZMOS, Layers.BitMask.EDITOR,Layers.BitMask.SCENE_GIZMO, Layers.BitMask.PROFILER])
					
				
				
					
					Const CAMERA_EDITOR_MASK
					CAMERA_EDITOR_MASK: number = Layers.makeMaskExclude([Layers.BitMask.UI_2D, Layers.BitMask.PROFILER])
					
				
				
					
					Const GLOBAL_SAMPLER_COUNT
					GLOBAL_SAMPLER_COUNT: number = PipelineGlobalBindings.COUNT - GLOBAL_UBO_COUNT
					
				
				
				
					
					Const INST_JOINT_ANIM_INFO
					INST_JOINT_ANIM_INFO: "a_jointAnimInfo" = "a_jointAnimInfo"
					
				
				
					
					Const INST_MAT_WORLD
					INST_MAT_WORLD: "a_matWorld0" = "a_matWorld0"
					
				
				
					
					Const JOINT_UNIFORM_CAPACITY
					JOINT_UNIFORM_CAPACITY: 30 = 30
					
				
				
					
					Const LOCAL_SAMPLER_COUNT
					LOCAL_SAMPLER_COUNT: number = ModelLocalBindings.COUNT - LOCAL_UBO_COUNT
					
				
				
				
					
					Const MODEL_ALWAYS_MASK
					MODEL_ALWAYS_MASK: number = Layers.Enum.ALL
					
				
				
					
					Const PIPELINE_FLOW_FORWARD
					PIPELINE_FLOW_FORWARD: "ForwardFlow" = "ForwardFlow"
					
				
				
					
					Const PIPELINE_FLOW_SHADOW
					PIPELINE_FLOW_SHADOW: "ShadowFlow" = "ShadowFlow"
					
				
				
					
					Const PIPELINE_FLOW_SMAA
					PIPELINE_FLOW_SMAA: "SMAAFlow" = "SMAAFlow"
					
				
				
					
					Const PIPELINE_FLOW_TONEMAP
					PIPELINE_FLOW_TONEMAP: "ToneMapFlow" = "ToneMapFlow"
					
				
				
					
					Const UNIFORM_ENVIRONMENT_BINDING
					
					
				
				
					
					Const UNIFORM_ENVIRONMENT_DESCRIPTOR
					UNIFORM_
ENVIRONMENT_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_ENVIRONMENT_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.FRAGMENT)Const UNIFORM_ENVIRONMENT_LAYOUT
					UNIFORM_
ENVIRONMENT_LAYOUT: UniformSampler = new UniformSampler(SetIndex.GLOBAL, UNIFORM_ENVIRONMENT_BINDING, UNIFORM_ENVIRONMENT_NAME, Type.SAMPLER_CUBE, 1)Const UNIFORM_ENVIRONMENT_NAME
					UNIFORM_ENVIRONMENT_NAME: "cc_environment" = "cc_environment"
					
				
				
					
					Const UNIFORM_JOINT_TEXTURE_BINDING
					UNIFORM_
JOINT_TEXTURE_BINDING: SAMPLER_JOINTS = ModelLocalBindings.SAMPLER_JOINTSConst UNIFORM_JOINT_TEXTURE_DESCRIPTOR
					UNIFORM_
JOINT_TEXTURE_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_JOINT_TEXTURE_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.VERTEX)Const UNIFORM_JOINT_TEXTURE_LAYOUT
					UNIFORM_
JOINT_TEXTURE_LAYOUT: UniformSampler = new UniformSampler(SetIndex.LOCAL, UNIFORM_JOINT_TEXTURE_BINDING, UNIFORM_JOINT_TEXTURE_NAME, Type.SAMPLER2D, 1)Const UNIFORM_JOINT_TEXTURE_NAME
					UNIFORM_JOINT_TEXTURE_NAME: "cc_jointTexture" = "cc_jointTexture"
					
					
				
				
					
					Const UNIFORM_LIGHTMAP_TEXTURE_BINDING
					UNIFORM_
LIGHTMAP_TEXTURE_BINDING: SAMPLER_LIGHTMAP = ModelLocalBindings.SAMPLER_LIGHTMAPConst UNIFORM_LIGHTMAP_TEXTURE_DESCRIPTOR
					UNIFORM_
LIGHTMAP_TEXTURE_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_LIGHTMAP_TEXTURE_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.FRAGMENT)Const UNIFORM_LIGHTMAP_TEXTURE_LAYOUT
					UNIFORM_
LIGHTMAP_TEXTURE_LAYOUT: UniformSampler = new UniformSampler(SetIndex.LOCAL, UNIFORM_LIGHTMAP_TEXTURE_BINDING,UNIFORM_LIGHTMAP_TEXTURE_NAME, Type.SAMPLER2D, 1)Const UNIFORM_LIGHTMAP_TEXTURE_NAME
					UNIFORM_LIGHTMAP_TEXTURE_NAME: "cc_lightingMap" = "cc_lightingMap"
					
					
				
				
					
					Const UNIFORM_NORMAL_MORPH_TEXTURE_BINDING
					UNIFORM_
NORMAL_MORPH_TEXTURE_BINDING: SAMPLER_MORPH_NORMAL = ModelLocalBindings.SAMPLER_MORPH_NORMALConst UNIFORM_NORMAL_MORPH_TEXTURE_DESCRIPTOR
					UNIFORM_
NORMAL_MORPH_TEXTURE_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_NORMAL_MORPH_TEXTURE_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.VERTEX)Const UNIFORM_NORMAL_MORPH_TEXTURE_LAYOUT
					UNIFORM_
NORMAL_MORPH_TEXTURE_LAYOUT: UniformSampler = new UniformSampler(SetIndex.LOCAL, UNIFORM_NORMAL_MORPH_TEXTURE_BINDING,UNIFORM_NORMAL_MORPH_TEXTURE_NAME, Type.SAMPLER2D, 1)Const UNIFORM_NORMAL_MORPH_TEXTURE_NAME
					UNIFORM_NORMAL_MORPH_TEXTURE_NAME: "cc_NormalDisplacements" = "cc_NormalDisplacements"
					
					
				
				
					
					Const UNIFORM_POSITION_MORPH_TEXTURE_BINDING
					
					
				
				
					
					Const UNIFORM_POSITION_MORPH_TEXTURE_DESCRIPTOR
					UNIFORM_
POSITION_MORPH_TEXTURE_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_POSITION_MORPH_TEXTURE_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.VERTEX)Const UNIFORM_POSITION_MORPH_TEXTURE_LAYOUT
					UNIFORM_
POSITION_MORPH_TEXTURE_LAYOUT: UniformSampler = new UniformSampler(SetIndex.LOCAL, UNIFORM_POSITION_MORPH_TEXTURE_BINDING, UNIFORM_POSITION_MORPH_TEXTURE_NAME, Type.SAMPLER2D, 1)Const UNIFORM_POSITION_MORPH_TEXTURE_NAME
					UNIFORM_POSITION_MORPH_TEXTURE_NAME: "cc_PositionDisplacements" = "cc_PositionDisplacements"
					
					
				
				
					
					Const UNIFORM_SHADOWMAP_BINDING
					UNIFORM_
SHADOWMAP_BINDING: SAMPLER_SHADOWMAP = PipelineGlobalBindings.SAMPLER_SHADOWMAPConst UNIFORM_SHADOWMAP_DESCRIPTOR
					UNIFORM_
SHADOWMAP_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_SHADOWMAP_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.FRAGMENT)Const UNIFORM_SHADOWMAP_LAYOUT
					UNIFORM_
SHADOWMAP_LAYOUT: UniformSampler = new UniformSampler(SetIndex.GLOBAL, UNIFORM_SHADOWMAP_BINDING, UNIFORM_SHADOWMAP_NAME, Type.SAMPLER2D, 1)Const UNIFORM_SHADOWMAP_NAME
					UNIFORM_SHADOWMAP_NAME: "cc_shadowMap" = "cc_shadowMap"
					
					
				
				
					
					Const UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_BINDING
					
					
				
				
					
					Const UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_DESCRIPTOR
					UNIFORM_
SPOT_LIGHTING_MAP_TEXTURE_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.FRAGMENT)Const UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_LAYOUT
					UNIFORM_
SPOT_LIGHTING_MAP_TEXTURE_LAYOUT: UniformSampler = new UniformSampler(SetIndex.GLOBAL, UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_BINDING, UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_NAME, Type.SAMPLER2D, 1)Const UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_NAME
					UNIFORM_SPOT_LIGHTING_MAP_TEXTURE_NAME: "cc_spotLightingMap" = "cc_spotLightingMap"
					
					
				
				
					
					Const UNIFORM_SPRITE_TEXTURE_BINDING
					UNIFORM_
SPRITE_TEXTURE_BINDING: SAMPLER_SPRITE = ModelLocalBindings.SAMPLER_SPRITEConst UNIFORM_SPRITE_TEXTURE_DESCRIPTOR
					UNIFORM_
SPRITE_TEXTURE_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_SPRITE_TEXTURE_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.FRAGMENT)Const UNIFORM_SPRITE_TEXTURE_LAYOUT
					UNIFORM_
SPRITE_TEXTURE_LAYOUT: UniformSampler = new UniformSampler(SetIndex.LOCAL, UNIFORM_SPRITE_TEXTURE_BINDING, UNIFORM_SPRITE_TEXTURE_NAME, Type.SAMPLER2D, 1)Const UNIFORM_SPRITE_TEXTURE_NAME
					UNIFORM_SPRITE_TEXTURE_NAME: "cc_spriteTexture" = "cc_spriteTexture"
					
					
				
				
					
					Const UNIFORM_TANGENT_MORPH_TEXTURE_BINDING
					
					
				
				
					
					Const UNIFORM_TANGENT_MORPH_TEXTURE_DESCRIPTOR
					UNIFORM_
TANGENT_MORPH_TEXTURE_DESCRIPTOR: DescriptorSetLayoutBinding = new DescriptorSetLayoutBinding(UNIFORM_TANGENT_MORPH_TEXTURE_BINDING, DescriptorType.SAMPLER, 1, ShaderStageFlagBit.VERTEX)Const UNIFORM_TANGENT_MORPH_TEXTURE_LAYOUT
					UNIFORM_
TANGENT_MORPH_TEXTURE_LAYOUT: UniformSampler = new UniformSampler(SetIndex.LOCAL, UNIFORM_TANGENT_MORPH_TEXTURE_BINDING,UNIFORM_TANGENT_MORPH_TEXTURE_NAME, Type.SAMPLER2D, 1)Const UNIFORM_TANGENT_MORPH_TEXTURE_NAME
					UNIFORM_TANGENT_MORPH_TEXTURE_NAME: "cc_TangentDisplacements" = "cc_TangentDisplacements"
					
					
				
				
					
					Const _dynamicOffsets
					_dynamicOffsets: number[] = []
					
				
				
					
					Const _lightIndices
					_lightIndices: number[] = []
					
				
				
					
					Const _lightPassIndices
					_lightPassIndices: number[] = []
					
				
				
					
					Const _lightPassPool
					_light
PassPool: Pool<IAdditiveLightPass> = new Pool<IAdditiveLightPass>(() => ({ subModel: null!, passIdx: -1, dynamicOffsets: [], lights: [] }), 16)Const _matShadowView
					_mat
ShadowView: Mat4 = new Mat4()Const _matShadowView
					_mat
ShadowView: Mat4 = new Mat4()Const _matShadowViewProj
					_mat
ShadowViewProj: Mat4 = new Mat4()Const _matShadowViewProj
					_mat
ShadowViewProj: Mat4 = new Mat4()Const _phaseID
					_phaseID: number = getPhaseID('shadow-caster')
					
				
				
					
					Const _phaseID
					_phaseID: number = getPhaseID('forward-add')
					
				
				
				
				
					
					Let _shadowCameraView
					_shadow
CameraView: Mat4 = new Mat4()Const _shadowPassIndices
					_shadowPassIndices: number[] = []
					
				
				
					
					Const _sphere
					_sphere
: sphere = Sphere.create(0, 0, 0, 1)Const _vec3Center
					_vec3
Center: Vec3 = new Vec3()Const _vec4Array
					_vec4Array: Float32Array = new Float32Array(4)
					
				
				
					
					Const _vec4ShadowInfo
					_vec4
ShadowInfo: Vec4 = new Vec4()Const colors
					colors
: Color[] = [new Color(0, 0, 0, 1)]Const matShadowView
					mat
ShadowView: Mat4 = new Mat4()Const matShadowViewProj
					mat
ShadowViewProj: Mat4 = new Mat4()Const vec3_center
					vec3_
center: Vec3 = new Vec3() 
The sampler for joint texture
骨骼纹理采样器。