{"ast":null,"code":"import { NodeMaterialBlock } from \"../../nodeMaterialBlock.js\";\nimport { NodeMaterialBlockConnectionPointTypes } from \"../../Enums/nodeMaterialBlockConnectionPointTypes.js\";\nimport { NodeMaterialBlockTargets } from \"../../Enums/nodeMaterialBlockTargets.js\";\nimport { RegisterClass } from \"../../../../Misc/typeStore.js\";\nimport { NodeMaterialConnectionPointCustomObject } from \"../../nodeMaterialConnectionPointCustomObject.js\";\nimport { ImageSourceBlock } from \"../Dual/imageSourceBlock.js\";\n/**\n * Block used to read from prepass textures\n */\nexport class PrePassTextureBlock extends NodeMaterialBlock {\n /**\n * The texture associated with the node is the prepass texture\n */\n get texture() {\n return null;\n }\n set texture(value) {\n return;\n }\n /**\n * Creates a new PrePassTextureBlock\n * @param name defines the block name\n * @param target defines the target of that block (VertexAndFragment by default)\n */\n constructor(name, target = NodeMaterialBlockTargets.VertexAndFragment) {\n super(name, target, false);\n this.registerOutput(\"position\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"position\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"localPosition\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"localPosition\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"depth\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"depth\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"screenDepth\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"screenDepth\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"normal\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"normal\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"worldNormal\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"worldNormal\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n }\n /**\n * Returns the sampler name associated with the node connection point\n * @param output defines the connection point to get the associated sampler name\n * @returns\n */\n getSamplerName(output) {\n if (output === this._outputs[0]) {\n return this._positionSamplerName;\n }\n if (output === this._outputs[1]) {\n return this._localPositionSamplerName;\n }\n if (output === this._outputs[2]) {\n return this._depthSamplerName;\n }\n if (output === this._outputs[3]) {\n return this._screenSpaceDepthSamplerName;\n }\n if (output === this._outputs[4]) {\n return this._normalSamplerName;\n }\n if (output === this._outputs[5]) {\n return this._worldNormalSamplerName;\n }\n return \"\";\n }\n /**\n * Gets the position texture\n */\n get position() {\n return this._outputs[0];\n }\n /**\n * Gets the local position texture\n */\n get localPosition() {\n return this._outputs[1];\n }\n /**\n * Gets the depth texture\n */\n get depth() {\n return this._outputs[2];\n }\n /**\n * Gets the screen depth texture\n */\n get screenDepth() {\n return this._outputs[3];\n }\n /**\n * Gets the normal texture\n */\n get normal() {\n return this._outputs[4];\n }\n /**\n * Gets the world normal texture\n */\n get worldNormal() {\n return this._outputs[5];\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get positionSamplerName() {\n return this._positionSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get localPositionSamplerName() {\n return this._localPositionSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get normalSamplerName() {\n return this._normalSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get worldNormalSamplerName() {\n return this._worldNormalSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get depthSamplerName() {\n return this._depthSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get linearDepthSamplerName() {\n return this._screenSpaceDepthSamplerName;\n }\n /**\n * Gets the current class name\n * @returns the class name\n */\n getClassName() {\n return \"PrePassTextureBlock\";\n }\n _buildBlock(state) {\n super._buildBlock(state);\n if (state.target === NodeMaterialBlockTargets.Vertex) {\n return;\n }\n this._positionSamplerName = \"prepassPositionSampler\";\n this._depthSamplerName = \"prepassDepthSampler\";\n this._normalSamplerName = \"prepassNormalSampler\";\n this._worldNormalSamplerName = \"prepassWorldNormalSampler\";\n this._localPositionSamplerName = \"prepassLocalPositionSampler\";\n this._screenSpaceDepthSamplerName = \"prepassScreenSpaceDepthSampler\";\n // Unique sampler names for every prepasstexture block\n state.sharedData.variableNames.prepassPositionSampler = 0;\n state.sharedData.variableNames.prepassDepthSampler = 0;\n state.sharedData.variableNames.prepassNormalSampler = 0;\n state.sharedData.variableNames.prepassWorldNormalSampler = 0;\n state.sharedData.variableNames.prepassLocalPositionSampler = 0;\n state.sharedData.variableNames.prepassScreenSpaceDepthSampler = 0;\n // Declarations\n state.sharedData.textureBlocks.push(this);\n state.sharedData.bindableBlocks.push(this);\n if (this.position.isConnected) {\n state._emit2DSampler(this._positionSamplerName);\n }\n if (this.depth.isConnected) {\n state._emit2DSampler(this._depthSamplerName);\n }\n if (this.normal.isConnected) {\n state._emit2DSampler(this._normalSamplerName);\n }\n if (this.worldNormal.isConnected) {\n state._emit2DSampler(this._worldNormalSamplerName);\n }\n if (this.localPosition.isConnected) {\n state._emit2DSampler(this._localPositionSamplerName);\n }\n if (this.screenDepth.isConnected) {\n state._emit2DSampler(this._screenSpaceDepthSamplerName);\n }\n return this;\n }\n bind(effect, nodeMaterial) {\n const scene = nodeMaterial.getScene();\n const prePassRenderer = scene.enablePrePassRenderer();\n if (!prePassRenderer) {\n return;\n }\n const sceneRT = prePassRenderer.defaultRT;\n if (!sceneRT.textures) {\n return;\n }\n if (this.position.isConnected) {\n effect.setTexture(this._positionSamplerName, sceneRT.textures[prePassRenderer.getIndex(1)]);\n }\n if (this.localPosition.isConnected) {\n effect.setTexture(this._localPositionSamplerName, sceneRT.textures[prePassRenderer.getIndex(9)]);\n }\n if (this.depth.isConnected) {\n effect.setTexture(this._depthSamplerName, sceneRT.textures[prePassRenderer.getIndex(5)]);\n }\n if (this.screenDepth.isConnected) {\n effect.setTexture(this._screenSpaceDepthSamplerName, sceneRT.textures[prePassRenderer.getIndex(10)]);\n }\n if (this.normal.isConnected) {\n effect.setTexture(this._normalSamplerName, sceneRT.textures[prePassRenderer.getIndex(6)]);\n }\n if (this.worldNormal.isConnected) {\n effect.setTexture(this._worldNormalSamplerName, sceneRT.textures[prePassRenderer.getIndex(8)]);\n }\n }\n}\nRegisterClass(\"BABYLON.PrePassTextureBlock\", PrePassTextureBlock);","map":{"version":3,"names":["NodeMaterialBlock","NodeMaterialBlockConnectionPointTypes","NodeMaterialBlockTargets","RegisterClass","NodeMaterialConnectionPointCustomObject","ImageSourceBlock","PrePassTextureBlock","texture","value","constructor","name","target","VertexAndFragment","registerOutput","Object","getSamplerName","output","_outputs","_positionSamplerName","_localPositionSamplerName","_depthSamplerName","_screenSpaceDepthSamplerName","_normalSamplerName","_worldNormalSamplerName","position","localPosition","depth","screenDepth","normal","worldNormal","positionSamplerName","localPositionSamplerName","normalSamplerName","worldNormalSamplerName","depthSamplerName","linearDepthSamplerName","getClassName","_buildBlock","state","Vertex","sharedData","variableNames","prepassPositionSampler","prepassDepthSampler","prepassNormalSampler","prepassWorldNormalSampler","prepassLocalPositionSampler","prepassScreenSpaceDepthSampler","textureBlocks","push","bindableBlocks","isConnected","_emit2DSampler","bind","effect","nodeMaterial","scene","getScene","prePassRenderer","enablePrePassRenderer","sceneRT","defaultRT","textures","setTexture","getIndex"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@babylonjs/core/Materials/Node/Blocks/Input/prePassTextureBlock.js"],"sourcesContent":["import { NodeMaterialBlock } from \"../../nodeMaterialBlock.js\";\nimport { NodeMaterialBlockConnectionPointTypes } from \"../../Enums/nodeMaterialBlockConnectionPointTypes.js\";\nimport { NodeMaterialBlockTargets } from \"../../Enums/nodeMaterialBlockTargets.js\";\nimport { RegisterClass } from \"../../../../Misc/typeStore.js\";\nimport { NodeMaterialConnectionPointCustomObject } from \"../../nodeMaterialConnectionPointCustomObject.js\";\n\nimport { ImageSourceBlock } from \"../Dual/imageSourceBlock.js\";\n/**\n * Block used to read from prepass textures\n */\nexport class PrePassTextureBlock extends NodeMaterialBlock {\n /**\n * The texture associated with the node is the prepass texture\n */\n get texture() {\n return null;\n }\n set texture(value) {\n return;\n }\n /**\n * Creates a new PrePassTextureBlock\n * @param name defines the block name\n * @param target defines the target of that block (VertexAndFragment by default)\n */\n constructor(name, target = NodeMaterialBlockTargets.VertexAndFragment) {\n super(name, target, false);\n this.registerOutput(\"position\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"position\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"localPosition\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"localPosition\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"depth\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"depth\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"screenDepth\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"screenDepth\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"normal\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"normal\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n this.registerOutput(\"worldNormal\", NodeMaterialBlockConnectionPointTypes.Object, NodeMaterialBlockTargets.VertexAndFragment, new NodeMaterialConnectionPointCustomObject(\"worldNormal\", this, 1 /* NodeMaterialConnectionPointDirection.Output */, ImageSourceBlock, \"ImageSourceBlock\"));\n }\n /**\n * Returns the sampler name associated with the node connection point\n * @param output defines the connection point to get the associated sampler name\n * @returns\n */\n getSamplerName(output) {\n if (output === this._outputs[0]) {\n return this._positionSamplerName;\n }\n if (output === this._outputs[1]) {\n return this._localPositionSamplerName;\n }\n if (output === this._outputs[2]) {\n return this._depthSamplerName;\n }\n if (output === this._outputs[3]) {\n return this._screenSpaceDepthSamplerName;\n }\n if (output === this._outputs[4]) {\n return this._normalSamplerName;\n }\n if (output === this._outputs[5]) {\n return this._worldNormalSamplerName;\n }\n return \"\";\n }\n /**\n * Gets the position texture\n */\n get position() {\n return this._outputs[0];\n }\n /**\n * Gets the local position texture\n */\n get localPosition() {\n return this._outputs[1];\n }\n /**\n * Gets the depth texture\n */\n get depth() {\n return this._outputs[2];\n }\n /**\n * Gets the screen depth texture\n */\n get screenDepth() {\n return this._outputs[3];\n }\n /**\n * Gets the normal texture\n */\n get normal() {\n return this._outputs[4];\n }\n /**\n * Gets the world normal texture\n */\n get worldNormal() {\n return this._outputs[5];\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get positionSamplerName() {\n return this._positionSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get localPositionSamplerName() {\n return this._localPositionSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get normalSamplerName() {\n return this._normalSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get worldNormalSamplerName() {\n return this._worldNormalSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get depthSamplerName() {\n return this._depthSamplerName;\n }\n /**\n * Gets the sampler name associated with this image source\n */\n get linearDepthSamplerName() {\n return this._screenSpaceDepthSamplerName;\n }\n /**\n * Gets the current class name\n * @returns the class name\n */\n getClassName() {\n return \"PrePassTextureBlock\";\n }\n _buildBlock(state) {\n super._buildBlock(state);\n if (state.target === NodeMaterialBlockTargets.Vertex) {\n return;\n }\n this._positionSamplerName = \"prepassPositionSampler\";\n this._depthSamplerName = \"prepassDepthSampler\";\n this._normalSamplerName = \"prepassNormalSampler\";\n this._worldNormalSamplerName = \"prepassWorldNormalSampler\";\n this._localPositionSamplerName = \"prepassLocalPositionSampler\";\n this._screenSpaceDepthSamplerName = \"prepassScreenSpaceDepthSampler\";\n // Unique sampler names for every prepasstexture block\n state.sharedData.variableNames.prepassPositionSampler = 0;\n state.sharedData.variableNames.prepassDepthSampler = 0;\n state.sharedData.variableNames.prepassNormalSampler = 0;\n state.sharedData.variableNames.prepassWorldNormalSampler = 0;\n state.sharedData.variableNames.prepassLocalPositionSampler = 0;\n state.sharedData.variableNames.prepassScreenSpaceDepthSampler = 0;\n // Declarations\n state.sharedData.textureBlocks.push(this);\n state.sharedData.bindableBlocks.push(this);\n if (this.position.isConnected) {\n state._emit2DSampler(this._positionSamplerName);\n }\n if (this.depth.isConnected) {\n state._emit2DSampler(this._depthSamplerName);\n }\n if (this.normal.isConnected) {\n state._emit2DSampler(this._normalSamplerName);\n }\n if (this.worldNormal.isConnected) {\n state._emit2DSampler(this._worldNormalSamplerName);\n }\n if (this.localPosition.isConnected) {\n state._emit2DSampler(this._localPositionSamplerName);\n }\n if (this.screenDepth.isConnected) {\n state._emit2DSampler(this._screenSpaceDepthSamplerName);\n }\n return this;\n }\n bind(effect, nodeMaterial) {\n const scene = nodeMaterial.getScene();\n const prePassRenderer = scene.enablePrePassRenderer();\n if (!prePassRenderer) {\n return;\n }\n const sceneRT = prePassRenderer.defaultRT;\n if (!sceneRT.textures) {\n return;\n }\n if (this.position.isConnected) {\n effect.setTexture(this._positionSamplerName, sceneRT.textures[prePassRenderer.getIndex(1)]);\n }\n if (this.localPosition.isConnected) {\n effect.setTexture(this._localPositionSamplerName, sceneRT.textures[prePassRenderer.getIndex(9)]);\n }\n if (this.depth.isConnected) {\n effect.setTexture(this._depthSamplerName, sceneRT.textures[prePassRenderer.getIndex(5)]);\n }\n if (this.screenDepth.isConnected) {\n effect.setTexture(this._screenSpaceDepthSamplerName, sceneRT.textures[prePassRenderer.getIndex(10)]);\n }\n if (this.normal.isConnected) {\n effect.setTexture(this._normalSamplerName, sceneRT.textures[prePassRenderer.getIndex(6)]);\n }\n if (this.worldNormal.isConnected) {\n effect.setTexture(this._worldNormalSamplerName, sceneRT.textures[prePassRenderer.getIndex(8)]);\n }\n }\n}\nRegisterClass(\"BABYLON.PrePassTextureBlock\", PrePassTextureBlock);\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}