@fps-games/editor-deployment 0.2.3-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/fps-editor-agent.mjs +5 -0
- package/bin/fps-editor-prepare.mjs +5 -0
- package/bin/fps-editor-project.mjs +18 -0
- package/bin/fps-editor-server.mjs +2 -0
- package/licenses/THIRD_PARTY_NOTICES.txt +7 -0
- package/manifest.json +2688 -0
- package/npm-shrinkwrap.json +21 -0
- package/package.json +44 -0
- package/public/assets/abstractAudioBus-BRAC2GY2.js +1 -0
- package/public/assets/animation-C6iNAO1g.js +1 -0
- package/public/assets/animation-C6iNAO1g.js.br +0 -0
- package/public/assets/animation-C6iNAO1g.js.gz +0 -0
- package/public/assets/animationGroup-C74XVFRE.js +1 -0
- package/public/assets/animationGroup-C74XVFRE.js.br +0 -0
- package/public/assets/animationGroup-C74XVFRE.js.gz +0 -0
- package/public/assets/arcRotateCamera-CIQYNBBJ.js +1 -0
- package/public/assets/arcRotateCamera-CIQYNBBJ.js.br +0 -0
- package/public/assets/arcRotateCamera-CIQYNBBJ.js.gz +0 -0
- package/public/assets/babylon-core-PuGyjHMj.js +13882 -0
- package/public/assets/babylon-core-PuGyjHMj.js.br +0 -0
- package/public/assets/babylon-core-PuGyjHMj.js.gz +0 -0
- package/public/assets/babylon-core-S0gBQJVe.js +1 -0
- package/public/assets/babylon-core-S0gBQJVe.js.br +0 -0
- package/public/assets/babylon-core-S0gBQJVe.js.gz +0 -0
- package/public/assets/basisTextureLoader-BdapVvhf.js +1 -0
- package/public/assets/basisTextureLoader-BdapVvhf.js.br +0 -0
- package/public/assets/basisTextureLoader-BdapVvhf.js.gz +0 -0
- package/public/assets/bumpVertex-DMhnr4dz.js +173 -0
- package/public/assets/bumpVertex-DMhnr4dz.js.br +0 -0
- package/public/assets/bumpVertex-DMhnr4dz.js.gz +0 -0
- package/public/assets/bumpVertex-DpGOKCkn.js +177 -0
- package/public/assets/bumpVertex-DpGOKCkn.js.br +0 -0
- package/public/assets/bumpVertex-DpGOKCkn.js.gz +0 -0
- package/public/assets/chromaticAberration.fragment-BgX-2zxS.js +7 -0
- package/public/assets/chromaticAberration.fragment-BgX-2zxS.js.br +0 -0
- package/public/assets/chromaticAberration.fragment-BgX-2zxS.js.gz +0 -0
- package/public/assets/chromaticAberration.fragment-D7t6Txg4.js +6 -0
- package/public/assets/chromaticAberration.fragment-D7t6Txg4.js.br +0 -0
- package/public/assets/chromaticAberration.fragment-D7t6Txg4.js.gz +0 -0
- package/public/assets/circleOfConfusion.fragment-D1RtHaPm.js +17 -0
- package/public/assets/circleOfConfusion.fragment-D1RtHaPm.js.br +0 -0
- package/public/assets/circleOfConfusion.fragment-D1RtHaPm.js.gz +0 -0
- package/public/assets/circleOfConfusion.fragment-D8geMRma.js +17 -0
- package/public/assets/circleOfConfusion.fragment-D8geMRma.js.br +0 -0
- package/public/assets/circleOfConfusion.fragment-D8geMRma.js.gz +0 -0
- package/public/assets/clipPlaneFragment-Bgl3Usc4.js +46 -0
- package/public/assets/clipPlaneFragment-Bgl3Usc4.js.br +0 -0
- package/public/assets/clipPlaneFragment-Bgl3Usc4.js.gz +0 -0
- package/public/assets/clipPlaneVertex-BxK9aoI2.js +177 -0
- package/public/assets/clipPlaneVertex-BxK9aoI2.js.br +0 -0
- package/public/assets/clipPlaneVertex-BxK9aoI2.js.gz +0 -0
- package/public/assets/color.fragment-BUdIBar6.js +20 -0
- package/public/assets/color.fragment-BUdIBar6.js.br +0 -0
- package/public/assets/color.fragment-BUdIBar6.js.gz +0 -0
- package/public/assets/color.fragment-CDn4ZgkT.js +21 -0
- package/public/assets/color.fragment-CDn4ZgkT.js.br +0 -0
- package/public/assets/color.fragment-CDn4ZgkT.js.gz +0 -0
- package/public/assets/color.vertex-CaMOSKlC.js +39 -0
- package/public/assets/color.vertex-CaMOSKlC.js.br +5 -0
- package/public/assets/color.vertex-CaMOSKlC.js.gz +0 -0
- package/public/assets/color.vertex-dgbB6mhK.js +32 -0
- package/public/assets/color.vertex-dgbB6mhK.js.br +0 -0
- package/public/assets/color.vertex-dgbB6mhK.js.gz +0 -0
- package/public/assets/dds-3J0FZYX1.js +1 -0
- package/public/assets/dds-3J0FZYX1.js.br +0 -0
- package/public/assets/dds-3J0FZYX1.js.gz +0 -0
- package/public/assets/ddsTextureLoader-s5HptTVZ.js +1 -0
- package/public/assets/ddsTextureLoader-s5HptTVZ.js.br +0 -0
- package/public/assets/ddsTextureLoader-s5HptTVZ.js.gz +0 -0
- package/public/assets/default.fragment-C4xg7O-P.js +526 -0
- package/public/assets/default.fragment-C4xg7O-P.js.br +0 -0
- package/public/assets/default.fragment-C4xg7O-P.js.gz +0 -0
- package/public/assets/default.fragment-C4zjkcFb.js +468 -0
- package/public/assets/default.fragment-C4zjkcFb.js.br +0 -0
- package/public/assets/default.fragment-C4zjkcFb.js.gz +0 -0
- package/public/assets/default.vertex-A8wQopNr.js +193 -0
- package/public/assets/default.vertex-A8wQopNr.js.br +0 -0
- package/public/assets/default.vertex-A8wQopNr.js.gz +0 -0
- package/public/assets/default.vertex-YrvIUn4x.js +181 -0
- package/public/assets/default.vertex-YrvIUn4x.js.br +0 -0
- package/public/assets/default.vertex-YrvIUn4x.js.gz +0 -0
- package/public/assets/defaultUboDeclaration-C8GCosBM.js +5 -0
- package/public/assets/defaultUboDeclaration-C8GCosBM.js.br +0 -0
- package/public/assets/defaultUboDeclaration-C8GCosBM.js.gz +0 -0
- package/public/assets/defaultUboDeclaration-D26o_DDO.js +7 -0
- package/public/assets/defaultUboDeclaration-D26o_DDO.js.br +0 -0
- package/public/assets/defaultUboDeclaration-D26o_DDO.js.gz +0 -0
- package/public/assets/depth.fragment-Bn8G24s-.js +40 -0
- package/public/assets/depth.fragment-Bn8G24s-.js.br +4 -0
- package/public/assets/depth.fragment-Bn8G24s-.js.gz +0 -0
- package/public/assets/depth.vertex-B2lrdlJh.js +57 -0
- package/public/assets/depth.vertex-B2lrdlJh.js.br +0 -0
- package/public/assets/depth.vertex-B2lrdlJh.js.gz +0 -0
- package/public/assets/depthBoxBlur.fragment-BtTv8wid.js +5 -0
- package/public/assets/depthBoxBlur.fragment-BtTv8wid.js.br +0 -0
- package/public/assets/depthBoxBlur.fragment-BtTv8wid.js.gz +0 -0
- package/public/assets/depthBoxBlur.fragment-DViDG6Vb.js +6 -0
- package/public/assets/depthBoxBlur.fragment-DViDG6Vb.js.br +0 -0
- package/public/assets/depthBoxBlur.fragment-DViDG6Vb.js.gz +0 -0
- package/public/assets/depthOfFieldMerge.fragment-DCspcdWZ.js +26 -0
- package/public/assets/depthOfFieldMerge.fragment-DCspcdWZ.js.br +0 -0
- package/public/assets/depthOfFieldMerge.fragment-DCspcdWZ.js.gz +0 -0
- package/public/assets/depthOfFieldMerge.fragment-Ds-g4Ln8.js +21 -0
- package/public/assets/depthOfFieldMerge.fragment-Ds-g4Ln8.js.br +0 -0
- package/public/assets/depthOfFieldMerge.fragment-Ds-g4Ln8.js.gz +0 -0
- package/public/assets/dynamicTexture-Cuby-VOT.js +1329 -0
- package/public/assets/dynamicTexture-Cuby-VOT.js.br +0 -0
- package/public/assets/dynamicTexture-Cuby-VOT.js.gz +0 -0
- package/public/assets/easing-DbzzrXOl.js +1 -0
- package/public/assets/easing-DbzzrXOl.js.br +0 -0
- package/public/assets/easing-DbzzrXOl.js.gz +0 -0
- package/public/assets/editor-core-plugin-host-c2002442.js +1 -0
- package/public/assets/editor-core-plugin-host-c2002442.js.br +0 -0
- package/public/assets/editor-core-plugin-host-c2002442.js.gz +0 -0
- package/public/assets/exrTextureLoader-D39k4eK_.js +1 -0
- package/public/assets/exrTextureLoader-D39k4eK_.js.br +0 -0
- package/public/assets/exrTextureLoader-D39k4eK_.js.gz +0 -0
- package/public/assets/flowGraphArrayIndexBlock-C8nTWR8h.js +1 -0
- package/public/assets/flowGraphArrayIndexBlock-C8nTWR8h.js.br +0 -0
- package/public/assets/flowGraphArrayIndexBlock-C8nTWR8h.js.gz +0 -0
- package/public/assets/flowGraphBezierCurveEasingBlock-Izh7s0Zh.js +1 -0
- package/public/assets/flowGraphBezierCurveEasingBlock-Izh7s0Zh.js.br +0 -0
- package/public/assets/flowGraphBezierCurveEasingBlock-Izh7s0Zh.js.gz +0 -0
- package/public/assets/flowGraphBinaryOperationBlock-BRfalQP5.js +1 -0
- package/public/assets/flowGraphBinaryOperationBlock-BRfalQP5.js.br +0 -0
- package/public/assets/flowGraphBinaryOperationBlock-BRfalQP5.js.gz +0 -0
- package/public/assets/flowGraphBranchBlock-CV_leJX3.js +1 -0
- package/public/assets/flowGraphBranchBlock-CV_leJX3.js.br +0 -0
- package/public/assets/flowGraphBranchBlock-CV_leJX3.js.gz +0 -0
- package/public/assets/flowGraphCachedOperationBlock-BysRM-Ha.js +1 -0
- package/public/assets/flowGraphCachedOperationBlock-BysRM-Ha.js.br +2 -0
- package/public/assets/flowGraphCachedOperationBlock-BysRM-Ha.js.gz +0 -0
- package/public/assets/flowGraphCancelDelayBlock-BK6tDTGy.js +1 -0
- package/public/assets/flowGraphCancelDelayBlock-BK6tDTGy.js.br +0 -0
- package/public/assets/flowGraphCancelDelayBlock-BK6tDTGy.js.gz +0 -0
- package/public/assets/flowGraphCodeExecutionBlock-CQABvaP8.js +1 -0
- package/public/assets/flowGraphCodeExecutionBlock-CQABvaP8.js.br +0 -0
- package/public/assets/flowGraphCodeExecutionBlock-CQABvaP8.js.gz +0 -0
- package/public/assets/flowGraphConditionalDataBlock-D7OU_UOM.js +1 -0
- package/public/assets/flowGraphConditionalDataBlock-D7OU_UOM.js.br +0 -0
- package/public/assets/flowGraphConditionalDataBlock-D7OU_UOM.js.gz +0 -0
- package/public/assets/flowGraphConsoleLogBlock-BBxVDGOV.js +1 -0
- package/public/assets/flowGraphConsoleLogBlock-BBxVDGOV.js.br +0 -0
- package/public/assets/flowGraphConsoleLogBlock-BBxVDGOV.js.gz +0 -0
- package/public/assets/flowGraphConstantBlock-Cn3ZMGR0.js +1 -0
- package/public/assets/flowGraphConstantBlock-Cn3ZMGR0.js.br +0 -0
- package/public/assets/flowGraphConstantBlock-Cn3ZMGR0.js.gz +0 -0
- package/public/assets/flowGraphContextBlock-BS3b2XbE.js +1 -0
- package/public/assets/flowGraphContextBlock-BS3b2XbE.js.br +0 -0
- package/public/assets/flowGraphContextBlock-BS3b2XbE.js.gz +0 -0
- package/public/assets/flowGraphCounterBlock-xdcRCw4l.js +1 -0
- package/public/assets/flowGraphCounterBlock-xdcRCw4l.js.br +0 -0
- package/public/assets/flowGraphCounterBlock-xdcRCw4l.js.gz +0 -0
- package/public/assets/flowGraphDataSwitchBlock-dY8TSZtd.js +1 -0
- package/public/assets/flowGraphDataSwitchBlock-dY8TSZtd.js.br +0 -0
- package/public/assets/flowGraphDataSwitchBlock-dY8TSZtd.js.gz +0 -0
- package/public/assets/flowGraphDebounceBlock-Q_f2x-ID.js +1 -0
- package/public/assets/flowGraphDebounceBlock-Q_f2x-ID.js.br +0 -0
- package/public/assets/flowGraphDebounceBlock-Q_f2x-ID.js.gz +0 -0
- package/public/assets/flowGraphDoNBlock-COo31G00.js +1 -0
- package/public/assets/flowGraphDoNBlock-COo31G00.js.br +0 -0
- package/public/assets/flowGraphDoNBlock-COo31G00.js.gz +0 -0
- package/public/assets/flowGraphEasingBlock-jGW-fKIB.js +1 -0
- package/public/assets/flowGraphEasingBlock-jGW-fKIB.js.br +0 -0
- package/public/assets/flowGraphEasingBlock-jGW-fKIB.js.gz +0 -0
- package/public/assets/flowGraphFlipFlopBlock-B8znf-3o.js +1 -0
- package/public/assets/flowGraphFlipFlopBlock-B8znf-3o.js.br +0 -0
- package/public/assets/flowGraphFlipFlopBlock-B8znf-3o.js.gz +0 -0
- package/public/assets/flowGraphForLoopBlock-UxZSh8US.js +1 -0
- package/public/assets/flowGraphForLoopBlock-UxZSh8US.js.br +0 -0
- package/public/assets/flowGraphForLoopBlock-UxZSh8US.js.gz +0 -0
- package/public/assets/flowGraphFunctionReferenceBlock-c3ZQWBhk.js +1 -0
- package/public/assets/flowGraphFunctionReferenceBlock-c3ZQWBhk.js.br +0 -0
- package/public/assets/flowGraphFunctionReferenceBlock-c3ZQWBhk.js.gz +0 -0
- package/public/assets/flowGraphGetAssetBlock-B3zYUZmJ.js +1 -0
- package/public/assets/flowGraphGetAssetBlock-B3zYUZmJ.js.br +0 -0
- package/public/assets/flowGraphGetAssetBlock-B3zYUZmJ.js.gz +0 -0
- package/public/assets/flowGraphGetPropertyBlock-D--vcmMS.js +1 -0
- package/public/assets/flowGraphGetPropertyBlock-D--vcmMS.js.br +0 -0
- package/public/assets/flowGraphGetPropertyBlock-D--vcmMS.js.gz +0 -0
- package/public/assets/flowGraphGetVariableBlock-BkCEyiL6.js +1 -0
- package/public/assets/flowGraphGetVariableBlock-BkCEyiL6.js.br +0 -0
- package/public/assets/flowGraphGetVariableBlock-BkCEyiL6.js.gz +0 -0
- package/public/assets/flowGraphIndexOfBlock-C4ipR7YB.js +1 -0
- package/public/assets/flowGraphIndexOfBlock-C4ipR7YB.js.br +0 -0
- package/public/assets/flowGraphIndexOfBlock-C4ipR7YB.js.gz +0 -0
- package/public/assets/flowGraphInterpolationBlock-DuRc3LX7.js +1 -0
- package/public/assets/flowGraphInterpolationBlock-DuRc3LX7.js.br +0 -0
- package/public/assets/flowGraphInterpolationBlock-DuRc3LX7.js.gz +0 -0
- package/public/assets/flowGraphJsonPointerParserBlock-urEWktqi.js +1 -0
- package/public/assets/flowGraphJsonPointerParserBlock-urEWktqi.js.br +0 -0
- package/public/assets/flowGraphJsonPointerParserBlock-urEWktqi.js.gz +0 -0
- package/public/assets/flowGraphMathBlocks-CGTCQVqz.js +1 -0
- package/public/assets/flowGraphMathBlocks-CGTCQVqz.js.br +0 -0
- package/public/assets/flowGraphMathBlocks-CGTCQVqz.js.gz +0 -0
- package/public/assets/flowGraphMathCombineExtractBlocks-DDHGbRPt.js +1 -0
- package/public/assets/flowGraphMathCombineExtractBlocks-DDHGbRPt.js.br +0 -0
- package/public/assets/flowGraphMathCombineExtractBlocks-DDHGbRPt.js.gz +0 -0
- package/public/assets/flowGraphMatrixMathBlocks-Bwp1BysB.js +1 -0
- package/public/assets/flowGraphMatrixMathBlocks-Bwp1BysB.js.br +0 -0
- package/public/assets/flowGraphMatrixMathBlocks-Bwp1BysB.js.gz +0 -0
- package/public/assets/flowGraphMeshPickEventBlock-2wkqhQCG.js +1 -0
- package/public/assets/flowGraphMeshPickEventBlock-2wkqhQCG.js.br +0 -0
- package/public/assets/flowGraphMeshPickEventBlock-2wkqhQCG.js.gz +0 -0
- package/public/assets/flowGraphMultiGateBlock-BuKmvqC8.js +1 -0
- package/public/assets/flowGraphMultiGateBlock-BuKmvqC8.js.br +0 -0
- package/public/assets/flowGraphMultiGateBlock-BuKmvqC8.js.gz +0 -0
- package/public/assets/flowGraphPauseAnimationBlock-T_-VP-t5.js +1 -0
- package/public/assets/flowGraphPauseAnimationBlock-T_-VP-t5.js.br +0 -0
- package/public/assets/flowGraphPauseAnimationBlock-T_-VP-t5.js.gz +0 -0
- package/public/assets/flowGraphPlayAnimationBlock-DDVrE__n.js +1 -0
- package/public/assets/flowGraphPlayAnimationBlock-DDVrE__n.js.br +0 -0
- package/public/assets/flowGraphPlayAnimationBlock-DDVrE__n.js.gz +0 -0
- package/public/assets/flowGraphPointerOutEventBlock-Cx15Sf5R.js +1 -0
- package/public/assets/flowGraphPointerOutEventBlock-Cx15Sf5R.js.br +0 -0
- package/public/assets/flowGraphPointerOutEventBlock-Cx15Sf5R.js.gz +0 -0
- package/public/assets/flowGraphPointerOverEventBlock-DzzHa-dN.js +1 -0
- package/public/assets/flowGraphPointerOverEventBlock-DzzHa-dN.js.br +0 -0
- package/public/assets/flowGraphPointerOverEventBlock-DzzHa-dN.js.gz +0 -0
- package/public/assets/flowGraphReceiveCustomEventBlock-DKfLODu3.js +1 -0
- package/public/assets/flowGraphReceiveCustomEventBlock-DKfLODu3.js.br +0 -0
- package/public/assets/flowGraphReceiveCustomEventBlock-DKfLODu3.js.gz +0 -0
- package/public/assets/flowGraphSceneReadyEventBlock-ClJu3s64.js +1 -0
- package/public/assets/flowGraphSceneReadyEventBlock-ClJu3s64.js.br +0 -0
- package/public/assets/flowGraphSceneReadyEventBlock-ClJu3s64.js.gz +0 -0
- package/public/assets/flowGraphSceneTickEventBlock-3ZNr4eqw.js +1 -0
- package/public/assets/flowGraphSceneTickEventBlock-3ZNr4eqw.js.br +0 -0
- package/public/assets/flowGraphSceneTickEventBlock-3ZNr4eqw.js.gz +0 -0
- package/public/assets/flowGraphSendCustomEventBlock-CdKQeuma.js +1 -0
- package/public/assets/flowGraphSendCustomEventBlock-CdKQeuma.js.br +0 -0
- package/public/assets/flowGraphSendCustomEventBlock-CdKQeuma.js.gz +0 -0
- package/public/assets/flowGraphSequenceBlock-D0-_bFV3.js +1 -0
- package/public/assets/flowGraphSequenceBlock-D0-_bFV3.js.br +0 -0
- package/public/assets/flowGraphSequenceBlock-D0-_bFV3.js.gz +0 -0
- package/public/assets/flowGraphSetDelayBlock-B8946WOc.js +1 -0
- package/public/assets/flowGraphSetDelayBlock-B8946WOc.js.br +0 -0
- package/public/assets/flowGraphSetDelayBlock-B8946WOc.js.gz +0 -0
- package/public/assets/flowGraphSetPropertyBlock-Cx0IyW-a.js +1 -0
- package/public/assets/flowGraphSetPropertyBlock-Cx0IyW-a.js.br +0 -0
- package/public/assets/flowGraphSetPropertyBlock-Cx0IyW-a.js.gz +0 -0
- package/public/assets/flowGraphSetVariableBlock-0dns_CH6.js +1 -0
- package/public/assets/flowGraphSetVariableBlock-0dns_CH6.js.br +0 -0
- package/public/assets/flowGraphSetVariableBlock-0dns_CH6.js.gz +0 -0
- package/public/assets/flowGraphStopAnimationBlock-z4ou311H.js +1 -0
- package/public/assets/flowGraphStopAnimationBlock-z4ou311H.js.br +0 -0
- package/public/assets/flowGraphStopAnimationBlock-z4ou311H.js.gz +0 -0
- package/public/assets/flowGraphSwitchBlock-E7meS39u.js +1 -0
- package/public/assets/flowGraphSwitchBlock-E7meS39u.js.br +0 -0
- package/public/assets/flowGraphSwitchBlock-E7meS39u.js.gz +0 -0
- package/public/assets/flowGraphThrottleBlock-CldHJDs6.js +1 -0
- package/public/assets/flowGraphThrottleBlock-CldHJDs6.js.br +0 -0
- package/public/assets/flowGraphThrottleBlock-CldHJDs6.js.gz +0 -0
- package/public/assets/flowGraphTransformCoordinatesSystemBlock-pYdpcwK7.js +1 -0
- package/public/assets/flowGraphTransformCoordinatesSystemBlock-pYdpcwK7.js.br +0 -0
- package/public/assets/flowGraphTransformCoordinatesSystemBlock-pYdpcwK7.js.gz +0 -0
- package/public/assets/flowGraphTypeToTypeBlocks-CYfvLPJ-.js +1 -0
- package/public/assets/flowGraphTypeToTypeBlocks-CYfvLPJ-.js.br +0 -0
- package/public/assets/flowGraphTypeToTypeBlocks-CYfvLPJ-.js.gz +0 -0
- package/public/assets/flowGraphUnaryOperationBlock-s-kJ99D8.js +1 -0
- package/public/assets/flowGraphUnaryOperationBlock-s-kJ99D8.js.br +0 -0
- package/public/assets/flowGraphUnaryOperationBlock-s-kJ99D8.js.gz +0 -0
- package/public/assets/flowGraphVectorMathBlocks-D7iofIoY.js +1 -0
- package/public/assets/flowGraphVectorMathBlocks-D7iofIoY.js.br +0 -0
- package/public/assets/flowGraphVectorMathBlocks-D7iofIoY.js.gz +0 -0
- package/public/assets/flowGraphWaitAllBlock-CAW7HgUP.js +1 -0
- package/public/assets/flowGraphWaitAllBlock-CAW7HgUP.js.br +0 -0
- package/public/assets/flowGraphWaitAllBlock-CAW7HgUP.js.gz +0 -0
- package/public/assets/flowGraphWhileLoopBlock-DRP9_Zd1.js +1 -0
- package/public/assets/flowGraphWhileLoopBlock-DRP9_Zd1.js.br +0 -0
- package/public/assets/flowGraphWhileLoopBlock-DRP9_Zd1.js.gz +0 -0
- package/public/assets/fogFragmentDeclaration-CzUy86ul.js +22 -0
- package/public/assets/fogFragmentDeclaration-CzUy86ul.js.br +0 -0
- package/public/assets/fogFragmentDeclaration-CzUy86ul.js.gz +0 -0
- package/public/assets/fogFragmentDeclaration-kfcrkpgB.js +23 -0
- package/public/assets/fogFragmentDeclaration-kfcrkpgB.js.br +0 -0
- package/public/assets/fogFragmentDeclaration-kfcrkpgB.js.gz +0 -0
- package/public/assets/glowBlurPostProcess.fragment-CS_rTtUL.js +7 -0
- package/public/assets/glowBlurPostProcess.fragment-CS_rTtUL.js.br +0 -0
- package/public/assets/glowBlurPostProcess.fragment-CS_rTtUL.js.gz +0 -0
- package/public/assets/glowBlurPostProcess.fragment-G_xfSiIr.js +7 -0
- package/public/assets/glowBlurPostProcess.fragment-G_xfSiIr.js.br +0 -0
- package/public/assets/glowBlurPostProcess.fragment-G_xfSiIr.js.gz +0 -0
- package/public/assets/glowMapGeneration.fragment-DwJ3bpr6.js +63 -0
- package/public/assets/glowMapGeneration.fragment-DwJ3bpr6.js.br +0 -0
- package/public/assets/glowMapGeneration.fragment-DwJ3bpr6.js.gz +0 -0
- package/public/assets/glowMapGeneration.fragment-mDEHNZRi.js +63 -0
- package/public/assets/glowMapGeneration.fragment-mDEHNZRi.js.br +0 -0
- package/public/assets/glowMapGeneration.fragment-mDEHNZRi.js.gz +0 -0
- package/public/assets/glowMapGeneration.vertex-BACa9-r4.js +75 -0
- package/public/assets/glowMapGeneration.vertex-BACa9-r4.js.br +0 -0
- package/public/assets/glowMapGeneration.vertex-BACa9-r4.js.gz +0 -0
- package/public/assets/glowMapGeneration.vertex-mAWUJxSB.js +75 -0
- package/public/assets/glowMapGeneration.vertex-mAWUJxSB.js.br +3 -0
- package/public/assets/glowMapGeneration.vertex-mAWUJxSB.js.gz +0 -0
- package/public/assets/glowMapMerge.fragment-0Im35OVD.js +23 -0
- package/public/assets/glowMapMerge.fragment-0Im35OVD.js.br +0 -0
- package/public/assets/glowMapMerge.fragment-0Im35OVD.js.gz +0 -0
- package/public/assets/glowMapMerge.fragment-BXHfrWgL.js +25 -0
- package/public/assets/glowMapMerge.fragment-BXHfrWgL.js.br +0 -0
- package/public/assets/glowMapMerge.fragment-BXHfrWgL.js.gz +0 -0
- package/public/assets/glowMapMerge.vertex-8A2ntYoS.js +7 -0
- package/public/assets/glowMapMerge.vertex-8A2ntYoS.js.br +0 -0
- package/public/assets/glowMapMerge.vertex-8A2ntYoS.js.gz +0 -0
- package/public/assets/glowMapMerge.vertex-Cnm-5WLT.js +8 -0
- package/public/assets/glowMapMerge.vertex-Cnm-5WLT.js.br +0 -0
- package/public/assets/glowMapMerge.vertex-Cnm-5WLT.js.gz +0 -0
- package/public/assets/grain.fragment-BMGi-Hgp.js +6 -0
- package/public/assets/grain.fragment-BMGi-Hgp.js.br +0 -0
- package/public/assets/grain.fragment-BMGi-Hgp.js.gz +0 -0
- package/public/assets/grain.fragment-CH9zg05c.js +5 -0
- package/public/assets/grain.fragment-CH9zg05c.js.br +0 -0
- package/public/assets/grain.fragment-CH9zg05c.js.gz +0 -0
- package/public/assets/harmonicsFunctions-BQTTvws3.js +192 -0
- package/public/assets/harmonicsFunctions-BQTTvws3.js.br +0 -0
- package/public/assets/harmonicsFunctions-BQTTvws3.js.gz +0 -0
- package/public/assets/harmonicsFunctions-DtIiYWL1.js +189 -0
- package/public/assets/harmonicsFunctions-DtIiYWL1.js.br +0 -0
- package/public/assets/harmonicsFunctions-DtIiYWL1.js.gz +0 -0
- package/public/assets/hdrTextureLoader-Dqvpv0kr.js +2 -0
- package/public/assets/hdrTextureLoader-Dqvpv0kr.js.br +0 -0
- package/public/assets/hdrTextureLoader-Dqvpv0kr.js.gz +0 -0
- package/public/assets/iesTextureLoader-B8AoKSG2.js +2 -0
- package/public/assets/iesTextureLoader-B8AoKSG2.js.br +0 -0
- package/public/assets/iesTextureLoader-B8AoKSG2.js.gz +0 -0
- package/public/assets/index-CiIoJ8v1.js +4 -0
- package/public/assets/index-CiIoJ8v1.js.br +0 -0
- package/public/assets/index-CiIoJ8v1.js.gz +0 -0
- package/public/assets/index-Dhf9rSmv.js +1 -0
- package/public/assets/index-Dhf9rSmv.js.br +0 -0
- package/public/assets/index-Dhf9rSmv.js.gz +0 -0
- package/public/assets/instancesDeclaration-B2a0VuuR.js +23 -0
- package/public/assets/instancesDeclaration-B2a0VuuR.js.br +0 -0
- package/public/assets/instancesDeclaration-B2a0VuuR.js.gz +0 -0
- package/public/assets/ktxTextureLoader-DTr7AKqG.js +1 -0
- package/public/assets/ktxTextureLoader-DTr7AKqG.js.br +0 -0
- package/public/assets/ktxTextureLoader-DTr7AKqG.js.gz +0 -0
- package/public/assets/lazy-Cj-01uhW.js +2 -0
- package/public/assets/lazy-Cj-01uhW.js.br +0 -0
- package/public/assets/lazy-Cj-01uhW.js.gz +0 -0
- package/public/assets/lod.fragment-BuvQbBhE.js +3 -0
- package/public/assets/lod.fragment-BuvQbBhE.js.br +0 -0
- package/public/assets/lod.fragment-BuvQbBhE.js.gz +0 -0
- package/public/assets/lod.fragment-Cp0eqGjl.js +3 -0
- package/public/assets/lod.fragment-Cp0eqGjl.js.br +3 -0
- package/public/assets/lod.fragment-Cp0eqGjl.js.gz +0 -0
- package/public/assets/lodCube.fragment-CI1eTppS.js +22 -0
- package/public/assets/lodCube.fragment-CI1eTppS.js.br +2 -0
- package/public/assets/lodCube.fragment-CI1eTppS.js.gz +0 -0
- package/public/assets/lodCube.fragment-yDzV1teg.js +22 -0
- package/public/assets/lodCube.fragment-yDzV1teg.js.br +0 -0
- package/public/assets/lodCube.fragment-yDzV1teg.js.gz +0 -0
- package/public/assets/logDepthDeclaration-CeLLOhuK.js +4 -0
- package/public/assets/logDepthDeclaration-XDsVKoT0.js +4 -0
- package/public/assets/logDepthFragment-BPP-rBiT.js +4 -0
- package/public/assets/logDepthFragment-BPP-rBiT.js.br +0 -0
- package/public/assets/logDepthFragment-BPP-rBiT.js.gz +0 -0
- package/public/assets/logDepthFragment-CDaMyvfH.js +4 -0
- package/public/assets/logDepthVertex-CkFa6uAf.js +4 -0
- package/public/assets/logDepthVertex-CkFa6uAf.js.br +0 -0
- package/public/assets/logDepthVertex-CkFa6uAf.js.gz +0 -0
- package/public/assets/logDepthVertex-H6E8NLz1.js +4 -0
- package/public/assets/logDepthVertex-H6E8NLz1.js.br +1 -0
- package/public/assets/logDepthVertex-H6E8NLz1.js.gz +0 -0
- package/public/assets/mainUVVaryingDeclaration-DdwP8xi_.js +4 -0
- package/public/assets/mainUVVaryingDeclaration-OBB3LR8s.js +4 -0
- package/public/assets/mesh.vertexData.functions-BXkNVxNr.js +1 -0
- package/public/assets/mesh.vertexData.functions-BXkNVxNr.js.br +0 -0
- package/public/assets/mesh.vertexData.functions-BXkNVxNr.js.gz +0 -0
- package/public/assets/meshUboDeclaration-Cr5YhBB1.js +13 -0
- package/public/assets/meshUboDeclaration-Cr5YhBB1.js.br +0 -0
- package/public/assets/meshUboDeclaration-Cr5YhBB1.js.gz +0 -0
- package/public/assets/meshUboDeclaration-Uj1CsoJP.js +13 -0
- package/public/assets/meshUboDeclaration-Uj1CsoJP.js.br +0 -0
- package/public/assets/meshUboDeclaration-Uj1CsoJP.js.gz +0 -0
- package/public/assets/morphTargetsVertex-B9xWvV_u.js +100 -0
- package/public/assets/morphTargetsVertex-B9xWvV_u.js.br +0 -0
- package/public/assets/morphTargetsVertex-B9xWvV_u.js.gz +0 -0
- package/public/assets/oitFinalSimpleBlend.fragment-4NtZHGOG.js +3 -0
- package/public/assets/oitFinalSimpleBlend.fragment-4NtZHGOG.js.br +0 -0
- package/public/assets/oitFinalSimpleBlend.fragment-4NtZHGOG.js.gz +0 -0
- package/public/assets/oitFinalSimpleBlend.fragment-D8T6jyS0.js +2 -0
- package/public/assets/oitFinalSimpleBlend.fragment-D8T6jyS0.js.br +3 -0
- package/public/assets/oitFinalSimpleBlend.fragment-D8T6jyS0.js.gz +0 -0
- package/public/assets/oitFragment-CK8Y-Z-q.js +1202 -0
- package/public/assets/oitFragment-CK8Y-Z-q.js.br +0 -0
- package/public/assets/oitFragment-CK8Y-Z-q.js.gz +0 -0
- package/public/assets/oitFragment-ZUHesxAg.js +1077 -0
- package/public/assets/oitFragment-ZUHesxAg.js.br +0 -0
- package/public/assets/oitFragment-ZUHesxAg.js.gz +0 -0
- package/public/assets/openpbrMaterial-Dc7VVRl6.js +2 -0
- package/public/assets/openpbrMaterial-Dc7VVRl6.js.br +0 -0
- package/public/assets/openpbrMaterial-Dc7VVRl6.js.gz +0 -0
- package/public/assets/outline.fragment-BK0vgcx7.js +21 -0
- package/public/assets/outline.fragment-BK0vgcx7.js.br +0 -0
- package/public/assets/outline.fragment-BK0vgcx7.js.gz +0 -0
- package/public/assets/outline.fragment-DQK2JikO.js +18 -0
- package/public/assets/outline.fragment-DQK2JikO.js.br +0 -0
- package/public/assets/outline.fragment-DQK2JikO.js.gz +0 -0
- package/public/assets/outline.vertex-CHR7GZYH.js +47 -0
- package/public/assets/outline.vertex-CHR7GZYH.js.br +0 -0
- package/public/assets/outline.vertex-CHR7GZYH.js.gz +0 -0
- package/public/assets/outline.vertex-CKcILDiL.js +47 -0
- package/public/assets/outline.vertex-CKcILDiL.js.br +0 -0
- package/public/assets/outline.vertex-CKcILDiL.js.gz +0 -0
- package/public/assets/passCube.fragment-Ch6aeybh.js +23 -0
- package/public/assets/passCube.fragment-Ch6aeybh.js.br +0 -0
- package/public/assets/passCube.fragment-Ch6aeybh.js.gz +0 -0
- package/public/assets/passCube.fragment-wvJ8mb6_.js +23 -0
- package/public/assets/passCube.fragment-wvJ8mb6_.js.br +0 -0
- package/public/assets/passCube.fragment-wvJ8mb6_.js.gz +0 -0
- package/public/assets/pbr.fragment-Bo4XM7Ct.js +3277 -0
- package/public/assets/pbr.fragment-Bo4XM7Ct.js.br +0 -0
- package/public/assets/pbr.fragment-Bo4XM7Ct.js.gz +0 -0
- package/public/assets/pbr.fragment-T2xKI2J0.js +3327 -0
- package/public/assets/pbr.fragment-T2xKI2J0.js.br +0 -0
- package/public/assets/pbr.fragment-T2xKI2J0.js.gz +0 -0
- package/public/assets/pbr.vertex-BezAbBHx.js +357 -0
- package/public/assets/pbr.vertex-BezAbBHx.js.br +0 -0
- package/public/assets/pbr.vertex-BezAbBHx.js.gz +0 -0
- package/public/assets/pbr.vertex-w2ZWBdHy.js +227 -0
- package/public/assets/pbr.vertex-w2ZWBdHy.js.br +0 -0
- package/public/assets/pbr.vertex-w2ZWBdHy.js.gz +0 -0
- package/public/assets/playable-sdk-zAYuBOLj.js +8 -0
- package/public/assets/playable-sdk-zAYuBOLj.js.br +0 -0
- package/public/assets/playable-sdk-zAYuBOLj.js.gz +0 -0
- package/public/assets/playable-standard-project-Brbyn9c4.js +5140 -0
- package/public/assets/playable-standard-project-Brbyn9c4.js.br +0 -0
- package/public/assets/playable-standard-project-Brbyn9c4.js.gz +0 -0
- package/public/assets/rgbdDecode.fragment-BQ16CsAv.js +5 -0
- package/public/assets/rgbdDecode.fragment-BQ16CsAv.js.br +4 -0
- package/public/assets/rgbdDecode.fragment-BQ16CsAv.js.gz +0 -0
- package/public/assets/rgbdDecode.fragment-D_2CJy2O.js +5 -0
- package/public/assets/rgbdDecode.fragment-D_2CJy2O.js.br +0 -0
- package/public/assets/rgbdDecode.fragment-D_2CJy2O.js.gz +0 -0
- package/public/assets/rgbdEncode.fragment-CmDv6yEZ.js +5 -0
- package/public/assets/rgbdEncode.fragment-CmDv6yEZ.js.br +3 -0
- package/public/assets/rgbdEncode.fragment-CmDv6yEZ.js.gz +0 -0
- package/public/assets/rgbdEncode.fragment-QRg2h8KC.js +5 -0
- package/public/assets/rgbdEncode.fragment-QRg2h8KC.js.br +1 -0
- package/public/assets/rgbdEncode.fragment-QRg2h8KC.js.gz +0 -0
- package/public/assets/sceneLoader-CDreObGG.js +1 -0
- package/public/assets/sceneLoader-CDreObGG.js.br +0 -0
- package/public/assets/sceneLoader-CDreObGG.js.gz +0 -0
- package/public/assets/screenSpaceCurvature.fragment-BWdr_4iW.js +15 -0
- package/public/assets/screenSpaceCurvature.fragment-BWdr_4iW.js.br +0 -0
- package/public/assets/screenSpaceCurvature.fragment-BWdr_4iW.js.gz +0 -0
- package/public/assets/selection.fragment-CVXAuXcC.js +35 -0
- package/public/assets/selection.fragment-CVXAuXcC.js.br +0 -0
- package/public/assets/selection.fragment-CVXAuXcC.js.gz +0 -0
- package/public/assets/selection.fragment-DobH4NRw.js +35 -0
- package/public/assets/selection.fragment-DobH4NRw.js.br +0 -0
- package/public/assets/selection.fragment-DobH4NRw.js.gz +0 -0
- package/public/assets/selection.vertex-BUBv8X1j.js +74 -0
- package/public/assets/selection.vertex-BUBv8X1j.js.br +0 -0
- package/public/assets/selection.vertex-BUBv8X1j.js.gz +0 -0
- package/public/assets/selection.vertex-DlADXBtf.js +73 -0
- package/public/assets/selection.vertex-DlADXBtf.js.br +0 -0
- package/public/assets/selection.vertex-DlADXBtf.js.gz +0 -0
- package/public/assets/selectionOutline.fragment-CWpNrg8m.js +47 -0
- package/public/assets/selectionOutline.fragment-CWpNrg8m.js.br +0 -0
- package/public/assets/selectionOutline.fragment-CWpNrg8m.js.gz +0 -0
- package/public/assets/selectionOutline.fragment-DoKuUf2L.js +48 -0
- package/public/assets/selectionOutline.fragment-DoKuUf2L.js.br +0 -0
- package/public/assets/selectionOutline.fragment-DoKuUf2L.js.gz +0 -0
- package/public/assets/shadowMap.fragment-BEwhnKOg.js +78 -0
- package/public/assets/shadowMap.fragment-BEwhnKOg.js.br +0 -0
- package/public/assets/shadowMap.fragment-BEwhnKOg.js.gz +0 -0
- package/public/assets/shadowMap.fragment-CVar4C4N.js +79 -0
- package/public/assets/shadowMap.fragment-CVar4C4N.js.br +0 -0
- package/public/assets/shadowMap.fragment-CVar4C4N.js.gz +0 -0
- package/public/assets/shadowMap.vertex-ImOoSjTb.js +109 -0
- package/public/assets/shadowMap.vertex-ImOoSjTb.js.br +0 -0
- package/public/assets/shadowMap.vertex-ImOoSjTb.js.gz +0 -0
- package/public/assets/shadowMap.vertex-Q2d15P5z.js +119 -0
- package/public/assets/shadowMap.vertex-Q2d15P5z.js.br +0 -0
- package/public/assets/shadowMap.vertex-Q2d15P5z.js.gz +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-BmxybqRD.js +4 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-BmxybqRD.js.br +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-BmxybqRD.js.gz +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-D6ZvWsNy.js +4 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-D6ZvWsNy.js.br +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-D6ZvWsNy.js.gz +0 -0
- package/public/assets/sharpen.fragment-CI40r28S.js +8 -0
- package/public/assets/sharpen.fragment-CI40r28S.js.br +0 -0
- package/public/assets/sharpen.fragment-CI40r28S.js.gz +0 -0
- package/public/assets/textureMerger.fragment-BGsvQGn5.js +84 -0
- package/public/assets/textureMerger.fragment-BGsvQGn5.js.br +0 -0
- package/public/assets/textureMerger.fragment-BGsvQGn5.js.gz +0 -0
- package/public/assets/textureMerger.fragment-Q7yPwkGt.js +76 -0
- package/public/assets/textureMerger.fragment-Q7yPwkGt.js.br +0 -0
- package/public/assets/textureMerger.fragment-Q7yPwkGt.js.gz +0 -0
- package/public/assets/tgaTextureLoader-D7Pjisvo.js +1 -0
- package/public/assets/tgaTextureLoader-D7Pjisvo.js.br +0 -0
- package/public/assets/tgaTextureLoader-D7Pjisvo.js.gz +0 -0
- package/public/assets/vertexColorMixing-CwuEx4gP.js +20 -0
- package/public/assets/vertexColorMixing-CwuEx4gP.js.br +0 -0
- package/public/assets/vertexColorMixing-CwuEx4gP.js.gz +0 -0
- package/public/assets/vertexColorMixing-DRlcGbEu.js +24 -0
- package/public/assets/vertexColorMixing-DRlcGbEu.js.br +2 -0
- package/public/assets/vertexColorMixing-DRlcGbEu.js.gz +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-0VKaEyya.js +12 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-0VKaEyya.js.br +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-0VKaEyya.js.gz +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-BZLjMggm.js +11 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-BZLjMggm.js.br +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-BZLjMggm.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-6GAsdyvE.js +15 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-6GAsdyvE.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-6GAsdyvE.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-Da_DpfG1.js +13 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-Da_DpfG1.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-Da_DpfG1.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-BdVFX-tC.js +4 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-BdVFX-tC.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-BdVFX-tC.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DO-VIhJn.js +5 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DO-VIhJn.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DO-VIhJn.js.gz +0 -0
- package/public/assets/webAudioBus-BkMWEG1L.js +1 -0
- package/public/assets/webAudioBus-BkMWEG1L.js.br +0 -0
- package/public/assets/webAudioBus-BkMWEG1L.js.gz +0 -0
- package/public/assets/webAudioMainBus-DYcQXAkm.js +1 -0
- package/public/assets/webAudioMainBus-DYcQXAkm.js.br +0 -0
- package/public/assets/webAudioMainBus-DYcQXAkm.js.gz +0 -0
- package/public/assets/workerPool-H9Ji3mCo.js +1 -0
- package/public/assets/workerPool-H9Ji3mCo.js.br +2 -0
- package/public/assets/workerPool-H9Ji3mCo.js.gz +0 -0
- package/public/index.html +21 -0
- package/public/index.html.br +0 -0
- package/public/index.html.gz +0 -0
- package/runtime/editor-control-plane.mjs +5 -0
- package/runtime/runtime-debug-authoring-bridge.mjs +1 -0
- package/worker/editor-service-worker.mjs +27 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import{fr as i}from"./dynamicTexture-Cuby-VOT.js";import"./clipPlaneFragment-Bgl3Usc4.js";const e="glowMapGenerationPixelShader",a=`#if defined(DIFFUSE_ISLINEAR) || defined(EMISSIVE_ISLINEAR)
|
|
2
|
+
#include<helperFunctions>
|
|
3
|
+
#endif
|
|
4
|
+
#ifdef DIFFUSE
|
|
5
|
+
varying vUVDiffuse: vec2f;var diffuseSamplerSampler: sampler;var diffuseSampler: texture_2d<f32>;
|
|
6
|
+
#endif
|
|
7
|
+
#ifdef OPACITY
|
|
8
|
+
varying vUVOpacity: vec2f;var opacitySamplerSampler: sampler;var opacitySampler: texture_2d<f32>;uniform opacityIntensity: f32;
|
|
9
|
+
#endif
|
|
10
|
+
#ifdef EMISSIVE
|
|
11
|
+
varying vUVEmissive: vec2f;var emissiveSamplerSampler: sampler;var emissiveSampler: texture_2d<f32>;
|
|
12
|
+
#endif
|
|
13
|
+
#ifdef VERTEXALPHA
|
|
14
|
+
varying vColor: vec4f;
|
|
15
|
+
#endif
|
|
16
|
+
uniform glowColor: vec4f;uniform glowIntensity: f32;
|
|
17
|
+
#include<clipPlaneFragmentDeclaration>
|
|
18
|
+
#define CUSTOM_FRAGMENT_DEFINITIONS
|
|
19
|
+
@fragment
|
|
20
|
+
fn main(input: FragmentInputs)->FragmentOutputs {
|
|
21
|
+
#include<clipPlaneFragment>
|
|
22
|
+
var finalColor: vec4f=uniforms.glowColor;
|
|
23
|
+
#ifdef DIFFUSE
|
|
24
|
+
var albedoTexture: vec4f=textureSample(diffuseSampler,diffuseSamplerSampler,fragmentInputs.vUVDiffuse);
|
|
25
|
+
#ifdef DIFFUSE_ISLINEAR
|
|
26
|
+
albedoTexture=toGammaSpace(albedoTexture);
|
|
27
|
+
#endif
|
|
28
|
+
#ifdef GLOW
|
|
29
|
+
finalColor=vec4f(finalColor.rgb,finalColor.a*albedoTexture.a);
|
|
30
|
+
#endif
|
|
31
|
+
#ifdef HIGHLIGHT
|
|
32
|
+
finalColor=vec4f(finalColor.rgb,albedoTexture.a);
|
|
33
|
+
#endif
|
|
34
|
+
#endif
|
|
35
|
+
#ifdef OPACITY
|
|
36
|
+
var opacityMap: vec4f=textureSample(opacitySampler,opacitySamplerSampler,fragmentInputs.vUVOpacity);
|
|
37
|
+
#ifdef OPACITYRGB
|
|
38
|
+
finalColor=vec4f(finalColor.rgb,finalColor.a*getLuminance(opacityMap.rgb));
|
|
39
|
+
#else
|
|
40
|
+
finalColor=vec4f(finalColor.rgb,finalColor.a*opacityMap.a);
|
|
41
|
+
#endif
|
|
42
|
+
finalColor=vec4f(finalColor.rgb,finalColor.a*uniforms.opacityIntensity);
|
|
43
|
+
#endif
|
|
44
|
+
#ifdef VERTEXALPHA
|
|
45
|
+
finalColor=vec4f(finalColor.rgb,finalColor.a*fragmentInputs.vColor.a);
|
|
46
|
+
#endif
|
|
47
|
+
#ifdef ALPHATEST
|
|
48
|
+
if (finalColor.a<ALPHATESTVALUE) {discard;}
|
|
49
|
+
#endif
|
|
50
|
+
#ifdef EMISSIVE
|
|
51
|
+
var emissive: vec4f=textureSample(emissiveSampler,emissiveSamplerSampler,fragmentInputs.vUVEmissive);
|
|
52
|
+
#ifdef EMISSIVE_ISLINEAR
|
|
53
|
+
emissive=toGammaSpace(emissive);
|
|
54
|
+
#endif
|
|
55
|
+
fragmentOutputs.color=emissive*finalColor*uniforms.glowIntensity;
|
|
56
|
+
#else
|
|
57
|
+
fragmentOutputs.color=finalColor*uniforms.glowIntensity;
|
|
58
|
+
#endif
|
|
59
|
+
#ifdef HIGHLIGHT
|
|
60
|
+
fragmentOutputs.color=vec4f(fragmentOutputs.color.rgb,uniforms.glowColor.a);
|
|
61
|
+
#endif
|
|
62
|
+
}
|
|
63
|
+
`;i.ShadersStoreWGSL[e]||(i.ShadersStoreWGSL[e]=a);const o={name:e,shader:a};export{o as glowMapGenerationPixelShaderWGSL};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import{fr as i}from"./dynamicTexture-Cuby-VOT.js";import"./clipPlaneVertex-BxK9aoI2.js";import"./morphTargetsVertex-B9xWvV_u.js";import"./instancesDeclaration-B2a0VuuR.js";const e="glowMapGenerationVertexShader",t=`attribute position: vec3f;
|
|
2
|
+
#include<bonesDeclaration>
|
|
3
|
+
#include<bakedVertexAnimationDeclaration>
|
|
4
|
+
#include<morphTargetsVertexGlobalDeclaration>
|
|
5
|
+
#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]
|
|
6
|
+
#include<clipPlaneVertexDeclaration>
|
|
7
|
+
#include<instancesDeclaration>
|
|
8
|
+
uniform viewProjection: mat4x4f;varying vPosition: vec4f;
|
|
9
|
+
#ifdef UV1
|
|
10
|
+
attribute uv: vec2f;
|
|
11
|
+
#endif
|
|
12
|
+
#ifdef UV2
|
|
13
|
+
attribute uv2: vec2f;
|
|
14
|
+
#endif
|
|
15
|
+
#ifdef DIFFUSE
|
|
16
|
+
varying vUVDiffuse: vec2f;uniform diffuseMatrix: mat4x4f;
|
|
17
|
+
#endif
|
|
18
|
+
#ifdef OPACITY
|
|
19
|
+
varying vUVOpacity: vec2f;uniform opacityMatrix: mat4x4f;
|
|
20
|
+
#endif
|
|
21
|
+
#ifdef EMISSIVE
|
|
22
|
+
varying vUVEmissive: vec2f;uniform emissiveMatrix: mat4x4f;
|
|
23
|
+
#endif
|
|
24
|
+
#ifdef VERTEXALPHA
|
|
25
|
+
attribute color: vec4f;varying vColor: vec4f;
|
|
26
|
+
#endif
|
|
27
|
+
#define CUSTOM_VERTEX_DEFINITIONS
|
|
28
|
+
@vertex
|
|
29
|
+
fn main(input : VertexInputs)->FragmentInputs {var positionUpdated: vec3f=vertexInputs.position;
|
|
30
|
+
#ifdef UV1
|
|
31
|
+
var uvUpdated: vec2f=vertexInputs.uv;
|
|
32
|
+
#endif
|
|
33
|
+
#ifdef UV2
|
|
34
|
+
var uv2Updated: vec2f=vertexInputs.uv2;
|
|
35
|
+
#endif
|
|
36
|
+
#include<morphTargetsVertexGlobal>
|
|
37
|
+
#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]
|
|
38
|
+
#include<instancesVertex>
|
|
39
|
+
#include<bonesVertex>
|
|
40
|
+
#include<bakedVertexAnimation>
|
|
41
|
+
var worldPos: vec4f=finalWorld* vec4f(positionUpdated,1.0);
|
|
42
|
+
#ifdef CUBEMAP
|
|
43
|
+
vertexOutputs.vPosition=worldPos;vertexOutputs.position=uniforms.viewProjection*finalWorld* vec4f(vertexInputs.position,1.0);
|
|
44
|
+
#else
|
|
45
|
+
vertexOutputs.vPosition=uniforms.viewProjection*worldPos;vertexOutputs.position=vertexOutputs.vPosition;
|
|
46
|
+
#endif
|
|
47
|
+
#ifdef DIFFUSE
|
|
48
|
+
#ifdef DIFFUSEUV1
|
|
49
|
+
vertexOutputs.vUVDiffuse= (uniforms.diffuseMatrix* vec4f(uvUpdated,1.0,0.0)).xy;
|
|
50
|
+
#endif
|
|
51
|
+
#ifdef DIFFUSEUV2
|
|
52
|
+
vertexOutputs.vUVDiffuse= (uniforms.diffuseMatrix* vec4f(uv2Updated,1.0,0.0)).xy;
|
|
53
|
+
#endif
|
|
54
|
+
#endif
|
|
55
|
+
#ifdef OPACITY
|
|
56
|
+
#ifdef OPACITYUV1
|
|
57
|
+
vertexOutputs.vUVOpacity= (uniforms.opacityMatrix* vec4f(uvUpdated,1.0,0.0)).xy;
|
|
58
|
+
#endif
|
|
59
|
+
#ifdef OPACITYUV2
|
|
60
|
+
vertexOutputs.vUVOpacity= (uniforms.opacityMatrix* vec4f(uv2Updated,1.0,0.0)).xy;
|
|
61
|
+
#endif
|
|
62
|
+
#endif
|
|
63
|
+
#ifdef EMISSIVE
|
|
64
|
+
#ifdef EMISSIVEUV1
|
|
65
|
+
vertexOutputs.vUVEmissive= (uniforms.emissiveMatrix* vec4f(uvUpdated,1.0,0.0)).xy;
|
|
66
|
+
#endif
|
|
67
|
+
#ifdef EMISSIVEUV2
|
|
68
|
+
vertexOutputs.vUVEmissive= (uniforms.emissiveMatrix* vec4f(uv2Updated,1.0,0.0)).xy;
|
|
69
|
+
#endif
|
|
70
|
+
#endif
|
|
71
|
+
#ifdef VERTEXALPHA
|
|
72
|
+
vertexOutputs.vColor=vertexInputs.color;
|
|
73
|
+
#endif
|
|
74
|
+
#include<clipPlaneVertex>
|
|
75
|
+
}`;i.ShadersStoreWGSL[e]||(i.ShadersStoreWGSL[e]=t);const a={name:e,shader:t};export{a as glowMapGenerationVertexShaderWGSL};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import{fr as i}from"./dynamicTexture-Cuby-VOT.js";const e="glowMapGenerationVertexShader",t=`attribute vec3 position;
|
|
2
|
+
#include<bonesDeclaration>
|
|
3
|
+
#include<bakedVertexAnimationDeclaration>
|
|
4
|
+
#include<morphTargetsVertexGlobalDeclaration>
|
|
5
|
+
#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]
|
|
6
|
+
#include<clipPlaneVertexDeclaration>
|
|
7
|
+
#include<instancesDeclaration>
|
|
8
|
+
uniform mat4 viewProjection;varying vec4 vPosition;
|
|
9
|
+
#ifdef UV1
|
|
10
|
+
attribute vec2 uv;
|
|
11
|
+
#endif
|
|
12
|
+
#ifdef UV2
|
|
13
|
+
attribute vec2 uv2;
|
|
14
|
+
#endif
|
|
15
|
+
#ifdef DIFFUSE
|
|
16
|
+
varying vec2 vUVDiffuse;uniform mat4 diffuseMatrix;
|
|
17
|
+
#endif
|
|
18
|
+
#ifdef OPACITY
|
|
19
|
+
varying vec2 vUVOpacity;uniform mat4 opacityMatrix;
|
|
20
|
+
#endif
|
|
21
|
+
#ifdef EMISSIVE
|
|
22
|
+
varying vec2 vUVEmissive;uniform mat4 emissiveMatrix;
|
|
23
|
+
#endif
|
|
24
|
+
#ifdef VERTEXALPHA
|
|
25
|
+
attribute vec4 color;varying vec4 vColor;
|
|
26
|
+
#endif
|
|
27
|
+
#define CUSTOM_VERTEX_DEFINITIONS
|
|
28
|
+
void main(void)
|
|
29
|
+
{vec3 positionUpdated=position;
|
|
30
|
+
#ifdef UV1
|
|
31
|
+
vec2 uvUpdated=uv;
|
|
32
|
+
#endif
|
|
33
|
+
#ifdef UV2
|
|
34
|
+
vec2 uv2Updated=uv2;
|
|
35
|
+
#endif
|
|
36
|
+
#include<morphTargetsVertexGlobal>
|
|
37
|
+
#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]
|
|
38
|
+
#include<instancesVertex>
|
|
39
|
+
#include<bonesVertex>
|
|
40
|
+
#include<bakedVertexAnimation>
|
|
41
|
+
vec4 worldPos=finalWorld*vec4(positionUpdated,1.0);
|
|
42
|
+
#ifdef CUBEMAP
|
|
43
|
+
vPosition=worldPos;gl_Position=viewProjection*finalWorld*vec4(position,1.0);
|
|
44
|
+
#else
|
|
45
|
+
vPosition=viewProjection*worldPos;gl_Position=vPosition;
|
|
46
|
+
#endif
|
|
47
|
+
#ifdef DIFFUSE
|
|
48
|
+
#ifdef DIFFUSEUV1
|
|
49
|
+
vUVDiffuse=vec2(diffuseMatrix*vec4(uvUpdated,1.0,0.0));
|
|
50
|
+
#endif
|
|
51
|
+
#ifdef DIFFUSEUV2
|
|
52
|
+
vUVDiffuse=vec2(diffuseMatrix*vec4(uv2Updated,1.0,0.0));
|
|
53
|
+
#endif
|
|
54
|
+
#endif
|
|
55
|
+
#ifdef OPACITY
|
|
56
|
+
#ifdef OPACITYUV1
|
|
57
|
+
vUVOpacity=vec2(opacityMatrix*vec4(uvUpdated,1.0,0.0));
|
|
58
|
+
#endif
|
|
59
|
+
#ifdef OPACITYUV2
|
|
60
|
+
vUVOpacity=vec2(opacityMatrix*vec4(uv2Updated,1.0,0.0));
|
|
61
|
+
#endif
|
|
62
|
+
#endif
|
|
63
|
+
#ifdef EMISSIVE
|
|
64
|
+
#ifdef EMISSIVEUV1
|
|
65
|
+
vUVEmissive=vec2(emissiveMatrix*vec4(uvUpdated,1.0,0.0));
|
|
66
|
+
#endif
|
|
67
|
+
#ifdef EMISSIVEUV2
|
|
68
|
+
vUVEmissive=vec2(emissiveMatrix*vec4(uv2Updated,1.0,0.0));
|
|
69
|
+
#endif
|
|
70
|
+
#endif
|
|
71
|
+
#ifdef VERTEXALPHA
|
|
72
|
+
vColor=color;
|
|
73
|
+
#endif
|
|
74
|
+
#include<clipPlaneVertex>
|
|
75
|
+
}`;i.ShadersStore[e]||(i.ShadersStore[e]=t);const n={name:e,shader:t};export{n as glowMapGenerationVertexShader};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
! ��
|
|
2
|
+
^̵!�t�wj3]�w�E����쿫�s̙�#��l����'Y���{ �a�RE��h������v+�"��(�PשF� �j�m>z�<�^9-���Q:�{-�檌��p��f�,J���381���JS�n�5���H��#M��4'zwv�.� ��&�b6G����.R��
|
|
3
|
+
9H�[�Ng�l#G-��M�J��@ѣ~�r�1�������d�O̓��7��=n�O�y�F���~@p�m��b�ލ4#�|s3*�}M�K�7��V�Wq�ב��"�$fó��C�|.���l&�L$[�����~������蘇���^D�7VAq�X���p��Wi�����Z=�K���\s�h��3�
|
|
Binary file
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import{fr as o}from"./dynamicTexture-Cuby-VOT.js";const e="glowMapMergePixelShader",r=`varying vec2 vUV;uniform sampler2D textureSampler;
|
|
2
|
+
#ifdef EMISSIVE
|
|
3
|
+
uniform sampler2D textureSampler2;
|
|
4
|
+
#endif
|
|
5
|
+
uniform float offset;
|
|
6
|
+
#define CUSTOM_FRAGMENT_DEFINITIONS
|
|
7
|
+
void main(void) {
|
|
8
|
+
#define CUSTOM_FRAGMENT_MAIN_BEGIN
|
|
9
|
+
vec4 baseColor=texture2D(textureSampler,vUV);
|
|
10
|
+
#ifdef EMISSIVE
|
|
11
|
+
baseColor+=texture2D(textureSampler2,vUV);baseColor*=offset;
|
|
12
|
+
#else
|
|
13
|
+
baseColor.a=abs(offset-baseColor.a);
|
|
14
|
+
#ifdef STROKE
|
|
15
|
+
float alpha=smoothstep(.0,.1,baseColor.a);baseColor.a=alpha;baseColor.rgb=baseColor.rgb*alpha;
|
|
16
|
+
#endif
|
|
17
|
+
#endif
|
|
18
|
+
#if LDR
|
|
19
|
+
baseColor=clamp(baseColor,0.,1.0);
|
|
20
|
+
#endif
|
|
21
|
+
gl_FragColor=baseColor;
|
|
22
|
+
#define CUSTOM_FRAGMENT_MAIN_END
|
|
23
|
+
}`;o.ShadersStore[e]||(o.ShadersStore[e]=r);const l={name:e,shader:r};export{l as glowMapMergePixelShader};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import{fr as r}from"./dynamicTexture-Cuby-VOT.js";const e="glowMapMergePixelShader",a=`varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;
|
|
2
|
+
#ifdef EMISSIVE
|
|
3
|
+
var textureSampler2Sampler: sampler;var textureSampler2: texture_2d<f32>;
|
|
4
|
+
#endif
|
|
5
|
+
uniform offset: f32;
|
|
6
|
+
#define CUSTOM_FRAGMENT_DEFINITIONS
|
|
7
|
+
@fragment
|
|
8
|
+
fn main(input: FragmentInputs)->FragmentOutputs {
|
|
9
|
+
#define CUSTOM_FRAGMENT_MAIN_BEGIN
|
|
10
|
+
var baseColor: vec4f=textureSample(textureSampler,textureSamplerSampler,input.vUV);
|
|
11
|
+
#ifdef EMISSIVE
|
|
12
|
+
baseColor+=textureSample(textureSampler2,textureSampler2Sampler,input.vUV);baseColor*=uniforms.offset;
|
|
13
|
+
#else
|
|
14
|
+
baseColor=vec4f(baseColor.rgb,abs(uniforms.offset-baseColor.a));
|
|
15
|
+
#ifdef STROKE
|
|
16
|
+
var alpha: f32=smoothstep(.0,.1,baseColor.a);baseColor=vec4f(baseColor.rgb*alpha,alpha);
|
|
17
|
+
#endif
|
|
18
|
+
#endif
|
|
19
|
+
#if LDR
|
|
20
|
+
baseColor=clamp(baseColor,vec4f(0.),vec4f(1.0));
|
|
21
|
+
#endif
|
|
22
|
+
fragmentOutputs.color=baseColor;
|
|
23
|
+
#define CUSTOM_FRAGMENT_MAIN_END
|
|
24
|
+
}
|
|
25
|
+
`;r.ShadersStoreWGSL[e]||(r.ShadersStoreWGSL[e]=a);const o={name:e,shader:a};export{o as glowMapMergePixelShaderWGSL};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{fr as o}from"./dynamicTexture-Cuby-VOT.js";const e="glowMapMergeVertexShader",r=`attribute vec2 position;varying vec2 vUV;const vec2 madd=vec2(0.5,0.5);
|
|
2
|
+
#define CUSTOM_VERTEX_DEFINITIONS
|
|
3
|
+
void main(void) {
|
|
4
|
+
#define CUSTOM_VERTEX_MAIN_BEGIN
|
|
5
|
+
vUV=position*madd+madd;gl_Position=vec4(position,0.0,1.0);
|
|
6
|
+
#define CUSTOM_VERTEX_MAIN_END
|
|
7
|
+
}`;o.ShadersStore[e]||(o.ShadersStore[e]=r);const t={name:e,shader:r};export{t as glowMapMergeVertexShader};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{fr as t}from"./dynamicTexture-Cuby-VOT.js";const e="glowMapMergeVertexShader",r=`attribute position: vec2f;varying vUV: vec2f;
|
|
2
|
+
#define CUSTOM_VERTEX_DEFINITIONS
|
|
3
|
+
@vertex
|
|
4
|
+
fn main(input : VertexInputs)->FragmentInputs {const madd: vec2f= vec2f(0.5,0.5);
|
|
5
|
+
#define CUSTOM_VERTEX_MAIN_BEGIN
|
|
6
|
+
vertexOutputs.vUV=vertexInputs.position*madd+madd;vertexOutputs.position= vec4f(vertexInputs.position,0.0,1.0);
|
|
7
|
+
#define CUSTOM_VERTEX_MAIN_END
|
|
8
|
+
}`;t.ShadersStoreWGSL[e]||(t.ShadersStoreWGSL[e]=r);const o={name:e,shader:r};export{o as glowMapMergeVertexShaderWGSL};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{fr as e}from"./dynamicTexture-Cuby-VOT.js";const r="grainPixelShader",a=`#include<helperFunctions>
|
|
2
|
+
uniform sampler2D textureSampler;
|
|
3
|
+
uniform float intensity;uniform float animatedSeed;varying vec2 vUV;
|
|
4
|
+
#define CUSTOM_FRAGMENT_DEFINITIONS
|
|
5
|
+
void main(void)
|
|
6
|
+
{gl_FragColor=texture2D(textureSampler,vUV);vec2 seed=vUV*(animatedSeed);float grain=dither(seed,intensity);float lum=getLuminance(gl_FragColor.rgb);float grainAmount=(cos(-PI+(lum*PI*2.))+1.)/2.;gl_FragColor.rgb+=grain*grainAmount;gl_FragColor.rgb=max(gl_FragColor.rgb,0.0);}`;e.ShadersStore[r]||(e.ShadersStore[r]=a);const t={name:r,shader:a};export{t as grainPixelShader};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{fr as r}from"./dynamicTexture-Cuby-VOT.js";const e="grainPixelShader",t=`#include<helperFunctions>
|
|
2
|
+
varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform intensity: f32;uniform animatedSeed: f32;
|
|
3
|
+
#define CUSTOM_FRAGMENT_DEFINITIONS
|
|
4
|
+
@fragment
|
|
5
|
+
fn main(input: FragmentInputs)->FragmentOutputs {fragmentOutputs.color=textureSample(textureSampler,textureSamplerSampler,input.vUV);var seed: vec2f=input.vUV*uniforms.animatedSeed;var grain: f32=dither(seed,uniforms.intensity);var lum: f32=getLuminance(fragmentOutputs.color.rgb);var grainAmount: f32=(cos(-PI+(lum*PI*2.))+1.)/2.;fragmentOutputs.color=vec4f(fragmentOutputs.color.rgb+grain*grainAmount,fragmentOutputs.color.a);fragmentOutputs.color=vec4f(max(fragmentOutputs.color.rgb,vec3f(0.0)),fragmentOutputs.color.a);}`;r.ShadersStoreWGSL[e]||(r.ShadersStoreWGSL[e]=t);const n={name:e,shader:t};export{n as grainPixelShaderWGSL};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import{fr as e}from"./dynamicTexture-Cuby-VOT.js";import"./meshUboDeclaration-Uj1CsoJP.js";const f="pbrUboDeclaration",a=`uniform vAlbedoInfos: vec2f;uniform vBaseWeightInfos: vec2f;uniform vBaseDiffuseRoughnessInfos: vec2f;uniform vAmbientInfos: vec4f;uniform vOpacityInfos: vec2f;uniform vEmissiveInfos: vec2f;uniform vLightmapInfos: vec2f;uniform vReflectivityInfos: vec3f;uniform vMicroSurfaceSamplerInfos: vec2f;uniform vBumpInfos: vec3f;uniform albedoMatrix: mat4x4f;uniform baseWeightMatrix: mat4x4f;uniform baseDiffuseRoughnessMatrix: mat4x4f;uniform ambientMatrix: mat4x4f;uniform opacityMatrix: mat4x4f;uniform emissiveMatrix: mat4x4f;uniform lightmapMatrix: mat4x4f;uniform reflectivityMatrix: mat4x4f;uniform microSurfaceSamplerMatrix: mat4x4f;uniform bumpMatrix: mat4x4f;uniform vTangentSpaceParams: vec2f;uniform vAlbedoColor: vec4f;uniform baseWeight: f32;uniform baseDiffuseRoughness: f32;uniform vLightingIntensity: vec4f;uniform pointSize: f32;uniform vReflectivityColor: vec4f;uniform vEmissiveColor: vec3f;uniform vAmbientColor: vec3f;uniform vDebugMode: vec2f;uniform vMetallicReflectanceFactors: vec4f;uniform vMetallicReflectanceInfos: vec2f;uniform metallicReflectanceMatrix: mat4x4f;uniform vReflectanceInfos: vec2f;uniform reflectanceMatrix: mat4x4f;uniform cameraInfo: vec4f;uniform vReflectionInfos: vec2f;uniform reflectionMatrix: mat4x4f;uniform vReflectionMicrosurfaceInfos: vec3f;uniform vReflectionPosition: vec3f;uniform vReflectionSize: vec3f;uniform vReflectionFilteringInfo: vec2f;uniform vReflectionDominantDirection: vec3f;uniform vReflectionColor: vec3f;uniform vSphericalL00: vec3f;uniform vSphericalL1_1: vec3f;uniform vSphericalL10: vec3f;uniform vSphericalL11: vec3f;uniform vSphericalL2_2: vec3f;uniform vSphericalL2_1: vec3f;uniform vSphericalL20: vec3f;uniform vSphericalL21: vec3f;uniform vSphericalL22: vec3f;uniform vSphericalX: vec3f;uniform vSphericalY: vec3f;uniform vSphericalZ: vec3f;uniform vSphericalXX_ZZ: vec3f;uniform vSphericalYY_ZZ: vec3f;uniform vSphericalZZ: vec3f;uniform vSphericalXY: vec3f;uniform vSphericalYZ: vec3f;uniform vSphericalZX: vec3f;
|
|
2
|
+
#define ADDITIONAL_UBO_DECLARATION
|
|
3
|
+
#include<sceneUboDeclaration>
|
|
4
|
+
#include<meshUboDeclaration>
|
|
5
|
+
`;e.IncludesShadersStoreWGSL[f]||(e.IncludesShadersStoreWGSL[f]=a);const r="pbrBRDFFunctions",o=`#define FRESNEL_MAXIMUM_ON_ROUGH 0.25
|
|
6
|
+
#define BRDF_DIFFUSE_MODEL_EON 0
|
|
7
|
+
#define BRDF_DIFFUSE_MODEL_BURLEY 1
|
|
8
|
+
#define BRDF_DIFFUSE_MODEL_LAMBERT 2
|
|
9
|
+
#define BRDF_DIFFUSE_MODEL_LEGACY 3
|
|
10
|
+
#define DIELECTRIC_SPECULAR_MODEL_GLTF 0
|
|
11
|
+
#define DIELECTRIC_SPECULAR_MODEL_OPENPBR 1
|
|
12
|
+
#define CONDUCTOR_SPECULAR_MODEL_GLTF 0
|
|
13
|
+
#define CONDUCTOR_SPECULAR_MODEL_OPENPBR 1
|
|
14
|
+
#if !defined(PBR_VERTEX_SHADER) && !defined(OPENPBR_VERTEX_SHADER)
|
|
15
|
+
#ifdef MS_BRDF_ENERGY_CONSERVATION
|
|
16
|
+
fn getEnergyConservationFactor(specularEnvironmentR0: vec3f,environmentBrdf: vec3f)->vec3f {return 1.0+specularEnvironmentR0*(1.0/environmentBrdf.y-1.0);}
|
|
17
|
+
#endif
|
|
18
|
+
#if CONDUCTOR_SPECULAR_MODEL==CONDUCTOR_SPECULAR_MODEL_OPENPBR
|
|
19
|
+
fn getF82Specular(NdotV: f32,F0: vec3f,edgeTint: vec3f,roughness: f32)->vec3f {const cos_theta_max: f32=0.142857143;
|
|
20
|
+
const one_minus_cos_theta_max_to_the_fifth: f32=0.462664366;
|
|
21
|
+
const one_minus_cos_theta_max_to_the_sixth: f32=0.396569457;
|
|
22
|
+
let white_minus_F0: vec3f=vec3f(1.0f)-F0;let b_numerator: vec3f=(F0+white_minus_F0*one_minus_cos_theta_max_to_the_fifth)*(vec3f(1.0)-edgeTint);const b_denominator: f32=cos_theta_max*one_minus_cos_theta_max_to_the_sixth;const b_denominator_reciprocal: f32=1.0f/b_denominator;let b: vec3f=b_numerator*b_denominator_reciprocal;
|
|
23
|
+
let cos_theta: f32=max(roughness,NdotV);let one_minus_cos_theta: f32=1.0-cos_theta;let offset_from_F0: vec3f=(white_minus_F0-b*cos_theta*one_minus_cos_theta)*pow(one_minus_cos_theta,5.0f);return clamp(F0+offset_from_F0,vec3f(0.0f),vec3f(1.0f));}
|
|
24
|
+
#endif
|
|
25
|
+
#ifdef FUZZENVIRONMENTBRDF
|
|
26
|
+
fn getFuzzBRDFLookup(NdotV: f32,perceptualRoughness: f32)->vec3f {let UV: vec2f=vec2f(perceptualRoughness,NdotV);var brdfLookup: vec4f=textureSample(environmentFuzzBrdfSampler,environmentFuzzBrdfSamplerSampler,UV);const RiRange: vec2f=vec2f(0.0f,0.75f);const ARange: vec2f=vec2f(0.005f,0.88f);const BRange: vec2f=vec2f(-0.18f,0.002f);brdfLookup.r=mix(ARange.x, ARange.y, brdfLookup.r);brdfLookup.g=mix(BRange.x, BRange.y, brdfLookup.g);brdfLookup.b=mix(RiRange.x,RiRange.y,brdfLookup.b);return brdfLookup.rgb;}
|
|
27
|
+
#endif
|
|
28
|
+
#ifdef ENVIRONMENTBRDF
|
|
29
|
+
fn getBRDFLookup(NdotV: f32,perceptualRoughness: f32)->vec3f {var UV: vec2f= vec2f(NdotV,perceptualRoughness);var brdfLookup: vec4f= textureSample(environmentBrdfSampler,environmentBrdfSamplerSampler,UV);
|
|
30
|
+
#ifdef ENVIRONMENTBRDF_RGBD
|
|
31
|
+
brdfLookup=vec4f(fromRGBD(brdfLookup.rgba),brdfLookup.a);
|
|
32
|
+
#endif
|
|
33
|
+
return brdfLookup.rgb;}
|
|
34
|
+
fn getReflectanceFromBRDFWithEnvLookup(specularEnvironmentR0: vec3f,specularEnvironmentR90: vec3f,environmentBrdf: vec3f)->vec3f {
|
|
35
|
+
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
36
|
+
var reflectance: vec3f=(specularEnvironmentR90-specularEnvironmentR0)*environmentBrdf.x+specularEnvironmentR0*environmentBrdf.y;
|
|
37
|
+
#else
|
|
38
|
+
var reflectance: vec3f=specularEnvironmentR0*environmentBrdf.x+specularEnvironmentR90*environmentBrdf.y;
|
|
39
|
+
#endif
|
|
40
|
+
return reflectance;}
|
|
41
|
+
fn getReflectanceFromBRDFLookup(specularEnvironmentR0: vec3f,environmentBrdf: vec3f)->vec3f {
|
|
42
|
+
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
43
|
+
var reflectance: vec3f=mix(environmentBrdf.xxx,environmentBrdf.yyy,specularEnvironmentR0);
|
|
44
|
+
#else
|
|
45
|
+
var reflectance: vec3f=specularEnvironmentR0*environmentBrdf.x+environmentBrdf.y;
|
|
46
|
+
#endif
|
|
47
|
+
return reflectance;}
|
|
48
|
+
#endif
|
|
49
|
+
/* NOT USED
|
|
50
|
+
#if defined(SHEEN) && defined(SHEEN_SOFTER)
|
|
51
|
+
fn getBRDFLookupCharlieSheen(NdotV: f32,perceptualRoughness: f32)->f32
|
|
52
|
+
{var c: f32=1.0-NdotV;var c3: f32=c*c*c;return 0.65584461*c3+1.0/(4.16526551+exp(-7.97291361*perceptualRoughness+6.33516894));}
|
|
53
|
+
#endif
|
|
54
|
+
*/
|
|
55
|
+
#if !defined(ENVIRONMENTBRDF) || defined(REFLECTIONMAP_SKYBOX) || defined(ALPHAFRESNEL)
|
|
56
|
+
fn getReflectanceFromAnalyticalBRDFLookup_Jones(VdotN: f32,reflectance0: vec3f,reflectance90: vec3f,smoothness: f32)->vec3f
|
|
57
|
+
{var weight: f32=mix(FRESNEL_MAXIMUM_ON_ROUGH,1.0,smoothness);return reflectance0+weight*(reflectance90-reflectance0)*pow5(saturate(1.0-VdotN));}
|
|
58
|
+
#endif
|
|
59
|
+
#if defined(SHEEN) && defined(ENVIRONMENTBRDF)
|
|
60
|
+
/**
|
|
61
|
+
* The sheen BRDF not containing F can be easily stored in the blue channel of the BRDF texture.
|
|
62
|
+
* The blue channel contains DCharlie*VAshikhmin*NdotL as a lokkup table
|
|
63
|
+
*/
|
|
64
|
+
fn getSheenReflectanceFromBRDFLookup(reflectance0: vec3f,environmentBrdf: vec3f)->vec3f {var sheenEnvironmentReflectance: vec3f=reflectance0*environmentBrdf.b;return sheenEnvironmentReflectance;}
|
|
65
|
+
#endif
|
|
66
|
+
fn fresnelSchlickGGXVec3(VdotH: f32,reflectance0: vec3f,reflectance90: vec3f)->vec3f
|
|
67
|
+
{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}
|
|
68
|
+
fn fresnelSchlickGGX(VdotH: f32,reflectance0: f32,reflectance90: f32)->f32
|
|
69
|
+
{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}
|
|
70
|
+
#ifdef CLEARCOAT
|
|
71
|
+
fn getR0RemappedForClearCoat(f0: vec3f)->vec3f {
|
|
72
|
+
#ifdef CLEARCOAT_DEFAULTIOR
|
|
73
|
+
#ifdef MOBILE
|
|
74
|
+
return saturateVec3(f0*(f0*0.526868+0.529324)-0.0482256);
|
|
75
|
+
#else
|
|
76
|
+
return saturateVec3(f0*(f0*(0.941892-0.263008*f0)+0.346479)-0.0285998);
|
|
77
|
+
#endif
|
|
78
|
+
#else
|
|
79
|
+
var s: vec3f=sqrt(f0);var t: vec3f=(uniforms.vClearCoatRefractionParams.z+uniforms.vClearCoatRefractionParams.w*s)/(uniforms.vClearCoatRefractionParams.w+uniforms.vClearCoatRefractionParams.z*s);return squareVec3(t);
|
|
80
|
+
#endif
|
|
81
|
+
}
|
|
82
|
+
#endif
|
|
83
|
+
#ifdef IRIDESCENCE
|
|
84
|
+
const XYZ_TO_REC709: mat3x3f= mat3x3f(
|
|
85
|
+
3.2404542,-0.9692660, 0.0556434,
|
|
86
|
+
-1.5371385, 1.8760108,-0.2040259,
|
|
87
|
+
-0.4985314, 0.0415560, 1.0572252
|
|
88
|
+
);fn getIORTfromAirToSurfaceR0(f0: vec3f)->vec3f {var sqrtF0: vec3f=sqrt(f0);return (1.+sqrtF0)/(1.-sqrtF0);}
|
|
89
|
+
fn getR0fromIORsVec3(iorT: vec3f,iorI: f32)->vec3f {return squareVec3((iorT- vec3f(iorI))/(iorT+ vec3f(iorI)));}
|
|
90
|
+
fn getR0fromIORs(iorT: f32,iorI: f32)->f32 {return square((iorT-iorI)/(iorT+iorI));}
|
|
91
|
+
fn evalSensitivity(opd: f32,shift: vec3f)->vec3f {var phase: f32=2.0*PI*opd*1.0e-9;const val: vec3f= vec3f(5.4856e-13,4.4201e-13,5.2481e-13);const pos: vec3f= vec3f(1.6810e+06,1.7953e+06,2.2084e+06);const vr: vec3f= vec3f(4.3278e+09,9.3046e+09,6.6121e+09);var xyz: vec3f=val*sqrt(2.0*PI*vr)*cos(pos*phase+shift)*exp(-square(phase)*vr);xyz.x+=9.7470e-14*sqrt(2.0*PI*4.5282e+09)*cos(2.2399e+06*phase+shift[0])*exp(-4.5282e+09*square(phase));xyz/=1.0685e-7;var srgb: vec3f=XYZ_TO_REC709*xyz;return srgb;}
|
|
92
|
+
fn evalIridescence(outsideIOR: f32,eta2: f32,cosTheta1: f32,thinFilmThickness: f32,baseF0: vec3f)->vec3f {var I: vec3f= vec3f(1.0);var iridescenceIOR: f32=mix(outsideIOR,eta2,smoothstep(0.0,0.03,thinFilmThickness));var sinTheta2Sq: f32=square(outsideIOR/iridescenceIOR)*(1.0-square(cosTheta1));var cosTheta2Sq: f32=1.0-sinTheta2Sq;if (cosTheta2Sq<0.0) {return I;}
|
|
93
|
+
var cosTheta2: f32=sqrt(cosTheta2Sq);var R0: f32=getR0fromIORs(iridescenceIOR,outsideIOR);var R12: f32=fresnelSchlickGGX(cosTheta1,R0,1.);var R21: f32=R12;var T121: f32=1.0-R12;var phi12: f32=0.0;if (iridescenceIOR<outsideIOR) {phi12=PI;}
|
|
94
|
+
var phi21: f32=PI-phi12;var baseIOR: vec3f=getIORTfromAirToSurfaceR0(clamp(baseF0,vec3f(0.0),vec3f(0.9999)));
|
|
95
|
+
var R1: vec3f=getR0fromIORsVec3(baseIOR,iridescenceIOR);var R23: vec3f=fresnelSchlickGGXVec3(cosTheta2,R1, vec3f(1.));var phi23: vec3f= vec3f(0.0);if (baseIOR[0]<iridescenceIOR) {phi23[0]=PI;}
|
|
96
|
+
if (baseIOR[1]<iridescenceIOR) {phi23[1]=PI;}
|
|
97
|
+
if (baseIOR[2]<iridescenceIOR) {phi23[2]=PI;}
|
|
98
|
+
var opd: f32=2.0*iridescenceIOR*thinFilmThickness*cosTheta2;var phi: vec3f= vec3f(phi21)+phi23;var R123: vec3f=clamp(R12*R23,vec3f(1e-5),vec3f(0.9999));var r123: vec3f=sqrt(R123);var Rs: vec3f=(T121*T121)*R23/( vec3f(1.0)-R123);var C0: vec3f=R12+Rs;I=C0;var Cm: vec3f=Rs-T121;for (var m: i32=1; m<=2; m++)
|
|
99
|
+
{Cm*=r123;var Sm: vec3f=2.0*evalSensitivity( f32(m)*opd, f32(m)*phi);I+=Cm*Sm;}
|
|
100
|
+
return max(I, vec3f(0.0));}
|
|
101
|
+
#endif
|
|
102
|
+
fn normalDistributionFunction_TrowbridgeReitzGGX(NdotH: f32,alphaG: f32)->f32
|
|
103
|
+
{var a2: f32=alphaG*alphaG;var d: f32=NdotH*NdotH*(a2-1.0)+1.0;return a2/(PI*d*d);}
|
|
104
|
+
#ifdef SHEEN
|
|
105
|
+
fn normalDistributionFunction_CharlieSheen(NdotH: f32,alphaG: f32)->f32
|
|
106
|
+
{var invR: f32=1./alphaG;var cos2h: f32=NdotH*NdotH;var sin2h: f32=1.-cos2h;return (2.+invR)*pow(sin2h,invR*.5)/(2.*PI);}
|
|
107
|
+
#endif
|
|
108
|
+
#ifdef ANISOTROPIC
|
|
109
|
+
fn normalDistributionFunction_BurleyGGX_Anisotropic(NdotH: f32,TdotH: f32,BdotH: f32,alphaTB: vec2f)->f32 {var a2: f32=alphaTB.x*alphaTB.y;var v: vec3f= vec3f(alphaTB.y*TdotH,alphaTB.x *BdotH,a2*NdotH);var v2: f32=dot(v,v);var w2: f32=a2/v2;return a2*w2*w2*RECIPROCAL_PI;}
|
|
110
|
+
#endif
|
|
111
|
+
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
112
|
+
fn smithVisibility_GGXCorrelated(NdotL: f32,NdotV: f32,alphaG: f32)->f32 {
|
|
113
|
+
#ifdef MOBILE
|
|
114
|
+
var GGXV: f32=NdotL*(NdotV*(1.0-alphaG)+alphaG);var GGXL: f32=NdotV*(NdotL*(1.0-alphaG)+alphaG);return 0.5/(GGXV+GGXL);
|
|
115
|
+
#else
|
|
116
|
+
var a2: f32=alphaG*alphaG;var GGXV: f32=NdotL*sqrt(NdotV*(NdotV-a2*NdotV)+a2);var GGXL: f32=NdotV*sqrt(NdotL*(NdotL-a2*NdotL)+a2);return 0.5/(GGXV+GGXL);
|
|
117
|
+
#endif
|
|
118
|
+
}
|
|
119
|
+
#else
|
|
120
|
+
fn smithVisibilityG1_TrowbridgeReitzGGXFast(dot: f32,alphaG: f32)->f32
|
|
121
|
+
{
|
|
122
|
+
#ifdef MOBILE
|
|
123
|
+
return 1.0/(dot+alphaG+(1.0-alphaG)*dot ));
|
|
124
|
+
#else
|
|
125
|
+
var alphaSquared: f32=alphaG*alphaG;return 1.0/(dot+sqrt(alphaSquared+(1.0-alphaSquared)*dot*dot));
|
|
126
|
+
#endif
|
|
127
|
+
}
|
|
128
|
+
fn smithVisibility_TrowbridgeReitzGGXFast(NdotL: f32,NdotV: f32,alphaG: f32)->f32
|
|
129
|
+
{var visibility: f32=smithVisibilityG1_TrowbridgeReitzGGXFast(NdotL,alphaG)*smithVisibilityG1_TrowbridgeReitzGGXFast(NdotV,alphaG);return visibility;}
|
|
130
|
+
#endif
|
|
131
|
+
#ifdef ANISOTROPIC
|
|
132
|
+
fn smithVisibility_GGXCorrelated_Anisotropic(NdotL: f32,NdotV: f32,TdotV: f32,BdotV: f32,TdotL: f32,BdotL: f32,alphaTB: vec2f)->f32 {var lambdaV: f32=NdotL*length( vec3f(alphaTB.x*TdotV,alphaTB.y*BdotV,NdotV));var lambdaL: f32=NdotV*length( vec3f(alphaTB.x*TdotL,alphaTB.y*BdotL,NdotL));var v: f32=0.5/(lambdaV+lambdaL);return v;}
|
|
133
|
+
#endif
|
|
134
|
+
#ifdef CLEARCOAT
|
|
135
|
+
fn visibility_Kelemen(VdotH: f32)->f32 {return 0.25/(VdotH*VdotH); }
|
|
136
|
+
#endif
|
|
137
|
+
#ifdef SHEEN
|
|
138
|
+
fn visibility_Ashikhmin(NdotL: f32,NdotV: f32)->f32
|
|
139
|
+
{return 1./(4.*(NdotL+NdotV-NdotL*NdotV));}
|
|
140
|
+
/* NOT USED
|
|
141
|
+
#ifdef SHEEN_SOFTER
|
|
142
|
+
fn l(x: f32,alphaG: f32)->f32
|
|
143
|
+
{var oneMinusAlphaSq: f32=(1.0-alphaG)*(1.0-alphaG);var a: f32=mix(21.5473,25.3245,oneMinusAlphaSq);var b: f32=mix(3.82987,3.32435,oneMinusAlphaSq);var c: f32=mix(0.19823,0.16801,oneMinusAlphaSq);var d: f32=mix(-1.97760,-1.27393,oneMinusAlphaSq);var e: f32=mix(-4.32054,-4.85967,oneMinusAlphaSq);return a/(1.0+b*pow(x,c))+d*x+e;}
|
|
144
|
+
fn lambdaSheen(cosTheta: f32,alphaG: f32)->f32
|
|
145
|
+
{return abs(cosTheta)<0.5 ? exp(l(cosTheta,alphaG)) : exp(2.0*l(0.5,alphaG)-l(1.0-cosTheta,alphaG));}
|
|
146
|
+
fn visibility_CharlieSheen(NdotL: f32,NdotV: f32,alphaG: f32)->f32
|
|
147
|
+
{var G: f32=1.0/(1.0+lambdaSheen(NdotV,alphaG)+lambdaSheen(NdotL,alphaG));return G/(4.0*NdotV*NdotL);}
|
|
148
|
+
#endif
|
|
149
|
+
*/
|
|
150
|
+
#endif
|
|
151
|
+
const constant1_FON: f32=0.5f-2.0f/(3.0f*PI);const constant2_FON: f32=2.0f/3.0f-28.0f/(15.0f*PI);fn E_FON_approx(mu: f32,roughness: f32)->f32
|
|
152
|
+
{var sigma: f32=roughness;
|
|
153
|
+
var mucomp: f32=1.0f-mu;var mucomp2: f32=mucomp*mucomp;const Gcoeffs: mat2x2f=mat2x2f(0.0571085289f,-0.332181442f,
|
|
154
|
+
0.491881867f,0.0714429953f);var GoverPi: f32=dot(Gcoeffs*vec2f(mucomp,mucomp2),vec2f(1.0f,mucomp2));return (1.0f+sigma*GoverPi)/(1.0f+constant1_FON*sigma);}
|
|
155
|
+
fn diffuseBRDF_EON(albedo: vec3f,roughness: f32,NdotL: f32,NdotV: f32,LdotV: f32)->vec3f
|
|
156
|
+
{var rho: vec3f=albedo;var sigma: f32=roughness;
|
|
157
|
+
var mu_i: f32=NdotL;
|
|
158
|
+
var mu_o: f32=NdotV;
|
|
159
|
+
var s: f32=LdotV-mu_i*mu_o;
|
|
160
|
+
var sovertF: f32=select(s,s/max(mu_i,mu_o),s>0.0f);
|
|
161
|
+
var AF: f32=1.0f/(1.0f+constant1_FON*sigma);
|
|
162
|
+
var f_ss: vec3f=(rho*RECIPROCAL_PI)*AF*(1.0f+sigma*sovertF);
|
|
163
|
+
var EFo: f32=E_FON_approx(mu_o,sigma);
|
|
164
|
+
var EFi: f32=E_FON_approx(mu_i,sigma);
|
|
165
|
+
var avgEF: f32=AF*(1.0f+constant2_FON*sigma);
|
|
166
|
+
var rho_ms: vec3f=(rho*rho)*avgEF/(vec3f(1.0f)-rho*(1.0f-avgEF));const eps: f32=1.0e-7f;var f_ms: vec3f=(rho_ms*RECIPROCAL_PI)*max(eps,1.0f-EFo)
|
|
167
|
+
* max(eps,1.0f-EFi)
|
|
168
|
+
/ max(eps,1.0f-avgEF);return (f_ss+f_ms);}
|
|
169
|
+
fn diffuseBRDF_Burley(NdotL: f32,NdotV: f32,VdotH: f32,roughness: f32)->f32 {var diffuseFresnelNV: f32=pow5(saturateEps(1.0-NdotL));var diffuseFresnelNL: f32=pow5(saturateEps(1.0-NdotV));var diffuseFresnel90: f32=0.5+2.0*VdotH*VdotH*roughness;var fresnel: f32 =
|
|
170
|
+
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNL) *
|
|
171
|
+
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNV);return fresnel/PI;}
|
|
172
|
+
#ifdef SS_TRANSLUCENCY
|
|
173
|
+
fn transmittanceBRDF_Burley(tintColor: vec3f,diffusionDistance: vec3f,thickness: f32)->vec3f {var S: vec3f=1./maxEpsVec3(diffusionDistance);var temp: vec3f=exp((-0.333333333*thickness)*S);return tintColor.rgb*0.25*(temp*temp*temp+3.0*temp);}
|
|
174
|
+
fn computeWrappedDiffuseNdotL(NdotL: f32,w: f32)->f32 {var t: f32=1.0+w;var invt2: f32=1.0/(t*t);return saturate((NdotL+w)*invt2);}
|
|
175
|
+
#endif
|
|
176
|
+
#endif
|
|
177
|
+
`;e.IncludesShadersStoreWGSL[r]||(e.IncludesShadersStoreWGSL[r]=o);const n="harmonicsFunctions",i=`#ifdef USESPHERICALFROMREFLECTIONMAP
|
|
178
|
+
#ifdef SPHERICAL_HARMONICS
|
|
179
|
+
fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {return uniforms.vSphericalL00
|
|
180
|
+
+ uniforms.vSphericalL1_1*(normal.y)
|
|
181
|
+
+ uniforms.vSphericalL10*(normal.z)
|
|
182
|
+
+ uniforms.vSphericalL11*(normal.x)
|
|
183
|
+
+ uniforms.vSphericalL2_2*(normal.y*normal.x)
|
|
184
|
+
+ uniforms.vSphericalL2_1*(normal.y*normal.z)
|
|
185
|
+
+ uniforms.vSphericalL20*((3.0*normal.z*normal.z)-1.0)
|
|
186
|
+
+ uniforms.vSphericalL21*(normal.z*normal.x)
|
|
187
|
+
+ uniforms.vSphericalL22*(normal.x*normal.x-(normal.y*normal.y));}
|
|
188
|
+
#else
|
|
189
|
+
fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {var Nx: f32=normal.x;var Ny: f32=normal.y;var Nz: f32=normal.z;var C1: vec3f=uniforms.vSphericalZZ.rgb;var Cx: vec3f=uniforms.vSphericalX.rgb;var Cy: vec3f=uniforms.vSphericalY.rgb;var Cz: vec3f=uniforms.vSphericalZ.rgb;var Cxx_zz: vec3f=uniforms.vSphericalXX_ZZ.rgb;var Cyy_zz: vec3f=uniforms.vSphericalYY_ZZ.rgb;var Cxy: vec3f=uniforms.vSphericalXY.rgb;var Cyz: vec3f=uniforms.vSphericalYZ.rgb;var Czx: vec3f=uniforms.vSphericalZX.rgb;var a1: vec3f=Cyy_zz*Ny+Cy;var a2: vec3f=Cyz*Nz+a1;var b1: vec3f=Czx*Nz+Cx;var b2: vec3f=Cxy*Ny+b1;var b3: vec3f=Cxx_zz*Nx+b2;var t1: vec3f=Cz *Nz+C1;var t2: vec3f=a2 *Ny+t1;var t3: vec3f=b3 *Nx+t2;return t3;}
|
|
190
|
+
#endif
|
|
191
|
+
#endif
|
|
192
|
+
`;e.IncludesShadersStoreWGSL[n]||(e.IncludesShadersStoreWGSL[n]=i);
|
|
Binary file
|
|
Binary file
|