diff --git a/lab/public/bundle/manifest/scene1.json b/lab/public/bundle/manifest/scene1.json index be2cadab16..183022e97a 100644 --- a/lab/public/bundle/manifest/scene1.json +++ b/lab/public/bundle/manifest/scene1.json @@ -1,5 +1,5 @@ { - "rawKB": 88.1, + "rawKB": 88.2, "gzipKB": 36.9, "ignoredRawKB": 0, "runtimeChunks": [ @@ -9,7 +9,7 @@ "scene1-generate-mipmaps-DfKYIHYG.js", "scene1-gltf-glb-parser-BL74Wcec.js", "scene1-ibl-fragment-CeRrvT96.js", - "scene1-pbr-renderable-BtQPDahs.js", + "scene1-pbr-renderable-D8VHJTRA.js", "scene1-rgbd-decode-JSHbS7uW.js", "scene1-scene-uniforms-FTYH6Ct0.js", "scene1-singlelight-hemispheric-wgsl-dhCCcXC9.js", diff --git a/lab/public/bundle/manifest/scene10.json b/lab/public/bundle/manifest/scene10.json index 2c5f3738a2..e0df1c0597 100644 --- a/lab/public/bundle/manifest/scene10.json +++ b/lab/public/bundle/manifest/scene10.json @@ -3,7 +3,7 @@ "gzipKB": 21.7, "ignoredRawKB": 0, "runtimeChunks": [ - "scene10-pbr-renderable-46Kx6g7n.js", + "scene10-pbr-renderable-CFGNBcGv.js", "scene10-singlelight-hemispheric-wgsl-w0cK80Wf.js", "scene10.js" ] diff --git a/lab/public/bundle/manifest/scene104.json b/lab/public/bundle/manifest/scene104.json index 7b6933c029..ebbd59c84b 100644 --- a/lab/public/bundle/manifest/scene104.json +++ b/lab/public/bundle/manifest/scene104.json @@ -4,7 +4,7 @@ "ignoredRawKB": 0, "runtimeChunks": [ "scene104-generate-mipmaps-C2O_HNRi.js", - "scene104-gltf-feature-registry-St0sBjNq.js", + "scene104-gltf-feature-registry-DExyFmjz.js", "scene104-gltf-glb-parser-BJfNq64D.js", "scene104-shader-composer-DishuYLa.js", "scene104-standard-renderable-CHoHvWO9.js", diff --git a/lab/public/bundle/manifest/scene105.json b/lab/public/bundle/manifest/scene105.json index a7949c705d..c4e92174d0 100644 --- a/lab/public/bundle/manifest/scene105.json +++ b/lab/public/bundle/manifest/scene105.json @@ -4,7 +4,7 @@ "ignoredRawKB": 0, "runtimeChunks": [ "scene105-generate-mipmaps-q97-3GGe.js", - "scene105-gltf-feature-registry-Chjsx9b0.js", + "scene105-gltf-feature-registry-CyU-hHDJ.js", "scene105-gltf-glb-parser-BsWC1iTB.js", "scene105-shader-composer-DishuYLa.js", "scene105-standard-renderable-BXA9dKAx.js", diff --git a/lab/public/bundle/manifest/scene11.json b/lab/public/bundle/manifest/scene11.json index 9615f6bde5..a97055671d 100644 --- a/lab/public/bundle/manifest/scene11.json +++ b/lab/public/bundle/manifest/scene11.json @@ -9,13 +9,13 @@ "scene11-gltf-ext-spec-gloss-D60sFZYX.js", "scene11-gltf-feature-animations-CUKuLYEP.js", "scene11-gltf-feature-extras-VHPteGay.js", - "scene11-gltf-feature-registry-B6-2Tazf.js", + "scene11-gltf-feature-registry-cyA5niPB.js", "scene11-gltf-feature-skeleton-Djlep9zW.js", "scene11-gltf-glb-parser-B0CzN8nR.js", "scene11-gltf-sampler-desc-DP9TFn1W.js", - "scene11-pbr-renderable-RB-CPhl8.js", + "scene11-pbr-renderable-DHK-X7do.js", "scene11-singlelight-hemispheric-wgsl-B65r2jYR.js", - "scene11-skeleton-fragment-C1GjAglH.js", + "scene11-skeleton-fragment-BzLZRpws.js", "scene11.js" ] } diff --git a/lab/public/bundle/manifest/scene111.json b/lab/public/bundle/manifest/scene111.json index f658829791..34e39c2739 100644 --- a/lab/public/bundle/manifest/scene111.json +++ b/lab/public/bundle/manifest/scene111.json @@ -18,7 +18,7 @@ "scene111-node-registry-DNi8iW5i.js", "scene111-node-renderable-DsHgimzd.js", "scene111-node-shadow-Ckjwl7eT.js", - "scene111-pbr-renderable-xfY4T2x4.js", + "scene111-pbr-renderable-D8S6cd3k.js", "scene111-pbr-shadow-fragment-CFzpdZcF.js", "scene111-shader-composer-CdmK2apN.js", "scene111-shadow-fragment-core-Dbe1xNkt.js", diff --git a/lab/public/bundle/manifest/scene112.json b/lab/public/bundle/manifest/scene112.json index 2aedb2b962..cf7ebe3d5d 100644 --- a/lab/public/bundle/manifest/scene112.json +++ b/lab/public/bundle/manifest/scene112.json @@ -9,11 +9,11 @@ "scene112-generate-mipmaps-r2o5vX6L.js", "scene112-gltf-ext-basisu-CrmhRp7H.js", "scene112-gltf-ext-dielectric-C6hvXXiF.js", - "scene112-gltf-feature-registry-BAMbEcmu.js", + "scene112-gltf-feature-registry-kjsHwLH2.js", "scene112-gltf-json-asset-Cj8WBr3J.js", "scene112-ibl-fragment-CeRrvT96.js", "scene112-pbr-refraction-nAlT2yO6.js", - "scene112-pbr-renderable-BpLXxgin.js", + "scene112-pbr-renderable-UQ-QPbSS.js", "scene112-pbr-transmission-ext-BqJdYPwP.js", "scene112-rgbd-decode-CCG7-bTA.js", "scene112-scene-uniforms-FTYH6Ct0.js", diff --git a/lab/public/bundle/manifest/scene114.json b/lab/public/bundle/manifest/scene114.json index 176b0defd6..6fb3881bf5 100644 --- a/lab/public/bundle/manifest/scene114.json +++ b/lab/public/bundle/manifest/scene114.json @@ -1,11 +1,11 @@ { - "rawKB": 80.8, - "gzipKB": 31.5, + "rawKB": 80.9, + "gzipKB": 31.6, "ignoredRawKB": 0, "runtimeChunks": [ "scene114-morph-fragment-DLjixOml.js", - "scene114-pbr-renderable-Cqk13QD5.js", - "scene114-pbr-template-ext-BoJ8SFLM.js", + "scene114-pbr-renderable-Bz1zsS0O.js", + "scene114-pbr-template-ext-CiHpOV5G.js", "scene114-singlelight-hemispheric-wgsl-CEVgMDLE.js", "scene114-skeleton-fragment-qheSzR-l.js", "scene114-unlit-fragment-DWtvt7yQ.js", diff --git a/lab/public/bundle/manifest/scene115.json b/lab/public/bundle/manifest/scene115.json index 8fd365b675..d143cac0de 100644 --- a/lab/public/bundle/manifest/scene115.json +++ b/lab/public/bundle/manifest/scene115.json @@ -1,6 +1,6 @@ { - "rawKB": 126.6, - "gzipKB": 52.2, + "rawKB": 126.7, + "gzipKB": 52.3, "ignoredRawKB": 0, "runtimeChunks": [ "scene115-create-morph-targets-BxcR5t59.js", @@ -10,13 +10,13 @@ "scene115-gltf-color-normalize-4-WGzPL2.js", "scene115-gltf-feature-animations-DOqxEAHR.js", "scene115-gltf-feature-morph-DLWJRlR1.js", - "scene115-gltf-feature-registry-CenNQQfE.js", + "scene115-gltf-feature-registry-DOkQefUu.js", "scene115-gltf-feature-skeleton-BktZKWC9.js", "scene115-gltf-json-asset-DXBgrt5f.js", "scene115-morph-fragment-BbCT_r5m.js", "scene115-morph-fragment-core-CTaOwZva.js", - "scene115-pbr-renderable-Dmmc4QRm.js", - "scene115-pbr-template-ext-BoJ8SFLM.js", + "scene115-pbr-renderable-CLfKUliX.js", + "scene115-pbr-template-ext-CiHpOV5G.js", "scene115-shader-composer-DishuYLa.js", "scene115-singlelight-hemispheric-wgsl-Cyo3l2OW.js", "scene115-skeleton-fragment-B0VEBZFR.js", diff --git a/lab/public/bundle/manifest/scene116.json b/lab/public/bundle/manifest/scene116.json index 03c84bab13..d5bfb88181 100644 --- a/lab/public/bundle/manifest/scene116.json +++ b/lab/public/bundle/manifest/scene116.json @@ -1,9 +1,9 @@ { - "rawKB": 76.2, + "rawKB": 76.3, "gzipKB": 31.3, "ignoredRawKB": 0, "runtimeChunks": [ - "scene116-pbr-renderable-k-vWhazx.js", + "scene116-pbr-renderable-B_c-26sZ.js", "scene116-shader-composer-Bga-tI-0.js", "scene116-singlelight-hemispheric-wgsl-hXzjd_qm.js", "scene116-standard-renderable-B6DFgoG2.js", diff --git a/lab/public/bundle/manifest/scene12.json b/lab/public/bundle/manifest/scene12.json index 8dc05f1f97..46f01af3f3 100644 --- a/lab/public/bundle/manifest/scene12.json +++ b/lab/public/bundle/manifest/scene12.json @@ -1,5 +1,5 @@ { - "rawKB": 103.7, + "rawKB": 103.8, "gzipKB": 42.3, "ignoredRawKB": 0, "runtimeChunks": [ @@ -7,12 +7,12 @@ "scene12-generate-mipmaps-WJd2dKx2.js", "scene12-gltf-animation-BQj3RAlu.js", "scene12-gltf-feature-animations-Db5mzwHK.js", - "scene12-gltf-feature-registry-CfLdPee_.js", + "scene12-gltf-feature-registry-Dk_apcT-.js", "scene12-gltf-feature-skeleton-eatI5LFE.js", "scene12-gltf-glb-parser-BrsOlymf.js", "scene12-ibl-fragment-CeRrvT96.js", - "scene12-pbr-renderable-C-J3TLlR.js", - "scene12-reflectance-fragment-DNv_VRby.js", + "scene12-pbr-renderable-jbhRzGSk.js", + "scene12-reflectance-fragment-BESl-7E9.js", "scene12-rgbd-decode-BLiTLohS.js", "scene12-scene-uniforms-FTYH6Ct0.js", "scene12-singlelight-directional-wgsl-DhnkgLEx.js", diff --git a/lab/public/bundle/manifest/scene13.json b/lab/public/bundle/manifest/scene13.json index 785890b524..a14502fe8d 100644 --- a/lab/public/bundle/manifest/scene13.json +++ b/lab/public/bundle/manifest/scene13.json @@ -7,7 +7,7 @@ "scene13-generate-mipmaps-BYu5QYgJ.js", "scene13-gltf-glb-parser-HP2v-3hE.js", "scene13-ibl-fragment-CeRrvT96.js", - "scene13-pbr-renderable-CDQzIhds.js", + "scene13-pbr-renderable-DHp41hqi.js", "scene13-rgbd-decode-CmtmNnLb.js", "scene13-scene-uniforms-FTYH6Ct0.js", "scene13-singlelight-hemispheric-wgsl-D1uhnT_s.js", diff --git a/lab/public/bundle/manifest/scene14.json b/lab/public/bundle/manifest/scene14.json index 12144751c8..2827bcae76 100644 --- a/lab/public/bundle/manifest/scene14.json +++ b/lab/public/bundle/manifest/scene14.json @@ -1,6 +1,6 @@ { "rawKB": 88.4, - "gzipKB": 36.9, + "gzipKB": 37, "ignoredRawKB": 0, "runtimeChunks": [ "scene14-background-dds-skybox-BM1zxSu2.js", @@ -9,7 +9,7 @@ "scene14-generate-mipmaps-Drlt5FNB.js", "scene14-gltf-glb-parser-B--vN_CU.js", "scene14-ibl-fragment-CeRrvT96.js", - "scene14-pbr-renderable-CQk7rhOI.js", + "scene14-pbr-renderable-BfteWe4X.js", "scene14-rgbd-decode-BdaP5z1T.js", "scene14-scene-uniforms-FTYH6Ct0.js", "scene14-singlelight-hemispheric-wgsl-Q-eHTfjt.js", diff --git a/lab/public/bundle/manifest/scene141.json b/lab/public/bundle/manifest/scene141.json index 8e2c636441..3e50bcdc93 100644 --- a/lab/public/bundle/manifest/scene141.json +++ b/lab/public/bundle/manifest/scene141.json @@ -15,7 +15,7 @@ "scene141-node-registry-BHrQQQWh.js", "scene141-node-renderable-BMALB2gu.js", "scene141-node-shadow-BscttRKr.js", - "scene141-pbr-renderable-CO-s4Jym.js", + "scene141-pbr-renderable-BbElQtt3.js", "scene141-pbr-shadow-fragment-DHDAZ1HL.js", "scene141-shader-composer-BEJi2Ku9.js", "scene141-shadow-fragment-core-Dbe1xNkt.js", diff --git a/lab/public/bundle/manifest/scene144.json b/lab/public/bundle/manifest/scene144.json index d166ffcac6..227ffdffe8 100644 --- a/lab/public/bundle/manifest/scene144.json +++ b/lab/public/bundle/manifest/scene144.json @@ -1,6 +1,6 @@ { - "rawKB": 110.7, - "gzipKB": 44.8, + "rawKB": 112.7, + "gzipKB": 45.8, "ignoredRawKB": 0, "runtimeChunks": [ "scene144-create-skeleton-DalWacs1.js", @@ -9,15 +9,16 @@ "scene144-gltf-ext-spec-gloss-D60sFZYX.js", "scene144-gltf-feature-animations-CvLpEQNh.js", "scene144-gltf-feature-extras-VHPteGay.js", - "scene144-gltf-feature-registry-Dl_SA0eK.js", + "scene144-gltf-feature-registry-D0rf4k_c.js", "scene144-gltf-feature-skeleton-Dvlpv1pW.js", "scene144-gltf-glb-parser-CXf6hcyj.js", - "scene144-gltf-pbr-builder-ext-g9qXikef.js", + "scene144-gltf-pbr-builder-ext-P-UpNEbO.js", "scene144-ibl-fragment-CeRrvT96.js", - "scene144-pbr-renderable-oXSRVwUn.js", + "scene144-pbr-renderable-CSZIkMkr.js", + "scene144-pbr-template-ext-CiHpOV5G.js", "scene144-rgbd-decode-DNSQ_egC.js", "scene144-scene-uniforms-FTYH6Ct0.js", - "scene144-skeleton-fragment-CHLbwAOI.js", + "scene144-skeleton-fragment-CTAGnqcL.js", "scene144-texture-2d-DQo3n8D6.js", "scene144.js" ] diff --git a/lab/public/bundle/manifest/scene146.json b/lab/public/bundle/manifest/scene146.json index fb0bd845df..c0854c4f98 100644 --- a/lab/public/bundle/manifest/scene146.json +++ b/lab/public/bundle/manifest/scene146.json @@ -1,5 +1,5 @@ { - "rawKB": 111, + "rawKB": 111.1, "gzipKB": 45.5, "ignoredRawKB": 0, "runtimeChunks": [ @@ -9,8 +9,8 @@ "scene146-generate-mipmaps-DEgXRuY9.js", "scene146-gltf-json-asset-oCUO4rUK.js", "scene146-ibl-fragment-CeRrvT96.js", - "scene146-pbr-geometry-view-3PXp1vWa.js", - "scene146-pbr-renderable-DR-dEJ3M.js", + "scene146-pbr-geometry-view-DRije4aO.js", + "scene146-pbr-renderable-CM2-TwHP.js", "scene146-rgbd-decode-DZYt7kUp.js", "scene146-scene-uniforms-FTYH6Ct0.js", "scene146-shader-composer-DOjPUQGI.js", diff --git a/lab/public/bundle/manifest/scene147.json b/lab/public/bundle/manifest/scene147.json index 6461e59eeb..e04af10bf3 100644 --- a/lab/public/bundle/manifest/scene147.json +++ b/lab/public/bundle/manifest/scene147.json @@ -1,17 +1,17 @@ { - "rawKB": 103.9, + "rawKB": 104, "gzipKB": 41.7, "ignoredRawKB": 0, "runtimeChunks": [ "scene147-directional-light-Bhj3CbsK.js", "scene147-generate-mipmaps-7FMQd9Gb.js", "scene147-gltf-feature-lights-punctual-CwjriEB4.js", - "scene147-gltf-feature-registry-CjAcQO1B.js", + "scene147-gltf-feature-registry-gvU-AElm.js", "scene147-gltf-glb-parser-1VrmmUS3.js", "scene147-gltf-light-pointer-state-B7kFTRxK.js", "scene147-multilight-wgsl-EMm1KlC7.js", - "scene147-pbr-geometry-view-BRDn2rrC.js", - "scene147-pbr-renderable--4E74V9U.js", + "scene147-pbr-geometry-view-DgZ0CrLc.js", + "scene147-pbr-renderable-CJ6XLXcG.js", "scene147-shader-composer-B51nefZQ.js", "scene147-ubo-layout-Cs5YvLYZ.js", "scene147.js" diff --git a/lab/public/bundle/manifest/scene148.json b/lab/public/bundle/manifest/scene148.json index 46caf2eb90..932eed8604 100644 --- a/lab/public/bundle/manifest/scene148.json +++ b/lab/public/bundle/manifest/scene148.json @@ -1,16 +1,16 @@ { - "rawKB": 109.8, + "rawKB": 109.9, "gzipKB": 43.2, "ignoredRawKB": 0, "runtimeChunks": [ "scene148-directional-light-UoLzTD31.js", "scene148-generate-mipmaps-CfuW6q-h.js", "scene148-gltf-feature-lights-punctual-BTZaThsN.js", - "scene148-gltf-feature-registry-DAjK1lc7.js", + "scene148-gltf-feature-registry-BSpqcacR.js", "scene148-gltf-glb-parser-BR2EHjxU.js", "scene148-gltf-light-pointer-state-B7kFTRxK.js", - "scene148-pbr-geometry-view-VyZljgCl.js", - "scene148-pbr-renderable-C6JNqfjs.js", + "scene148-pbr-geometry-view-D2cVn9Ln.js", + "scene148-pbr-renderable-DlBJCtKq.js", "scene148-shader-composer-CUoJ8Zu3.js", "scene148-singlelight-hemispheric-wgsl-BLueMPfJ.js", "scene148-ubo-layout-Cs5YvLYZ.js", diff --git a/lab/public/bundle/manifest/scene149.json b/lab/public/bundle/manifest/scene149.json index 86cd20c5e4..9579557371 100644 --- a/lab/public/bundle/manifest/scene149.json +++ b/lab/public/bundle/manifest/scene149.json @@ -9,7 +9,7 @@ "scene149-generate-mipmaps-gtcbk4S2.js", "scene149-geometry-texture-output-BfeQftmX.js", "scene149-gltf-feature-lights-punctual-D7xjFqdg.js", - "scene149-gltf-feature-registry-B6yGH73b.js", + "scene149-gltf-feature-registry-Dlc3W09a.js", "scene149-gltf-glb-parser-CpRY-0L4.js", "scene149-gltf-light-pointer-state-B7kFTRxK.js", "scene149-input-block-BTUtjdzr.js", diff --git a/lab/public/bundle/manifest/scene152.json b/lab/public/bundle/manifest/scene152.json index f20c75c1a5..4cb690e96a 100644 --- a/lab/public/bundle/manifest/scene152.json +++ b/lab/public/bundle/manifest/scene152.json @@ -1,6 +1,6 @@ { "rawKB": 94.4, - "gzipKB": 39.2, + "gzipKB": 39.3, "ignoredRawKB": 0, "runtimeChunks": [ "scene152-create-skeleton-BvRoBRkx.js", @@ -9,13 +9,13 @@ "scene152-gltf-ext-spec-gloss-D60sFZYX.js", "scene152-gltf-feature-animations-B_C5kwG5.js", "scene152-gltf-feature-extras-VHPteGay.js", - "scene152-gltf-feature-registry-DwgqwcZZ.js", + "scene152-gltf-feature-registry-DSkVn3FC.js", "scene152-gltf-feature-skeleton-CUsQ3cht.js", "scene152-gltf-glb-parser-Dr_B2hXm.js", "scene152-gltf-sampler-desc-D0Q2VM93.js", - "scene152-pbr-renderable-B7Vx396v.js", + "scene152-pbr-renderable-w5bTx4T9.js", "scene152-singlelight-hemispheric-wgsl-CG2laBNj.js", - "scene152-skeleton-fragment-Bs_OzBmn.js", + "scene152-skeleton-fragment-BYBIZTbR.js", "scene152.js" ] } diff --git a/lab/public/bundle/manifest/scene157.json b/lab/public/bundle/manifest/scene157.json index f678651cc4..9a2ae6411f 100644 --- a/lab/public/bundle/manifest/scene157.json +++ b/lab/public/bundle/manifest/scene157.json @@ -7,12 +7,12 @@ "scene157-generate-mipmaps-BYHWBGCp.js", "scene157-gltf-animation-PnQa26Zh.js", "scene157-gltf-feature-animations-at7-WE4C.js", - "scene157-gltf-feature-registry-D2LwJdFm.js", + "scene157-gltf-feature-registry-0o9PKwj2.js", "scene157-gltf-feature-skeleton-Cxp-WFUs.js", "scene157-gltf-glb-parser-DZ4Xgxsa.js", "scene157-multilight-wgsl-BVR6TJvC.js", - "scene157-pbr-renderable-BKn13cLq.js", - "scene157-skeleton-fragment-bIJdKfEe.js", + "scene157-pbr-renderable-BV80o8HT.js", + "scene157-skeleton-fragment-DF9JSy2m.js", "scene157.js" ] } diff --git a/lab/public/bundle/manifest/scene158.json b/lab/public/bundle/manifest/scene158.json index 0eb553a655..9cc2dd846b 100644 --- a/lab/public/bundle/manifest/scene158.json +++ b/lab/public/bundle/manifest/scene158.json @@ -1,5 +1,5 @@ { - "rawKB": 96.2, + "rawKB": 96.3, "gzipKB": 39.2, "ignoredRawKB": 0, "runtimeChunks": [ @@ -7,12 +7,12 @@ "scene158-generate-mipmaps-bNvmU0dI.js", "scene158-gltf-animation-D4bTYTv1.js", "scene158-gltf-feature-animations-BPofhcKw.js", - "scene158-gltf-feature-registry-CBcYJg-P.js", + "scene158-gltf-feature-registry-I9qW8gaC.js", "scene158-gltf-feature-skeleton-D2diH2X_.js", "scene158-gltf-glb-parser-BhqojsL9.js", "scene158-multilight-wgsl-DtA6qLNj.js", - "scene158-pbr-renderable-C2ornTKH.js", - "scene158-skeleton-fragment-In1MBeup.js", + "scene158-pbr-renderable-Dr78ma9D.js", + "scene158-skeleton-fragment-ICbkGaQ4.js", "scene158.js" ] } diff --git a/lab/public/bundle/manifest/scene164.json b/lab/public/bundle/manifest/scene164.json index 59ee9b8ef7..8d6806be26 100644 --- a/lab/public/bundle/manifest/scene164.json +++ b/lab/public/bundle/manifest/scene164.json @@ -1,6 +1,6 @@ { - "rawKB": 99.1, - "gzipKB": 41, + "rawKB": 99.3, + "gzipKB": 41.1, "ignoredRawKB": 0, "runtimeChunks": [ "scene164-create-morph-targets-DRqKS4bi.js", @@ -10,14 +10,14 @@ "scene164-gltf-color-normalize-4-WGzPL2.js", "scene164-gltf-feature-animations-CoptQtIt.js", "scene164-gltf-feature-morph-Dcma2yce.js", - "scene164-gltf-feature-registry-kl75eXCB.js", + "scene164-gltf-feature-registry-KiGFfhWk.js", "scene164-gltf-feature-skeleton-DRjn81A9.js", "scene164-gltf-json-asset-B2lSB7pA.js", - "scene164-morph-fragment-7aHPckU3.js", - "scene164-pbr-renderable-DiTKHtZs.js", - "scene164-pbr-template-ext-BoJ8SFLM.js", + "scene164-morph-fragment-DqmjrD9s.js", + "scene164-pbr-renderable-BuCBUDuA.js", + "scene164-pbr-template-ext-CiHpOV5G.js", "scene164-singlelight-hemispheric-wgsl-L03Bnk5I.js", - "scene164-skeleton-fragment-O-j9mpyd.js", + "scene164-skeleton-fragment-iGQ0nIRQ.js", "scene164.js" ] } diff --git a/lab/public/bundle/manifest/scene17.json b/lab/public/bundle/manifest/scene17.json index 260c2b9c51..ab1c81b34c 100644 --- a/lab/public/bundle/manifest/scene17.json +++ b/lab/public/bundle/manifest/scene17.json @@ -1,11 +1,11 @@ { "rawKB": 86.3, - "gzipKB": 35.8, + "gzipKB": 35.9, "ignoredRawKB": 0, "runtimeChunks": [ "scene17-generate-mipmaps-DNSbr_z3.js", "scene17-ibl-fragment-CeRrvT96.js", - "scene17-pbr-renderable-DNCGSRmh.js", + "scene17-pbr-renderable-B18-VSSF.js", "scene17-rgbd-decode-aydmE8bD.js", "scene17-shader-composer-Bga-tI-0.js", "scene17-singlelight-hemispheric-wgsl-DpzOMoaT.js", diff --git a/lab/public/bundle/manifest/scene171.json b/lab/public/bundle/manifest/scene171.json index 7e4c215d69..19c3b6a8e5 100644 --- a/lab/public/bundle/manifest/scene171.json +++ b/lab/public/bundle/manifest/scene171.json @@ -1,11 +1,11 @@ { - "rawKB": 95.7, + "rawKB": 95.8, "gzipKB": 39.1, "ignoredRawKB": 1485.2, "runtimeChunks": [ "scene171-generate-mipmaps-Cpc8PT2N.js", "scene171-gltf-glb-parser-COBAbifQ.js", - "scene171-pbr-renderable-70HgGfom.js", + "scene171-pbr-renderable-CBudRXIZ.js", "scene171-recast-navigation-CYBQI-zY-Dry_z7x_.js", "scene171-shader-composer-DishuYLa.js", "scene171-singlelight-hemispheric-wgsl-BfbzAtlS.js", diff --git a/lab/public/bundle/manifest/scene174.json b/lab/public/bundle/manifest/scene174.json index 8f62eb0d18..03bf3271b8 100644 --- a/lab/public/bundle/manifest/scene174.json +++ b/lab/public/bundle/manifest/scene174.json @@ -1,11 +1,11 @@ { "rawKB": 96.4, - "gzipKB": 39.4, + "gzipKB": 39.5, "ignoredRawKB": 1485.2, "runtimeChunks": [ "scene174-generate-mipmaps-CU0CttiE.js", "scene174-gltf-glb-parser-V10AO6Mf.js", - "scene174-pbr-renderable-CNzE40XW.js", + "scene174-pbr-renderable-CSIBKar6.js", "scene174-recast-navigation-CYBQI-zY-Dry_z7x_.js", "scene174-shader-composer-DishuYLa.js", "scene174-singlelight-hemispheric-wgsl-DYuLXC4p.js", diff --git a/lab/public/bundle/manifest/scene175.json b/lab/public/bundle/manifest/scene175.json index 394a84c9a4..d78355af98 100644 --- a/lab/public/bundle/manifest/scene175.json +++ b/lab/public/bundle/manifest/scene175.json @@ -1,11 +1,11 @@ { - "rawKB": 94.7, - "gzipKB": 38.7, + "rawKB": 94.8, + "gzipKB": 38.8, "ignoredRawKB": 1485.2, "runtimeChunks": [ "scene175-generate-mipmaps-Nb0hz7dp.js", "scene175-gltf-glb-parser-BmlEZ507.js", - "scene175-pbr-renderable-BrnK2Zs3.js", + "scene175-pbr-renderable-BuP2umVH.js", "scene175-recast-navigation-CYBQI-zY-Dry_z7x_.js", "scene175-shader-composer-DishuYLa.js", "scene175-singlelight-hemispheric-wgsl-C8FJZIgR.js", diff --git a/lab/public/bundle/manifest/scene176.json b/lab/public/bundle/manifest/scene176.json index d267320769..6dd39a3c61 100644 --- a/lab/public/bundle/manifest/scene176.json +++ b/lab/public/bundle/manifest/scene176.json @@ -1,19 +1,19 @@ { "rawKB": 104.3, - "gzipKB": 42, + "gzipKB": 42.1, "ignoredRawKB": 0, "runtimeChunks": [ "scene176-generate-mipmaps-LBrT9Lsp.js", "scene176-gltf-ext-dielectric-C6hvXXiF.js", "scene176-gltf-feature-extras-VHPteGay.js", - "scene176-gltf-feature-registry-BJSz-sbu.js", + "scene176-gltf-feature-registry-BqV6SdNM.js", "scene176-gltf-json-asset-C-LYB2bT.js", "scene176-ibl-fragment-CeRrvT96.js", "scene176-ibl-skybox-wgsl-CFIBOHHx.js", "scene176-pbr-refraction-Tg8x1uZU.js", - "scene176-pbr-renderable-D_2p26L8.js", + "scene176-pbr-renderable-DP4X61d0.js", "scene176-pbr-transmission-ext-Dipc1EBq.js", - "scene176-reflectance-fragment-B6xBDzCj.js", + "scene176-reflectance-fragment-X3VnKmHR.js", "scene176-rgbd-decode-BNh5jH-x.js", "scene176-scene-uniforms-FTYH6Ct0.js", "scene176.js" diff --git a/lab/public/bundle/manifest/scene177.json b/lab/public/bundle/manifest/scene177.json index fe2f31771a..691aa533de 100644 --- a/lab/public/bundle/manifest/scene177.json +++ b/lab/public/bundle/manifest/scene177.json @@ -1,12 +1,12 @@ { - "rawKB": 69.8, - "gzipKB": 28.4, + "rawKB": 69.9, + "gzipKB": 28.5, "ignoredRawKB": 0, "runtimeChunks": [ "scene177-ibl-fragment-CeRrvT96.js", "scene177-ibl-skybox-wgsl-CFIBOHHx.js", "scene177-iridescence-fragment-DbYifzec.js", - "scene177-pbr-renderable-CVCFGkUi.js", + "scene177-pbr-renderable-buJqqz2v.js", "scene177-rgbd-decode-DgyvGBcz.js", "scene177-scene-uniforms-FTYH6Ct0.js", "scene177.js" diff --git a/lab/public/bundle/manifest/scene178.json b/lab/public/bundle/manifest/scene178.json index d9864bada8..fcc59bdedb 100644 --- a/lab/public/bundle/manifest/scene178.json +++ b/lab/public/bundle/manifest/scene178.json @@ -5,12 +5,12 @@ "runtimeChunks": [ "scene178-generate-mipmaps-BGzDQPIy.js", "scene178-gltf-ext-iridescence-b4LVniAM.js", - "scene178-gltf-feature-registry-DYS5AKjj.js", + "scene178-gltf-feature-registry-DARfE0Ov.js", "scene178-gltf-glb-parser-d5msxooD.js", "scene178-ibl-fragment-CeRrvT96.js", "scene178-ibl-skybox-wgsl-CFIBOHHx.js", "scene178-iridescence-fragment-DhGVbSHo.js", - "scene178-pbr-renderable-B9r20hx3.js", + "scene178-pbr-renderable-DPpo1Sqy.js", "scene178-rgbd-decode-BsmWs_Sj.js", "scene178-scene-uniforms-FTYH6Ct0.js", "scene178.js" diff --git a/lab/public/bundle/manifest/scene179.json b/lab/public/bundle/manifest/scene179.json index 0e099543da..853a2cc56c 100644 --- a/lab/public/bundle/manifest/scene179.json +++ b/lab/public/bundle/manifest/scene179.json @@ -1,12 +1,12 @@ { "rawKB": 73.9, - "gzipKB": 30.2, + "gzipKB": 30.3, "ignoredRawKB": 0, "runtimeChunks": [ "scene179-alpha-test-fragment-BaX_J1Vy.js", "scene179-generate-mipmaps-5DBI-Po-.js", "scene179-gltf-json-asset-DVQojHWg.js", - "scene179-pbr-renderable-BaT8hx5v.js", + "scene179-pbr-renderable-EWUr4TXI.js", "scene179.js" ] } diff --git a/lab/public/bundle/manifest/scene19.json b/lab/public/bundle/manifest/scene19.json index 83e63246ed..4f7dee63d8 100644 --- a/lab/public/bundle/manifest/scene19.json +++ b/lab/public/bundle/manifest/scene19.json @@ -5,7 +5,7 @@ "runtimeChunks": [ "scene19-clearcoat-fragment-BWTsF3_L.js", "scene19-ibl-fragment-CeRrvT96.js", - "scene19-pbr-renderable-DZSwMDuW.js", + "scene19-pbr-renderable-hgV1av6g.js", "scene19-rgbd-decode-Bhk0icKs.js", "scene19-singlelight-hemispheric-wgsl-CWifOPl1.js", "scene19.js" diff --git a/lab/public/bundle/manifest/scene20.json b/lab/public/bundle/manifest/scene20.json index c1e1204a4d..34150323fa 100644 --- a/lab/public/bundle/manifest/scene20.json +++ b/lab/public/bundle/manifest/scene20.json @@ -8,7 +8,7 @@ "scene20-cubemap-skybox-material-B495OxWx.js", "scene20-emissive-fragment-B_pIHOBu.js", "scene20-ibl-fragment-CeRrvT96.js", - "scene20-pbr-renderable-D5lj8Nuk.js", + "scene20-pbr-renderable-DCcgiJR2.js", "scene20-rgbd-decode-ChiiPMbr.js", "scene20-scene-uniforms-FTYH6Ct0.js", "scene20-singlelight-hemispheric-wgsl-TLZaCFzg.js", diff --git a/lab/public/bundle/manifest/scene21.json b/lab/public/bundle/manifest/scene21.json index fdef68db87..b11e2a4805 100644 --- a/lab/public/bundle/manifest/scene21.json +++ b/lab/public/bundle/manifest/scene21.json @@ -1,6 +1,6 @@ { "rawKB": 85.8, - "gzipKB": 35, + "gzipKB": 35.1, "ignoredRawKB": 0, "runtimeChunks": [ "scene21-background-hdr-skybox-BJiEFB7s.js", @@ -8,7 +8,7 @@ "scene21-generate-mipmaps-C6GFB7Gd.js", "scene21-gltf-glb-parser-GCKDEofq.js", "scene21-ibl-fragment-CeRrvT96.js", - "scene21-pbr-renderable-DlATn4q_.js", + "scene21-pbr-renderable-D_epEzEb.js", "scene21-rgbd-decode-9DTol7mq.js", "scene21-scene-uniforms-FTYH6Ct0.js", "scene21-sheen-fragment-D_beAYtD.js", diff --git a/lab/public/bundle/manifest/scene210.json b/lab/public/bundle/manifest/scene210.json index ac567aa883..bc06d90d94 100644 --- a/lab/public/bundle/manifest/scene210.json +++ b/lab/public/bundle/manifest/scene210.json @@ -4,12 +4,12 @@ "ignoredRawKB": 0, "runtimeChunks": [ "scene210-generate-mipmaps-BeLXoJVY.js", - "scene210-gltf-feature-registry-Ucg3ldCW.js", + "scene210-gltf-feature-registry-8A8TfG8a.js", "scene210-gltf-feature-xmp-S8Tl-XNQ.js", "scene210-gltf-glb-parser-fJOQf1ny.js", "scene210-gltf-interleave-D_KaKI90.js", "scene210-gltf-normals-DYhLwXNX.js", - "scene210-pbr-renderable-3IXI5s9X.js", + "scene210-pbr-renderable-DP0dtM69.js", "scene210-singlelight-hemispheric-wgsl-CBBkrTfR.js", "scene210.js" ] diff --git a/lab/public/bundle/manifest/scene211.json b/lab/public/bundle/manifest/scene211.json index 0f0820cc95..33e41a93d3 100644 --- a/lab/public/bundle/manifest/scene211.json +++ b/lab/public/bundle/manifest/scene211.json @@ -1,6 +1,6 @@ { "rawKB": 90.9, - "gzipKB": 38.3, + "gzipKB": 38.4, "ignoredRawKB": 0, "runtimeChunks": [ "scene211-create-skeleton-CNRigX8Y.js", @@ -9,14 +9,14 @@ "scene211-gltf-ext-quantization-DTtElLs7.js", "scene211-gltf-feature-animations-CsN6DvHw.js", "scene211-gltf-feature-meshopt-Dt65KW5n.js", - "scene211-gltf-feature-registry-4ulav0ud.js", + "scene211-gltf-feature-registry-BG_ahr16.js", "scene211-gltf-feature-skeleton-DpuvZ9VR.js", "scene211-gltf-json-asset-CHRQZ19d.js", "scene211-gltf-multi-buffer-Cwm5u1Qq.js", "scene211-gltf-sampler-denorm-LVUVn5SV.js", - "scene211-pbr-renderable-ZBHrY-79.js", + "scene211-pbr-renderable-DGabL0fg.js", "scene211-singlelight-hemispheric-wgsl-BuokTPjH.js", - "scene211-skeleton-fragment-DFPdpOQa.js", + "scene211-skeleton-fragment-BHJcfpd3.js", "scene211.js" ] } diff --git a/lab/public/bundle/manifest/scene212.json b/lab/public/bundle/manifest/scene212.json index 2231f9571c..7251e54692 100644 --- a/lab/public/bundle/manifest/scene212.json +++ b/lab/public/bundle/manifest/scene212.json @@ -5,14 +5,14 @@ "runtimeChunks": [ "scene212-generate-mipmaps-ffZ1zox-.js", "scene212-gltf-ext-dielectric-C6hvXXiF.js", - "scene212-gltf-feature-registry-xdn4YjVI.js", + "scene212-gltf-feature-registry-CNbzPeCE.js", "scene212-gltf-glb-parser-DpbXuAuC.js", "scene212-ibl-fragment-CeRrvT96.js", "scene212-ibl-skybox-wgsl-CFIBOHHx.js", "scene212-pbr-refraction-DQZVKvEq.js", - "scene212-pbr-renderable-CnA5FmOo.js", + "scene212-pbr-renderable-CQrrv8e7.js", "scene212-pbr-transmission-ext-C0Ra7jTr.js", - "scene212-reflectance-fragment-DXIvnZqo.js", + "scene212-reflectance-fragment-BdYei-sw.js", "scene212-refraction-dispersion-wgsl-BKvBCmZU.js", "scene212-rgbd-decode-XvCcjKVH.js", "scene212-scene-uniforms-FTYH6Ct0.js", diff --git a/lab/public/bundle/manifest/scene215.json b/lab/public/bundle/manifest/scene215.json index 78556b150b..de08433808 100644 --- a/lab/public/bundle/manifest/scene215.json +++ b/lab/public/bundle/manifest/scene215.json @@ -6,7 +6,7 @@ "scene215-material-view-Dua1bl7W.js", "scene215-multilight-wgsl-DjVmEAHV.js", "scene215-no-color-view-DS70AbGo.js", - "scene215-pbr-renderable-D0iLJFqq.js", + "scene215-pbr-renderable-EjsAGxuk.js", "scene215-pbr-shadow-fragment-CoRW6XHj.js", "scene215-shadow-task-CPnE-PjD.js", "scene215-singlelight-directional-wgsl-DzV54v_g.js", diff --git a/lab/public/bundle/manifest/scene216.json b/lab/public/bundle/manifest/scene216.json index 29f0f73a6a..d4627c9299 100644 --- a/lab/public/bundle/manifest/scene216.json +++ b/lab/public/bundle/manifest/scene216.json @@ -1,10 +1,10 @@ { - "rawKB": 53.9, + "rawKB": 54, "gzipKB": 22.2, "ignoredRawKB": 0, "runtimeChunks": [ "scene216-pbr-fog-wgsl-BuLKZvgv.js", - "scene216-pbr-renderable-C1M3VYPA.js", + "scene216-pbr-renderable-Dn1fMSg4.js", "scene216-singlelight-hemispheric-wgsl-BXqEjdZQ.js", "scene216.js" ] diff --git a/lab/public/bundle/manifest/scene217.json b/lab/public/bundle/manifest/scene217.json index 0cd507d17d..c1c4b45807 100644 --- a/lab/public/bundle/manifest/scene217.json +++ b/lab/public/bundle/manifest/scene217.json @@ -4,7 +4,7 @@ "ignoredRawKB": 0, "runtimeChunks": [ "scene217-multilight-wgsl-hb_hGU0D.js", - "scene217-pbr-renderable-LA0TUvDQ.js", + "scene217-pbr-renderable-CvchOzGq.js", "scene217-shader-composer-3MUGhbIu.js", "scene217-standard-renderable-DO07_p5s.js", "scene217-wgsl-fog-m3PkjS7i.js", diff --git a/lab/public/bundle/manifest/scene218.json b/lab/public/bundle/manifest/scene218.json index 597f94a8fd..364a0c80f8 100644 --- a/lab/public/bundle/manifest/scene218.json +++ b/lab/public/bundle/manifest/scene218.json @@ -1,5 +1,5 @@ { - "rawKB": 95, + "rawKB": 95.1, "gzipKB": 39.4, "ignoredRawKB": 0, "runtimeChunks": [ @@ -9,11 +9,11 @@ "scene218-gltf-ext-spec-gloss-D60sFZYX.js", "scene218-gltf-feature-animations-u2H7ejDl.js", "scene218-gltf-feature-extras-VHPteGay.js", - "scene218-gltf-feature-registry-CNIfXesz.js", + "scene218-gltf-feature-registry-DtTeXbcA.js", "scene218-gltf-feature-skeleton-n7Xbyk0V.js", "scene218-gltf-glb-parser-BXHcqEF1.js", "scene218-gltf-sampler-desc-CS2bAJuk.js", - "scene218-pbr-renderable-BkITO5U8.js", + "scene218-pbr-renderable-B9shVjr7.js", "scene218-singlelight-hemispheric-wgsl-D4ReIS7e.js", "scene218.js" ] diff --git a/lab/public/bundle/manifest/scene219.json b/lab/public/bundle/manifest/scene219.json index 40f4e60faa..cbebb6a8d1 100644 --- a/lab/public/bundle/manifest/scene219.json +++ b/lab/public/bundle/manifest/scene219.json @@ -9,11 +9,11 @@ "scene219-gltf-ext-spec-gloss-D60sFZYX.js", "scene219-gltf-feature-animations-B_YvITgV.js", "scene219-gltf-feature-extras-VHPteGay.js", - "scene219-gltf-feature-registry-B_5BH0hl.js", + "scene219-gltf-feature-registry-DUtKrki_.js", "scene219-gltf-feature-skeleton-CpmBaHpL.js", "scene219-gltf-glb-parser-PDyH09Yg.js", "scene219-gltf-sampler-desc-CKWNJQQv.js", - "scene219-pbr-renderable-yaXLLteF.js", + "scene219-pbr-renderable-WUkS1xKq.js", "scene219-singlelight-hemispheric-wgsl-DDoH6CHa.js", "scene219-thin-instance-fragment-CBn2miAC.js", "scene219-thin-instance-gpu-BgRIhZge.js", diff --git a/lab/public/bundle/manifest/scene22.json b/lab/public/bundle/manifest/scene22.json index bd151baa49..0ef1217f32 100644 --- a/lab/public/bundle/manifest/scene22.json +++ b/lab/public/bundle/manifest/scene22.json @@ -1,5 +1,5 @@ { - "rawKB": 97.6, + "rawKB": 97.7, "gzipKB": 39.5, "ignoredRawKB": 0, "runtimeChunks": [ @@ -8,7 +8,7 @@ "scene22-material-view-Dua1bl7W.js", "scene22-multilight-wgsl-My9Iptth.js", "scene22-no-color-view-DHPAYos4.js", - "scene22-pbr-renderable-WnyBYGCE.js", + "scene22-pbr-renderable-Zulj0hz7.js", "scene22-pbr-shadow-fragment-CSEDArnD.js", "scene22-pbr-template-gamma-CVmXdy8B.js", "scene22-shader-composer-Bga-tI-0.js", diff --git a/lab/public/bundle/manifest/scene229.json b/lab/public/bundle/manifest/scene229.json index dc40c6bddd..ae63624565 100644 --- a/lab/public/bundle/manifest/scene229.json +++ b/lab/public/bundle/manifest/scene229.json @@ -7,7 +7,7 @@ "scene229-generate-mipmaps-Bd46GUr9.js", "scene229-gltf-json-asset-DodZb4Wf.js", "scene229-gltf-normals-DYhLwXNX.js", - "scene229-pbr-renderable-DvzMaFdn.js", + "scene229-pbr-renderable-Dx4_fUjm.js", "scene229-unlit-fragment-DWtvt7yQ.js", "scene229.js" ] diff --git a/lab/public/bundle/manifest/scene23.json b/lab/public/bundle/manifest/scene23.json index 8b736f4064..ed74528cb2 100644 --- a/lab/public/bundle/manifest/scene23.json +++ b/lab/public/bundle/manifest/scene23.json @@ -1,6 +1,6 @@ { "rawKB": 78.2, - "gzipKB": 32.3, + "gzipKB": 32.4, "ignoredRawKB": 0, "runtimeChunks": [ "scene23-anisotropy-fragment-CbNkTpSR.js", @@ -8,7 +8,7 @@ "scene23-background-ground-DmmKHN9b.js", "scene23-cubemap-skybox-material-sjF5EPm1.js", "scene23-ibl-fragment-CeRrvT96.js", - "scene23-pbr-renderable-CqMrypUZ.js", + "scene23-pbr-renderable-Cl6UhMRU.js", "scene23-rgbd-decode-BeChsxxY.js", "scene23-scene-uniforms-FTYH6Ct0.js", "scene23-wgsl-helpers-BgB2AJrF.js", diff --git a/lab/public/bundle/manifest/scene240.json b/lab/public/bundle/manifest/scene240.json index b6bd6861ec..f9d318b9f8 100644 --- a/lab/public/bundle/manifest/scene240.json +++ b/lab/public/bundle/manifest/scene240.json @@ -7,12 +7,12 @@ "scene240-generate-mipmaps-BQZ9ivTX.js", "scene240-gltf-animation-aBVjSk7N.js", "scene240-gltf-feature-animations-Cm8MU3RN.js", - "scene240-gltf-feature-registry-C74TNvRU.js", + "scene240-gltf-feature-registry-L__OYK3a.js", "scene240-gltf-json-asset-C-b8cTJb.js", "scene240-gltf-multi-buffer-Cwm5u1Qq.js", "scene240-gltf-normals-DYhLwXNX.js", "scene240-ibl-fragment-CeRrvT96.js", - "scene240-pbr-renderable-Cq6JbwXQ.js", + "scene240-pbr-renderable-DvLsriQm.js", "scene240-rgbd-decode-2FzzQzZ2.js", "scene240-scene-uniforms-FTYH6Ct0.js", "scene240.js" diff --git a/lab/public/bundle/manifest/scene241.json b/lab/public/bundle/manifest/scene241.json index 406b5ccbdf..e900e9e9df 100644 --- a/lab/public/bundle/manifest/scene241.json +++ b/lab/public/bundle/manifest/scene241.json @@ -1,6 +1,6 @@ { - "rawKB": 162, - "gzipKB": 66.3, + "rawKB": 162.3, + "gzipKB": 66.5, "ignoredRawKB": 0, "runtimeChunks": [ "scene241-alpha-test-fragment-BpzeKSEk.js", @@ -21,19 +21,19 @@ "scene241-gltf-feature-animation-pointer-Ch_iHImp.js", "scene241-gltf-feature-animations-DEv1D7Id.js", "scene241-gltf-feature-lights-punctual-BYIHIGm7.js", - "scene241-gltf-feature-registry-GETfMPgM.js", + "scene241-gltf-feature-registry-Dhd9yQ5P.js", "scene241-gltf-json-asset-Dn-uYlO4.js", "scene241-gltf-light-pointer-state-B7kFTRxK.js", - "scene241-gltf-pbr-builder-ext-D5jBhNyS.js", + "scene241-gltf-pbr-builder-ext-B6jL1YDV.js", "scene241-ibl-fragment-CeRrvT96.js", "scene241-iridescence-fragment-M_PnPSYj.js", "scene241-light-base-BaUj6FJ5.js", "scene241-light-matrix-CtsX4GmG.js", "scene241-pbr-refraction-BhnHiaxK.js", - "scene241-pbr-renderable-Vg0NCMae.js", - "scene241-pbr-template-ext-BoJ8SFLM.js", + "scene241-pbr-renderable-19cLGNX3.js", + "scene241-pbr-template-ext-CiHpOV5G.js", "scene241-pbr-transmission-ext-C1CsruQy.js", - "scene241-reflectance-fragment-btSdECMQ.js", + "scene241-reflectance-fragment-AymjkEuD.js", "scene241-rgbd-decode-Bil1WUEk.js", "scene241-scene-uniforms-FTYH6Ct0.js", "scene241-sheen-fragment-CnpkgSCA.js", diff --git a/lab/public/bundle/manifest/scene242.json b/lab/public/bundle/manifest/scene242.json index cf98201213..060e391aec 100644 --- a/lab/public/bundle/manifest/scene242.json +++ b/lab/public/bundle/manifest/scene242.json @@ -10,10 +10,10 @@ "scene242-gltf-ext-emissive-strength-CButLZnK.js", "scene242-gltf-feature-animation-pointer-tuVf2ksY.js", "scene242-gltf-feature-animations-c59Hsp8m.js", - "scene242-gltf-feature-registry-BMTwJrLh.js", + "scene242-gltf-feature-registry-CFzXPHvI.js", "scene242-gltf-json-asset-89J8Oj0_.js", "scene242-ibl-fragment-CeRrvT96.js", - "scene242-pbr-renderable-D53YrDns.js", + "scene242-pbr-renderable-tK8PEdbm.js", "scene242-rgbd-decode-DapdOyyV.js", "scene242-scene-uniforms-FTYH6Ct0.js", "scene242-visibility-J3hTZChg.js", diff --git a/lab/public/bundle/manifest/scene243.json b/lab/public/bundle/manifest/scene243.json index 70826938ca..f17d4d7caa 100644 --- a/lab/public/bundle/manifest/scene243.json +++ b/lab/public/bundle/manifest/scene243.json @@ -1,6 +1,6 @@ { - "rawKB": 97.7, - "gzipKB": 41.2, + "rawKB": 98, + "gzipKB": 41.4, "ignoredRawKB": 0, "runtimeChunks": [ "scene243-create-morph-targets-C_lcfVOA.js", @@ -9,13 +9,13 @@ "scene243-gltf-feature-animations-CX3jw94s.js", "scene243-gltf-feature-extras-VHPteGay.js", "scene243-gltf-feature-morph-BCUQi4W_.js", - "scene243-gltf-feature-registry-1-3VZLsE.js", + "scene243-gltf-feature-registry-BnUIj1bS.js", "scene243-gltf-json-asset-Cgf3mpUp.js", - "scene243-gltf-pbr-builder-ext-CVrSOAh6.js", + "scene243-gltf-pbr-builder-ext-CxghLmO7.js", "scene243-ibl-fragment-CeRrvT96.js", - "scene243-morph-fragment-DRu-8PnL.js", - "scene243-pbr-renderable-0jG2_8Nb.js", - "scene243-pbr-template-ext-BoJ8SFLM.js", + "scene243-morph-fragment-C7xsFBq_.js", + "scene243-pbr-renderable-DjDLAo4b.js", + "scene243-pbr-template-ext-CiHpOV5G.js", "scene243-rgbd-decode-CtyuiJdH.js", "scene243-scene-uniforms-FTYH6Ct0.js", "scene243-texture-2d-DQo3n8D6.js", diff --git a/lab/public/bundle/manifest/scene244.json b/lab/public/bundle/manifest/scene244.json index 4825b3c9ef..d46edbbd95 100644 --- a/lab/public/bundle/manifest/scene244.json +++ b/lab/public/bundle/manifest/scene244.json @@ -1,6 +1,6 @@ { - "rawKB": 134, - "gzipKB": 54.3, + "rawKB": 134.3, + "gzipKB": 54.4, "ignoredRawKB": 0, "runtimeChunks": [ "scene244-animation-pointer-ext-Cj5MCL8S.js", @@ -12,15 +12,15 @@ "scene244-gltf-ext-uv-transform-YGWG8v_J.js", "scene244-gltf-feature-animation-pointer-IIOn7FNX.js", "scene244-gltf-feature-animations-C9Kp7IJh.js", - "scene244-gltf-feature-registry-Dz603yoZ.js", + "scene244-gltf-feature-registry-BcRWAwOd.js", "scene244-gltf-json-asset-BJhL5QXR.js", - "scene244-gltf-pbr-builder-ext-BI2CisGc.js", + "scene244-gltf-pbr-builder-ext-FQk9L_MM.js", "scene244-ibl-fragment-CeRrvT96.js", "scene244-pbr-refraction-Clcnd8cy.js", - "scene244-pbr-renderable-DCY7oUoN.js", - "scene244-pbr-template-ext-BoJ8SFLM.js", + "scene244-pbr-renderable-BeyPkXIH.js", + "scene244-pbr-template-ext-CiHpOV5G.js", "scene244-pbr-transmission-ext-DI1Jfp2a.js", - "scene244-reflectance-fragment-COQ8Gwb2.js", + "scene244-reflectance-fragment-jGOq-qd3.js", "scene244-rgbd-decode-DC93u83f.js", "scene244-scene-uniforms-FTYH6Ct0.js", "scene244-texture-2d-DQo3n8D6.js", diff --git a/lab/public/bundle/manifest/scene245.json b/lab/public/bundle/manifest/scene245.json index fce334e9fe..c9880568fe 100644 --- a/lab/public/bundle/manifest/scene245.json +++ b/lab/public/bundle/manifest/scene245.json @@ -1,6 +1,6 @@ { - "rawKB": 100.9, - "gzipKB": 42.8, + "rawKB": 101, + "gzipKB": 42.9, "ignoredRawKB": 0, "runtimeChunks": [ "scene245-create-skeleton-CU7b8eKn.js", @@ -8,18 +8,18 @@ "scene245-generate-mipmaps-WM6bVf2v.js", "scene245-gltf-animation-l40-wjM0.js", "scene245-gltf-feature-animations-JDRZSSUs.js", - "scene245-gltf-feature-registry-DjyIW9El.js", + "scene245-gltf-feature-registry-sYLLZPDM.js", "scene245-gltf-feature-skeleton-D19NTiji.js", "scene245-gltf-interleave-7NBE5rBz.js", "scene245-gltf-json-asset-D_ddxWqm.js", "scene245-gltf-normals-DYhLwXNX.js", "scene245-gltf-strided-attribute-CGKc0Sx6.js", "scene245-ibl-fragment-CeRrvT96.js", - "scene245-pbr-renderable-LroVgmo8.js", - "scene245-pbr-template-ext-BoJ8SFLM.js", + "scene245-pbr-renderable-CXtAq-cT.js", + "scene245-pbr-template-ext-CiHpOV5G.js", "scene245-rgbd-decode-CKe7_W5g.js", "scene245-scene-uniforms-FTYH6Ct0.js", - "scene245-skeleton-fragment-CBRXJtTI.js", + "scene245-skeleton-fragment-By0Y5aLx.js", "scene245.js" ] } diff --git a/lab/public/bundle/manifest/scene246.json b/lab/public/bundle/manifest/scene246.json index 8453a1d784..a25e072021 100644 --- a/lab/public/bundle/manifest/scene246.json +++ b/lab/public/bundle/manifest/scene246.json @@ -8,7 +8,7 @@ "scene246-generate-mipmaps-DzKvtUax.js", "scene246-gltf-animation-Bg1KL3K9.js", "scene246-gltf-feature-animations-DxZ057Zf.js", - "scene246-gltf-feature-registry-BnJCABTP.js", + "scene246-gltf-feature-registry-D8d_ZlRy.js", "scene246-gltf-feature-skeleton-CD4nSwQl.js", "scene246-gltf-interleave-ZNL-XZje.js", "scene246-gltf-json-asset-BLYKbDyg.js", @@ -16,10 +16,10 @@ "scene246-gltf-normals-DYhLwXNX.js", "scene246-gltf-strided-attribute-R3NdoKEL.js", "scene246-ibl-fragment-CeRrvT96.js", - "scene246-pbr-renderable-Bw0pHWss.js", + "scene246-pbr-renderable-CA_JxnpX.js", "scene246-rgbd-decode-DQhLUjb0.js", "scene246-scene-uniforms-FTYH6Ct0.js", - "scene246-skeleton-fragment-C2nb7KGM.js", + "scene246-skeleton-fragment-CsNvtv95.js", "scene246.js" ] } diff --git a/lab/public/bundle/manifest/scene247.json b/lab/public/bundle/manifest/scene247.json index e757f80f9b..f26590d29e 100644 --- a/lab/public/bundle/manifest/scene247.json +++ b/lab/public/bundle/manifest/scene247.json @@ -6,11 +6,11 @@ "scene247-generate-mipmaps-Crazqgzv.js", "scene247-gltf-feature-extras-VHPteGay.js", "scene247-gltf-feature-gpu-instancing-BQnnR0-8.js", - "scene247-gltf-feature-registry-D5GU07nD.js", + "scene247-gltf-feature-registry-BRI88AOY.js", "scene247-gltf-json-asset-CILluwFg.js", "scene247-gltf-multi-buffer-Cwm5u1Qq.js", "scene247-ibl-fragment-CeRrvT96.js", - "scene247-pbr-renderable-925JYzy4.js", + "scene247-pbr-renderable-9WBHQegD.js", "scene247-rgbd-decode-ClWWmAM6.js", "scene247-scene-uniforms-FTYH6Ct0.js", "scene247-thin-instance-fragment-CBn2miAC.js", diff --git a/lab/public/bundle/manifest/scene248.json b/lab/public/bundle/manifest/scene248.json index 50f7c90918..3e8fcd2f3f 100644 --- a/lab/public/bundle/manifest/scene248.json +++ b/lab/public/bundle/manifest/scene248.json @@ -1,5 +1,5 @@ { - "rawKB": 77.2, + "rawKB": 77.3, "gzipKB": 32, "ignoredRawKB": 0, "runtimeChunks": [ @@ -7,7 +7,7 @@ "scene248-gltf-json-asset-BxrCZM5A.js", "scene248-gltf-sampler-desc-CdC-ieMf.js", "scene248-ibl-fragment-CeRrvT96.js", - "scene248-pbr-renderable-B-WKu87O.js", + "scene248-pbr-renderable-fTXI0LOl.js", "scene248-rgbd-decode-CLeq7oRj.js", "scene248-scene-uniforms-FTYH6Ct0.js", "scene248.js" diff --git a/lab/public/bundle/manifest/scene249.json b/lab/public/bundle/manifest/scene249.json index 897a061554..671502b317 100644 --- a/lab/public/bundle/manifest/scene249.json +++ b/lab/public/bundle/manifest/scene249.json @@ -1,5 +1,5 @@ { - "rawKB": 78.5, + "rawKB": 78.6, "gzipKB": 32.6, "ignoredRawKB": 0, "runtimeChunks": [ @@ -8,8 +8,8 @@ "scene249-gltf-color-normalize-4-WGzPL2.js", "scene249-gltf-json-asset-tL8UliXg.js", "scene249-ibl-fragment-CeRrvT96.js", - "scene249-pbr-renderable-D2F5R9ft.js", - "scene249-pbr-template-ext-BoJ8SFLM.js", + "scene249-pbr-renderable-uDRv_ihz.js", + "scene249-pbr-template-ext-CiHpOV5G.js", "scene249-rgbd-decode-BRTm0Szn.js", "scene249-scene-uniforms-FTYH6Ct0.js", "scene249.js" diff --git a/lab/public/bundle/manifest/scene251.json b/lab/public/bundle/manifest/scene251.json index 8320bb140e..46390364af 100644 --- a/lab/public/bundle/manifest/scene251.json +++ b/lab/public/bundle/manifest/scene251.json @@ -7,12 +7,12 @@ "scene251-generate-mipmaps-QjbHE23R.js", "scene251-gltf-animation-Cn2klEOG.js", "scene251-gltf-feature-animations-BBOyTs9Y.js", - "scene251-gltf-feature-registry-BtCt01SY.js", + "scene251-gltf-feature-registry-BuPXgxGD.js", "scene251-gltf-feature-skeleton-C4O8Sov-.js", "scene251-gltf-glb-parser-8AD91ACR.js", "scene251-multilight-wgsl-C4_Zdm3l.js", - "scene251-pbr-renderable-3GXHlyHz.js", - "scene251-skeleton-fragment-Bdq-fIse.js", + "scene251-pbr-renderable-CUoU6ST_.js", + "scene251-skeleton-fragment-CnwCxKHG.js", "scene251.js" ] } diff --git a/lab/public/bundle/manifest/scene253.json b/lab/public/bundle/manifest/scene253.json index 018eeec19b..08bd2a3aa3 100644 --- a/lab/public/bundle/manifest/scene253.json +++ b/lab/public/bundle/manifest/scene253.json @@ -1,6 +1,6 @@ { - "rawKB": 153.3, - "gzipKB": 64.7, + "rawKB": 153.6, + "gzipKB": 64.9, "ignoredRawKB": 0, "runtimeChunks": [ "scene253-alpha-test-fragment-CBuxkQtx.js", @@ -24,26 +24,26 @@ "scene253-gltf-feature-extras-VHPteGay.js", "scene253-gltf-feature-lights-punctual-BD0mrLuD.js", "scene253-gltf-feature-morph-OgvZWqfo.js", - "scene253-gltf-feature-registry-BBNPqaFs.js", + "scene253-gltf-feature-registry-Ba7sf2h1.js", "scene253-gltf-feature-skeleton-BYmZVC5E.js", "scene253-gltf-json-asset-CPydyTRL.js", "scene253-gltf-light-pointer-state-B7kFTRxK.js", - "scene253-gltf-pbr-builder-ext-DiUeuxVX.js", + "scene253-gltf-pbr-builder-ext-D61amfcH.js", "scene253-gltf-sampler-desc-DUjWj98i.js", "scene253-ibl-fragment-CeRrvT96.js", "scene253-iridescence-fragment-T_Mzh3Ja.js", "scene253-light-base-DXdV2nlj.js", "scene253-light-matrix-BpE3lP6k.js", - "scene253-morph-fragment-ZqFbj5lS.js", + "scene253-morph-fragment-C-hvw7SR.js", "scene253-multilight-wgsl-D9gPIJS-.js", "scene253-pbr-refraction-BbfkJ5jS.js", - "scene253-pbr-renderable-0DMDp-ep.js", - "scene253-pbr-template-ext-BoJ8SFLM.js", + "scene253-pbr-renderable-Bjul0AFo.js", + "scene253-pbr-template-ext-CiHpOV5G.js", "scene253-pbr-transmission-ext-BIxyFQt5.js", - "scene253-reflectance-fragment-ua5TUzB_.js", + "scene253-reflectance-fragment-CC-U--Xr.js", "scene253-rgbd-decode-Cz9OR-T-.js", "scene253-scene-uniforms-FTYH6Ct0.js", - "scene253-skeleton-fragment-D-p9Qp6A.js", + "scene253-skeleton-fragment-Dm7Z9U6B.js", "scene253-spot-light-DxkNmtrY.js", "scene253-texture-2d-DQo3n8D6.js", "scene253-unlit-fragment-DWtvt7yQ.js", diff --git a/lab/public/bundle/manifest/scene254.json b/lab/public/bundle/manifest/scene254.json index 2ac70c8e20..6f7a7f3f4a 100644 --- a/lab/public/bundle/manifest/scene254.json +++ b/lab/public/bundle/manifest/scene254.json @@ -1,16 +1,16 @@ { - "rawKB": 92.6, + "rawKB": 92.7, "gzipKB": 38.5, "ignoredRawKB": 0, "runtimeChunks": [ "scene254-generate-mipmaps-CYwo5pXb.js", "scene254-gltf-animation-BROLRbEL.js", "scene254-gltf-feature-animations-XsSEzprH.js", - "scene254-gltf-feature-registry-CfXVLb6E.js", + "scene254-gltf-feature-registry-9OXzaY_m.js", "scene254-gltf-json-asset-CpRpkx7j.js", "scene254-gltf-sampler-denorm-Bui_WQIw.js", "scene254-ibl-fragment-CeRrvT96.js", - "scene254-pbr-renderable-Dmc7ahpa.js", + "scene254-pbr-renderable-BRNiuBx9.js", "scene254-rgbd-decode-JnEXktCX.js", "scene254-scene-uniforms-FTYH6Ct0.js", "scene254-singlelight-hemispheric-wgsl-Dvj4Fh1w.js", diff --git a/lab/public/bundle/manifest/scene255.json b/lab/public/bundle/manifest/scene255.json index 7dd47e6b4c..a04427eae2 100644 --- a/lab/public/bundle/manifest/scene255.json +++ b/lab/public/bundle/manifest/scene255.json @@ -8,15 +8,15 @@ "scene255-generate-mipmaps-B7LdcXNp.js", "scene255-gltf-animation-BbNxs5BN.js", "scene255-gltf-feature-animations-Cd2IBM3n.js", - "scene255-gltf-feature-registry-DxpnxsmU.js", + "scene255-gltf-feature-registry-Mn1kFHql.js", "scene255-gltf-feature-skeleton-DHaKW6Xm.js", "scene255-gltf-json-asset-vxujGMAS.js", "scene255-gltf-normals-DYhLwXNX.js", "scene255-ibl-fragment-CeRrvT96.js", - "scene255-pbr-renderable-DxZ9bGr6.js", + "scene255-pbr-renderable-qZ7DJHy1.js", "scene255-rgbd-decode-CfRM19UA.js", "scene255-scene-uniforms-FTYH6Ct0.js", - "scene255-skeleton-fragment-e3JCYua8.js", + "scene255-skeleton-fragment-ECVoDkLm.js", "scene255.js" ] } diff --git a/lab/public/bundle/manifest/scene257.json b/lab/public/bundle/manifest/scene257.json index 5ea715df40..ea8060f302 100644 --- a/lab/public/bundle/manifest/scene257.json +++ b/lab/public/bundle/manifest/scene257.json @@ -1,16 +1,16 @@ { - "rawKB": 80.2, + "rawKB": 80.3, "gzipKB": 33.2, "ignoredRawKB": 0, "runtimeChunks": [ "scene257-flat-normal-wgsl-Cm9mM4tC.js", "scene257-generate-mipmaps-C2jNwHZ4.js", "scene257-gltf-feature-primitive-BMqT3MMH.js", - "scene257-gltf-feature-registry-DWq5mFJb.js", + "scene257-gltf-feature-registry-b5VBsm7E.js", "scene257-gltf-json-asset-DAx_-Tyr.js", "scene257-gltf-normals-DYhLwXNX.js", "scene257-ibl-fragment-CeRrvT96.js", - "scene257-pbr-renderable-nqM-qjiP.js", + "scene257-pbr-renderable-Bfh8IaGu.js", "scene257-rgbd-decode-D-PyAZjs.js", "scene257-scene-uniforms-FTYH6Ct0.js", "scene257.js" diff --git a/lab/public/bundle/manifest/scene258.json b/lab/public/bundle/manifest/scene258.json index 6ddaa28a63..670375d134 100644 --- a/lab/public/bundle/manifest/scene258.json +++ b/lab/public/bundle/manifest/scene258.json @@ -1,5 +1,5 @@ { - "rawKB": 83, + "rawKB": 83.1, "gzipKB": 34.9, "ignoredRawKB": 0, "runtimeChunks": [ @@ -10,8 +10,8 @@ "scene258-gltf-normals-DYhLwXNX.js", "scene258-gltf-uv-denorm-BTmmiHmh.js", "scene258-ibl-fragment-CeRrvT96.js", - "scene258-pbr-renderable-DIp7l4PG.js", - "scene258-pbr-template-ext-BoJ8SFLM.js", + "scene258-pbr-renderable-BhMf-EQe.js", + "scene258-pbr-template-ext-CiHpOV5G.js", "scene258-rgbd-decode-DCksh81N.js", "scene258-scene-uniforms-FTYH6Ct0.js", "scene258.js" diff --git a/lab/public/bundle/manifest/scene259.json b/lab/public/bundle/manifest/scene259.json index 0cc90b7056..c17d244395 100644 --- a/lab/public/bundle/manifest/scene259.json +++ b/lab/public/bundle/manifest/scene259.json @@ -9,7 +9,7 @@ "scene259-gltf-json-asset-DmawqpbX.js", "scene259-gltf-normals-DYhLwXNX.js", "scene259-ibl-fragment-CeRrvT96.js", - "scene259-pbr-renderable-97YZZuDA.js", + "scene259-pbr-renderable-hbY_bLnp.js", "scene259-rgbd-decode-lYDuKaAU.js", "scene259-scene-uniforms-FTYH6Ct0.js", "scene259.js" diff --git a/lab/public/bundle/manifest/scene26.json b/lab/public/bundle/manifest/scene26.json index ce50326604..3fb920362e 100644 --- a/lab/public/bundle/manifest/scene26.json +++ b/lab/public/bundle/manifest/scene26.json @@ -8,7 +8,7 @@ "scene26-gltf-glb-parser-wcPvSq_F.js", "scene26-ibl-fragment-CeRrvT96.js", "scene26-ibl-skybox-wgsl-CFIBOHHx.js", - "scene26-pbr-renderable-V-sRCQCD.js", + "scene26-pbr-renderable-H0-g9-Fg.js", "scene26-rgbd-decode-Y-O5hyxs.js", "scene26-singlelight-point-wgsl-BFpv7Wxi.js", "scene26-subsurface-fragment-kEd_nF4G.js", diff --git a/lab/public/bundle/manifest/scene260.json b/lab/public/bundle/manifest/scene260.json index 2a49db8496..284c2fb006 100644 --- a/lab/public/bundle/manifest/scene260.json +++ b/lab/public/bundle/manifest/scene260.json @@ -6,11 +6,11 @@ "scene260-flat-normal-wgsl-Cm9mM4tC.js", "scene260-generate-mipmaps-BDaYF730.js", "scene260-gltf-feature-primitive-BMqT3MMH.js", - "scene260-gltf-feature-registry-DZ1tdTRS.js", + "scene260-gltf-feature-registry-BbMGmG76.js", "scene260-gltf-json-asset-B1CNeG6-.js", "scene260-gltf-normals-DYhLwXNX.js", "scene260-ibl-fragment-CeRrvT96.js", - "scene260-pbr-renderable-BlCuUVOL.js", + "scene260-pbr-renderable-D7Df2DyA.js", "scene260-rgbd-decode-DrU2yE9J.js", "scene260-scene-uniforms-FTYH6Ct0.js", "scene260.js" diff --git a/lab/public/bundle/manifest/scene265.json b/lab/public/bundle/manifest/scene265.json index cf8fa8c3b6..7e3ee43fee 100644 --- a/lab/public/bundle/manifest/scene265.json +++ b/lab/public/bundle/manifest/scene265.json @@ -1,16 +1,16 @@ { - "rawKB": 80, - "gzipKB": 33.4, + "rawKB": 80.1, + "gzipKB": 33.5, "ignoredRawKB": 0, "runtimeChunks": [ "scene265-generate-mipmaps-B94XvMrD.js", "scene265-gltf-ext-lights-image-based-Cy0y6Rcm.js", - "scene265-gltf-feature-registry-BrlZcqyS.js", + "scene265-gltf-feature-registry-BupwipfZ.js", "scene265-gltf-json-asset-D5Ypa449.js", "scene265-ibl-cubemap-upload-aeOmgodq.js", "scene265-ibl-env-assembly-c2UHDMKi.js", "scene265-ibl-fragment-CeRrvT96.js", - "scene265-pbr-renderable-BW7BE1kN.js", + "scene265-pbr-renderable-8tA3k2Md.js", "scene265.js" ] } diff --git a/lab/public/bundle/manifest/scene27.json b/lab/public/bundle/manifest/scene27.json index a4f1307a3a..8472d1e7c9 100644 --- a/lab/public/bundle/manifest/scene27.json +++ b/lab/public/bundle/manifest/scene27.json @@ -1,17 +1,17 @@ { - "rawKB": 82.8, + "rawKB": 83, "gzipKB": 33.9, "ignoredRawKB": 0, "runtimeChunks": [ "scene27-generate-mipmaps-CaLzDGPp.js", "scene27-gltf-ext-dielectric-C6hvXXiF.js", - "scene27-gltf-feature-registry-Diywymzi.js", - "scene27-gltf-feature-variants-BNhy8bR8.js", + "scene27-gltf-feature-registry-Cw3ZYKOU.js", + "scene27-gltf-feature-variants-DaDkL0ns.js", "scene27-gltf-glb-parser-By8noE3G.js", - "scene27-gltf-pbr-builder-ext-OvOYi-mh.js", - "scene27-gltf-variants-I6zLde_W.js", - "scene27-pbr-renderable-DhcQ4cqe.js", - "scene27-reflectance-fragment-CvRmBvQ0.js", + "scene27-gltf-pbr-builder-ext-DRuiCPJl.js", + "scene27-gltf-variants-D0uPiv4k.js", + "scene27-pbr-renderable-C3dYtQmZ.js", + "scene27-reflectance-fragment-BUy2V3-P.js", "scene27-singlelight-hemispheric-wgsl-BOG9p7K3.js", "scene27-texture-2d-DQo3n8D6.js", "scene27.js" diff --git a/lab/public/bundle/manifest/scene28.json b/lab/public/bundle/manifest/scene28.json index 47551b9871..91ff7a7321 100644 --- a/lab/public/bundle/manifest/scene28.json +++ b/lab/public/bundle/manifest/scene28.json @@ -1,15 +1,15 @@ { "rawKB": 86.8, - "gzipKB": 35.4, + "gzipKB": 35.5, "ignoredRawKB": 0, "runtimeChunks": [ "scene28-clearcoat-fragment-DOT6cYUU.js", "scene28-generate-mipmaps-7w1hCgCw.js", "scene28-gltf-ext-clearcoat-BgaLgSgD.js", - "scene28-gltf-feature-registry-D2L_-IYW.js", + "scene28-gltf-feature-registry-DOn7lKJZ.js", "scene28-gltf-json-asset-BJmxzYNI.js", "scene28-ibl-fragment-CeRrvT96.js", - "scene28-pbr-renderable-CzHHWfVB.js", + "scene28-pbr-renderable-ByBxAG11.js", "scene28-rgbd-decode-wUvHpHPX.js", "scene28-scene-uniforms-FTYH6Ct0.js", "scene28.js" diff --git a/lab/public/bundle/manifest/scene29.json b/lab/public/bundle/manifest/scene29.json index e39f0e14fe..439bbf4359 100644 --- a/lab/public/bundle/manifest/scene29.json +++ b/lab/public/bundle/manifest/scene29.json @@ -1,17 +1,17 @@ { - "rawKB": 90.5, - "gzipKB": 37.4, + "rawKB": 90.8, + "gzipKB": 37.6, "ignoredRawKB": 0, "runtimeChunks": [ "scene29-generate-mipmaps-DJCYSY1_.js", "scene29-gltf-ext-sheen-Dv23b_3T.js", "scene29-gltf-ext-uv-transform-tUSEOqA7.js", - "scene29-gltf-feature-registry-Dp8XI_H4.js", + "scene29-gltf-feature-registry-BBlGSmz5.js", "scene29-gltf-json-asset-BCPycsr9.js", - "scene29-gltf-pbr-builder-ext-CpjrBrd7.js", + "scene29-gltf-pbr-builder-ext-BS75XjMB.js", "scene29-ibl-fragment-CeRrvT96.js", - "scene29-pbr-renderable-DiV_vvvN.js", - "scene29-pbr-template-ext-BoJ8SFLM.js", + "scene29-pbr-renderable-Br3tz0Wi.js", + "scene29-pbr-template-ext-CiHpOV5G.js", "scene29-rgbd-decode-DZaCQfRj.js", "scene29-scene-uniforms-FTYH6Ct0.js", "scene29-sheen-fragment-D_ljwukw.js", diff --git a/lab/public/bundle/manifest/scene30.json b/lab/public/bundle/manifest/scene30.json index ed88612a90..13cee4584e 100644 --- a/lab/public/bundle/manifest/scene30.json +++ b/lab/public/bundle/manifest/scene30.json @@ -1,6 +1,6 @@ { - "rawKB": 104, - "gzipKB": 43, + "rawKB": 104.2, + "gzipKB": 43.1, "ignoredRawKB": 0, "runtimeChunks": [ "scene30-alpha-test-fragment-Dp7v2RIU.js", @@ -8,13 +8,13 @@ "scene30-gltf-ext-dielectric-C6hvXXiF.js", "scene30-gltf-ext-uv-transform-DQN5DAiE.js", "scene30-gltf-feature-draco-BSbw1ZBU.js", - "scene30-gltf-feature-registry-rQ02I8Mf.js", + "scene30-gltf-feature-registry-CK1Gb-mk.js", "scene30-gltf-glb-parser-DJ0cTJ-4.js", - "scene30-gltf-pbr-builder-ext-B4o2oNmo.js", + "scene30-gltf-pbr-builder-ext-a6q_Jsam.js", "scene30-ibl-fragment-CeRrvT96.js", "scene30-pbr-refraction-BZI7joFF.js", - "scene30-pbr-renderable-BdsP3ar9.js", - "scene30-pbr-template-ext-BoJ8SFLM.js", + "scene30-pbr-renderable-C0nNN8KI.js", + "scene30-pbr-template-ext-CiHpOV5G.js", "scene30-pbr-transmission-ext-BWXOxiAJ.js", "scene30-rgbd-decode-RQYTGqhL.js", "scene30-scene-uniforms-FTYH6Ct0.js", diff --git a/lab/public/bundle/manifest/scene31.json b/lab/public/bundle/manifest/scene31.json index 546f62ba68..9a4ce434cc 100644 --- a/lab/public/bundle/manifest/scene31.json +++ b/lab/public/bundle/manifest/scene31.json @@ -1,15 +1,15 @@ { - "rawKB": 80.2, + "rawKB": 80.3, "gzipKB": 33, "ignoredRawKB": 0, "runtimeChunks": [ "scene31-emissive-fragment-C1TNSo0w.js", "scene31-generate-mipmaps-CoCbB-UD.js", "scene31-gltf-ext-emissive-strength-CButLZnK.js", - "scene31-gltf-feature-registry-C3ehWzyA.js", + "scene31-gltf-feature-registry-DvtgQyqM.js", "scene31-gltf-glb-parser-CzRZVo57.js", "scene31-ibl-fragment-CeRrvT96.js", - "scene31-pbr-renderable-Du_q1nFe.js", + "scene31-pbr-renderable-BtZdTFrP.js", "scene31-rgbd-decode-C5kd6U3R.js", "scene31-scene-uniforms-FTYH6Ct0.js", "scene31.js" diff --git a/lab/public/bundle/manifest/scene32.json b/lab/public/bundle/manifest/scene32.json index db55aecc46..508afa3014 100644 --- a/lab/public/bundle/manifest/scene32.json +++ b/lab/public/bundle/manifest/scene32.json @@ -5,10 +5,10 @@ "runtimeChunks": [ "scene32-generate-mipmaps-DdnhjgK3.js", "scene32-gltf-ext-unlit-1vUYfF7v.js", - "scene32-gltf-feature-registry-DbJY0EDA.js", + "scene32-gltf-feature-registry-mmoWs9VW.js", "scene32-gltf-glb-parser-BX2AS-bF.js", "scene32-ibl-fragment-CeRrvT96.js", - "scene32-pbr-renderable-BZrTmnOw.js", + "scene32-pbr-renderable-D6ARAOMy.js", "scene32-rgbd-decode-3FngBUdB.js", "scene32-scene-uniforms-FTYH6Ct0.js", "scene32-unlit-fragment-DWtvt7yQ.js", diff --git a/lab/public/bundle/manifest/scene33.json b/lab/public/bundle/manifest/scene33.json index 9392a1dff6..72055c09a9 100644 --- a/lab/public/bundle/manifest/scene33.json +++ b/lab/public/bundle/manifest/scene33.json @@ -6,7 +6,7 @@ "scene33-generate-mipmaps-Z_0Gnbub.js", "scene33-gltf-ext-dielectric-C6hvXXiF.js", "scene33-gltf-feature-lights-punctual-Bo3_Vssl.js", - "scene33-gltf-feature-registry-tsvCNrqB.js", + "scene33-gltf-feature-registry-BXAbDsrK.js", "scene33-gltf-glb-parser-DMBUHtjv.js", "scene33-gltf-light-pointer-state-B7kFTRxK.js", "scene33-gltf-sampler-desc-ChMUJ3dG.js", @@ -14,7 +14,7 @@ "scene33-light-base-D0CungYX.js", "scene33-multilight-wgsl-D3rF1wIQ.js", "scene33-pbr-refraction-DI8CMlke.js", - "scene33-pbr-renderable-D1Kjy9Rj.js", + "scene33-pbr-renderable-BBqtDwqU.js", "scene33-pbr-transmission-ext-tcZohVgy.js", "scene33-point-light-CDLqYT3h.js", "scene33-rgbd-decode-3bEbw5la.js", diff --git a/lab/public/bundle/manifest/scene34.json b/lab/public/bundle/manifest/scene34.json index cfc604c94c..d84114282d 100644 --- a/lab/public/bundle/manifest/scene34.json +++ b/lab/public/bundle/manifest/scene34.json @@ -8,11 +8,11 @@ "scene34-gltf-ext-node-visibility-DWsJZC5Q.js", "scene34-gltf-feature-animation-pointer-CE1BnN9s.js", "scene34-gltf-feature-animations-BoKR3Ok5.js", - "scene34-gltf-feature-registry-BSAhVyyj.js", + "scene34-gltf-feature-registry-bcYZK_JW.js", "scene34-gltf-glb-parser-BxoFTGKn.js", "scene34-gltf-sampler-denorm-C_vs8OEN.js", "scene34-ibl-fragment-CeRrvT96.js", - "scene34-pbr-renderable-xOjNtTxl.js", + "scene34-pbr-renderable-BWMpYg-a.js", "scene34-rgbd-decode-ByPAsdES.js", "scene34-scene-uniforms-FTYH6Ct0.js", "scene34-visibility-8Ff_Kr9x.js", diff --git a/lab/public/bundle/manifest/scene35.json b/lab/public/bundle/manifest/scene35.json index fa6b18d6c3..cd2ede1703 100644 --- a/lab/public/bundle/manifest/scene35.json +++ b/lab/public/bundle/manifest/scene35.json @@ -5,10 +5,10 @@ "runtimeChunks": [ "scene35-generate-mipmaps-Dw2dswCB.js", "scene35-gltf-feature-gpu-instancing-D1uNjxTA.js", - "scene35-gltf-feature-registry-CUV2cpgs.js", + "scene35-gltf-feature-registry-DmpwKxiD.js", "scene35-gltf-glb-parser-BJyme4Vk.js", "scene35-ibl-fragment-CeRrvT96.js", - "scene35-pbr-renderable-BaquMftV.js", + "scene35-pbr-renderable-CSwk7IQe.js", "scene35-rgbd-decode-U56TFVGU.js", "scene35-scene-uniforms-FTYH6Ct0.js", "scene35-thin-instance-fragment-CBn2miAC.js", diff --git a/lab/public/bundle/manifest/scene37.json b/lab/public/bundle/manifest/scene37.json index 91682a1a8d..ec7d97c82b 100644 --- a/lab/public/bundle/manifest/scene37.json +++ b/lab/public/bundle/manifest/scene37.json @@ -1,6 +1,6 @@ { - "rawKB": 97.2, - "gzipKB": 39.9, + "rawKB": 97.5, + "gzipKB": 40, "ignoredRawKB": 0, "runtimeChunks": [ "scene37-generate-mipmaps-BikX-asb.js", @@ -8,13 +8,13 @@ "scene37-gltf-ext-dielectric-C6hvXXiF.js", "scene37-gltf-ext-sheen-Dv23b_3T.js", "scene37-gltf-ext-uv-transform-hVTzf5Q9.js", - "scene37-gltf-feature-registry-DPo3E1GX.js", + "scene37-gltf-feature-registry-DkJr-P9O.js", "scene37-gltf-glb-parser-CkbGcOCI.js", - "scene37-gltf-pbr-builder-ext-rpTZqaAk.js", + "scene37-gltf-pbr-builder-ext-D7wSTRfQ.js", "scene37-ibl-fragment-CeRrvT96.js", - "scene37-pbr-renderable-CB0scMPy.js", - "scene37-pbr-template-ext-BoJ8SFLM.js", - "scene37-reflectance-fragment-QHrzuq3H.js", + "scene37-pbr-renderable-DzmmuWTS.js", + "scene37-pbr-template-ext-CiHpOV5G.js", + "scene37-reflectance-fragment-CcPSWeb4.js", "scene37-rgbd-decode-D3VLnI-E.js", "scene37-scene-uniforms-FTYH6Ct0.js", "scene37-sheen-fragment-cN1tYYYe.js", diff --git a/lab/public/bundle/manifest/scene39.json b/lab/public/bundle/manifest/scene39.json index a9a042d9c2..2951f82beb 100644 --- a/lab/public/bundle/manifest/scene39.json +++ b/lab/public/bundle/manifest/scene39.json @@ -1,6 +1,6 @@ { - "rawKB": 109.1, - "gzipKB": 46.2, + "rawKB": 109.4, + "gzipKB": 46.3, "ignoredRawKB": 0, "runtimeChunks": [ "scene39-alpha-test-fragment-C7zCAOOO.js", @@ -12,16 +12,16 @@ "scene39-gltf-feature-animation-pointer-CLES_-mr.js", "scene39-gltf-feature-animations-eOJFbLQK.js", "scene39-gltf-feature-lights-punctual-5HuRS6Ip.js", - "scene39-gltf-feature-registry-H-MEgu9f.js", + "scene39-gltf-feature-registry-BHengqLs.js", "scene39-gltf-json-asset-BoHskl0t.js", "scene39-gltf-light-pointer-state-B7kFTRxK.js", - "scene39-gltf-pbr-builder-ext-WVY5V9c8.js", + "scene39-gltf-pbr-builder-ext-C39ednG5.js", "scene39-gltf-sampler-desc-CH6slFHf.js", "scene39-ibl-fragment-CeRrvT96.js", "scene39-light-base-DmItN1i-.js", "scene39-light-matrix-CBTBdGsb.js", - "scene39-pbr-renderable-BCPjECqo.js", - "scene39-pbr-template-ext-BoJ8SFLM.js", + "scene39-pbr-renderable-BPFnAfJ5.js", + "scene39-pbr-template-ext-CiHpOV5G.js", "scene39-rgbd-decode-YUi8rAlU.js", "scene39-scene-uniforms-FTYH6Ct0.js", "scene39-spot-light-CeU_HY5p.js", diff --git a/lab/public/bundle/manifest/scene41.json b/lab/public/bundle/manifest/scene41.json index a87178c160..1fac34e1d3 100644 --- a/lab/public/bundle/manifest/scene41.json +++ b/lab/public/bundle/manifest/scene41.json @@ -5,7 +5,7 @@ "runtimeChunks": [ "scene41-generate-mipmaps-CaoM8To3.js", "scene41-gltf-ext-spec-gloss-D60sFZYX.js", - "scene41-gltf-feature-registry-BMNRMXCb.js", + "scene41-gltf-feature-registry-hv8F_es0.js", "scene41-gltf-glb-parser-CkOP9avo.js", "scene41-gltf-sampler-desc-E_7RaQlV.js", "scene41-point-light-CnkkP9oB.js", diff --git a/lab/public/bundle/manifest/scene47.json b/lab/public/bundle/manifest/scene47.json index 5cda83b865..d7d59fcba1 100644 --- a/lab/public/bundle/manifest/scene47.json +++ b/lab/public/bundle/manifest/scene47.json @@ -5,7 +5,7 @@ "runtimeChunks": [ "scene47-generate-mipmaps-DOnKpLaE.js", "scene47-gltf-ext-spec-gloss-D60sFZYX.js", - "scene47-gltf-feature-registry-BdVr17YR.js", + "scene47-gltf-feature-registry-BVf_FYMt.js", "scene47-gltf-glb-parser-6-tsF2C2.js", "scene47-gltf-sampler-desc-BJMmnJDF.js", "scene47-shader-composer-DishuYLa.js", diff --git a/lab/public/bundle/manifest/scene5.json b/lab/public/bundle/manifest/scene5.json index 086506223f..e79a06fb75 100644 --- a/lab/public/bundle/manifest/scene5.json +++ b/lab/public/bundle/manifest/scene5.json @@ -1,5 +1,5 @@ { - "rawKB": 92.2, + "rawKB": 92.3, "gzipKB": 39, "ignoredRawKB": 0, "runtimeChunks": [ @@ -10,14 +10,14 @@ "scene5-gltf-color-normalize-4-WGzPL2.js", "scene5-gltf-feature-animations-Db-wL1ps.js", "scene5-gltf-feature-morph-BNcyLEaQ.js", - "scene5-gltf-feature-registry-CxLDVteN.js", + "scene5-gltf-feature-registry-C96LOoV9.js", "scene5-gltf-feature-skeleton-BYbOC8HD.js", "scene5-gltf-json-asset-DXOveXY1.js", - "scene5-morph-fragment-CAPye0MH.js", - "scene5-pbr-renderable-CiX2kqae.js", - "scene5-pbr-template-ext-BoJ8SFLM.js", + "scene5-morph-fragment-qc6YRxFj.js", + "scene5-pbr-renderable-CuvmiQH_.js", + "scene5-pbr-template-ext-CiHpOV5G.js", "scene5-singlelight-hemispheric-wgsl-Cu_KX2Nl.js", - "scene5-skeleton-fragment-a2FTL-0H.js", + "scene5-skeleton-fragment-FgKJRZtZ.js", "scene5.js" ] } diff --git a/lab/public/bundle/manifest/scene6.json b/lab/public/bundle/manifest/scene6.json index 8b1e90c09a..b4d0632e39 100644 --- a/lab/public/bundle/manifest/scene6.json +++ b/lab/public/bundle/manifest/scene6.json @@ -7,7 +7,7 @@ "scene6-background-ground-O1nPh-aw.js", "scene6-cubemap-skybox-material-VKHB2CT9.js", "scene6-ibl-fragment-CeRrvT96.js", - "scene6-pbr-renderable-CQd-k-bz.js", + "scene6-pbr-renderable-5QjMpYOO.js", "scene6-rgbd-decode-DltNvrvh.js", "scene6-scene-uniforms-FTYH6Ct0.js", "scene6-wgsl-helpers-BgB2AJrF.js", diff --git a/lab/public/bundle/manifest/scene7.json b/lab/public/bundle/manifest/scene7.json index 7c7cc1dd85..a15b21706e 100644 --- a/lab/public/bundle/manifest/scene7.json +++ b/lab/public/bundle/manifest/scene7.json @@ -1,5 +1,5 @@ { - "rawKB": 105.5, + "rawKB": 105.6, "gzipKB": 44.7, "ignoredRawKB": 0, "runtimeChunks": [ @@ -10,15 +10,15 @@ "scene7-gltf-animation-RP7A9LpW.js", "scene7-gltf-feature-animations-C9A-KG60.js", "scene7-gltf-feature-extras-VHPteGay.js", - "scene7-gltf-feature-registry-CxGr5to9.js", + "scene7-gltf-feature-registry-Dm5A4Gkw.js", "scene7-gltf-feature-skeleton-DaFXylO1.js", "scene7-gltf-json-asset-DelZuh7Y.js", "scene7-ibl-fragment-CeRrvT96.js", - "scene7-pbr-renderable-Dq4U_MLP.js", + "scene7-pbr-renderable-weEQGDoa.js", "scene7-rgbd-decode-C9OJGqTP.js", "scene7-scene-uniforms-FTYH6Ct0.js", "scene7-singlelight-hemispheric-wgsl-DbXoSTyY.js", - "scene7-skeleton-fragment-it0UYdZ8.js", + "scene7-skeleton-fragment-AJqg2Ax9.js", "scene7-skybox.vertex-Ban7q6IM-D1KSfOUq.js", "scene7-wgsl-helpers-BgB2AJrF.js", "scene7.js" diff --git a/lab/public/bundle/manifest/scene73.json b/lab/public/bundle/manifest/scene73.json index 78dedbb0e7..fdc655242b 100644 --- a/lab/public/bundle/manifest/scene73.json +++ b/lab/public/bundle/manifest/scene73.json @@ -10,14 +10,14 @@ "scene73-fragment-output-CfRmfbPv.js", "scene73-generate-mipmaps-DcnO72FN.js", "scene73-gltf-ext-clearcoat-BgaLgSgD.js", - "scene73-gltf-feature-registry-CzL0QiB3.js", + "scene73-gltf-feature-registry-CE7chzXt.js", "scene73-gltf-glb-parser-Bm1IrZjT.js", "scene73-ibl-fragment-CeRrvT96.js", "scene73-input-block-lrbZBZJO.js", "scene73-node-env-2j3ozSNZ.js", "scene73-node-renderable-Ik7zhWQu.js", "scene73-pbr-metallic-roughness-block-full-CgKHgEzu.js", - "scene73-pbr-renderable-DyDMyHTB.js", + "scene73-pbr-renderable-ByHW-E0t.js", "scene73-perturb-normal-Bqx-TYaB.js", "scene73-reflection-block-CIXuH-z0.js", "scene73-rgbd-decode-Bpa-sBKE.js", diff --git a/lab/public/bundle/manifest/scene8.json b/lab/public/bundle/manifest/scene8.json index ff623f719d..311de1754f 100644 --- a/lab/public/bundle/manifest/scene8.json +++ b/lab/public/bundle/manifest/scene8.json @@ -5,7 +5,7 @@ "runtimeChunks": [ "scene8-background-hdr-skybox-FeMZnJ2H.js", "scene8-ibl-fragment-CeRrvT96.js", - "scene8-pbr-renderable-B8J6h-Vi.js", + "scene8-pbr-renderable-B1Em0ul0.js", "scene8-scene-size-CBRA6KcU.js", "scene8-scene-uniforms-FTYH6Ct0.js", "scene8-singlelight-point-wgsl-2QlXbmIF.js", diff --git a/lab/public/bundle/manifest/scene99.json b/lab/public/bundle/manifest/scene99.json index b11c9a560f..ea1eee1203 100644 --- a/lab/public/bundle/manifest/scene99.json +++ b/lab/public/bundle/manifest/scene99.json @@ -1,6 +1,6 @@ { - "rawKB": 92.2, - "gzipKB": 38.3, + "rawKB": 92.3, + "gzipKB": 38.4, "ignoredRawKB": 0, "runtimeChunks": [ "scene99-animation-group-BUdI-omj.js", @@ -8,12 +8,12 @@ "scene99-generate-mipmaps-BFyY2NRa.js", "scene99-gltf-animation-T1Ovedwq.js", "scene99-gltf-feature-animations-CIfvZioj.js", - "scene99-gltf-feature-registry-CjDrsaHa.js", + "scene99-gltf-feature-registry-CblQlEku.js", "scene99-gltf-feature-skeleton-BUITWXe0.js", "scene99-gltf-glb-parser-BtneRupN.js", "scene99-multilight-wgsl-Cni0HYFi.js", - "scene99-pbr-renderable-BM0kMONc.js", - "scene99-skeleton-fragment-D-LnzmPd.js", + "scene99-pbr-renderable-J44pMMSM.js", + "scene99-skeleton-fragment-B0lr-4bX.js", "scene99-types-BVAXdTdf.js", "scene99.js" ] diff --git a/packages/babylon-lite/src/loader-gltf/gltf-pbr-builder-ext.ts b/packages/babylon-lite/src/loader-gltf/gltf-pbr-builder-ext.ts index 78fe4eb9d2..76da3b7bc4 100644 --- a/packages/babylon-lite/src/loader-gltf/gltf-pbr-builder-ext.ts +++ b/packages/babylon-lite/src/loader-gltf/gltf-pbr-builder-ext.ts @@ -159,6 +159,20 @@ export function assemblePbrPropsExt(mat: GltfMaterialData, tex: PbrTexturesExt, !!(tex.ormTexture as { _hasTx?: true })._hasTx || !!(tex.emissiveTexture as { _hasTx?: true } | undefined)?._hasTx || !!(tex.occlusionTexture as { _hasTx?: true } | undefined)?._hasTx; + // Per-channel UV1 (TEXCOORD_1) selection bitmask. Computed here on the slow path — the only + // place a texture can carry texCoord:1 — so the always-loaded fast path just reads `_uv2Mask`. + // Bit literals are a private contract with createPbrTemplateExt's decode (baseColor=1, orm=2, + // normal=4, emissive=8, specGloss=16, occlusion=32). specGloss arrives via extLayers. Occlusion + // reads `mat._occlusionTexCoord` (set from the glTF material's occlusionTexture.texCoord for + // every path, including KHR_texture_basisu, since occlusion-on-UV1 always routes through here). + const tc1 = (t: unknown): boolean => (t as { _texCoord?: number } | undefined)?._texCoord === 1; + const uv2Mask = + (tc1(tex.baseColorTexture) ? 1 : 0) | + (tc1(tex.ormTexture) ? 2 : 0) | + (tc1(tex.normalTexture) ? 4 : 0) | + (tc1(tex.emissiveTexture) ? 8 : 0) | + (tc1((extLayers as { specGlossTexture?: unknown } | undefined)?.specGlossTexture) ? 16 : 0) | + (mat._occlusionTexCoord === 1 ? 32 : 0); return { baseColorTexture: tex.baseColorTexture, normalTexture: tex.normalTexture, @@ -178,6 +192,7 @@ export function assemblePbrPropsExt(mat: GltfMaterialData, tex: PbrTexturesExt, ...(hasAnyUvTx ? { _hasUvTx: true } : undefined), ...(mat._rawMatDef?.name ? { name: mat._rawMatDef.name as string } : undefined), ...extLayers, + ...(uv2Mask ? { _uv2Mask: uv2Mask } : undefined), _buildGroup: getPbrGroupBuilder(), _uboVersion: 0, } as PbrMaterialProps; diff --git a/packages/babylon-lite/src/material/pbr/fragments/reflectance-fragment.ts b/packages/babylon-lite/src/material/pbr/fragments/reflectance-fragment.ts index 3a5c91aba3..649bc6cd95 100644 --- a/packages/babylon-lite/src/material/pbr/fragments/reflectance-fragment.ts +++ b/packages/babylon-lite/src/material/pbr/fragments/reflectance-fragment.ts @@ -11,7 +11,7 @@ import type { ShaderFragment, BindingDecl, UboField } from "../../../shader/fragment-types.js"; import type { PbrMaterialProps } from "../pbr-material.js"; import type { PbrExt } from "../pbr-flags.js"; -import { PBR_HAS_METALLIC_REFLECTANCE_MAP, PBR_HAS_REFLECTANCE_MAP, PBR_HAS_USE_ALPHA_ONLY_MR, PBR2_HAS_REFLECTANCE_FACTORS, PBR2_HAS_UV2 } from "../pbr-flag-bits.js"; +import { PBR_HAS_METALLIC_REFLECTANCE_MAP, PBR_HAS_REFLECTANCE_MAP, PBR_HAS_USE_ALPHA_ONLY_MR, PBR2_HAS_REFLECTANCE_FACTORS } from "../pbr-flag-bits.js"; // Reflectance-only features2 bit (reserved in pbr-flag-bits.ts). Defined here, // not in the shared flag module, for zero bundle movement on scenes that never @@ -220,7 +220,10 @@ export const pbrExt: PbrExt = { hasMR, hasR, (ctx._features & PBR_HAS_USE_ALPHA_ONLY_MR) !== 0, - (ctx._features2 & PBR2_HAS_UV2) !== 0, + // Occlusion-on-UV1 specifically (mask bit 1<<5), not any channel. Must match + // createPbrTemplateExt's _hasOcclusionUv2 so the occlusionTexture binding it declares + // and this sample agree. ctx._uv2Mask is already zeroed when uv2 isn't present. + ((ctx._uv2Mask ?? 0) & (1 << 5)) !== 0, (ctx._features2 & PBR2_REFL_UV_TX) !== 0 ); }, diff --git a/packages/babylon-lite/src/material/pbr/no-color-view.ts b/packages/babylon-lite/src/material/pbr/no-color-view.ts index ee14a7bec5..f273a84e0e 100644 --- a/packages/babylon-lite/src/material/pbr/no-color-view.ts +++ b/packages/babylon-lite/src/material/pbr/no-color-view.ts @@ -13,5 +13,8 @@ import { PBR_HAS_ALPHA_BLEND, PBR2_NO_COLOR_OUTPUT } from "./pbr-flags.js"; * The view references the source; material state is never copied. */ export function createPbrNoColorMaterialView(source: PbrMaterialProps): MaterialView { const features = source._renderFeatures ?? { features: 0, features2: 0 }; - return createMaterialView(source, { features: features.features & ~PBR_HAS_ALPHA_BLEND, features2: (features.features2 ?? 0) | PBR2_NO_COLOR_OUTPUT }); + return createMaterialView(source, { + features: features.features & ~PBR_HAS_ALPHA_BLEND, + features2: (features.features2 ?? 0) | PBR2_NO_COLOR_OUTPUT, + }); } diff --git a/packages/babylon-lite/src/material/pbr/pbr-compose.ts b/packages/babylon-lite/src/material/pbr/pbr-compose.ts index 007af04fba..e13a5fc10e 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-compose.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-compose.ts @@ -77,7 +77,8 @@ type PbrComposeFn = ( _singleLightType?: string, _esmShadowDepthCode?: string, _vbStrides?: MeshVbLayout, - _vbKey?: string + _vbKey?: string, + _uv2Mask?: number ) => ComposedShader; /** Create a memoized shader composer for a given scene's resolved PBR deps. */ @@ -111,9 +112,10 @@ export function createPbrComposer(deps: PbrComposerDeps): PbrComposeFn { singleLightType = "", _esmShadowDepthCode = "", vbStrides?: MeshVbLayout, - vbKey = "" + vbKey = "", + uv2Mask = 0 ): ComposedShader { - const ckey = `${features}:${features2}:${meshFeatures}:${sceneFeatures}:${lightMode}:${singleLightType}${vbKey}`; + const ckey = `${features}:${features2}:${meshFeatures}:${sceneFeatures}:${lightMode}:${singleLightType}${vbKey}:${uv2Mask}`; const cached = cache.get(ckey); if (cached) { return cached; @@ -145,7 +147,7 @@ export function createPbrComposer(deps: PbrComposerDeps): PbrComposeFn { _hasUvTransform, _hasVertexColor, _hasUv2, - _hasOcclusionUv2: _hasUv2, + _uv2Mask: uv2Mask, _features2: features2, _hasAnyNormal, _hasEmissiveTexture, @@ -196,6 +198,7 @@ export function createPbrComposer(deps: PbrComposerDeps): PbrComposeFn { _features: features, _features2: features2, _meshFeatures: meshFeatures, + _uv2Mask: _hasUv2 ? uv2Mask : 0, _hasIbl: _hasIbl, _hasAnyNormal, _hasSpecularAA, diff --git a/packages/babylon-lite/src/material/pbr/pbr-flags.ts b/packages/babylon-lite/src/material/pbr/pbr-flags.ts index e7e8820181..9db48fa406 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-flags.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-flags.ts @@ -22,6 +22,8 @@ export interface _PbrFragCtx { readonly _features2: number; /** @internal Mesh feature bits, separate from material feature bits. */ readonly _meshFeatures: number; + /** @internal Per-channel UV1 (TEXCOORD_1) selection bitmask (see pbr-material.ts). */ + readonly _uv2Mask?: number; /** @internal */ readonly _hasIbl: boolean; /** @internal */ diff --git a/packages/babylon-lite/src/material/pbr/pbr-geometry-output-shader.ts b/packages/babylon-lite/src/material/pbr/pbr-geometry-output-shader.ts index 0cf955425e..6f583714c5 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-geometry-output-shader.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-geometry-output-shader.ts @@ -189,7 +189,8 @@ export function composePbrGeometryShader( vbStrides: MeshVbLayout | undefined, vbKey: string, attachments: readonly GeometryTextureType[], - emitColor: boolean + emitColor: boolean, + uv2Mask = 0 ): ComposedShader { // Strip PBR_HAS_ALPHA_BLEND: the template's alpha-blend branch returns // `finalAlpha = saturate(alpha + luminanceOverAlpha²)` which we don't need @@ -212,7 +213,8 @@ export function composePbrGeometryShader( singleLightType, esmShadowDepthCode, vbStrides, - `${vbKey}:geom:${attachments.join(",")}:${emitColor ? "c" : ""}` + `${vbKey}:geom:${attachments.join(",")}:${emitColor ? "c" : ""}`, + uv2Mask ); const hasIbl = (sceneFeatures & PBR_HAS_ENV) !== 0; diff --git a/packages/babylon-lite/src/material/pbr/pbr-geometry-renderable.ts b/packages/babylon-lite/src/material/pbr/pbr-geometry-renderable.ts index 3cf9bda4b4..deb5556df1 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-geometry-renderable.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-geometry-renderable.ts @@ -319,6 +319,7 @@ function _ensureViewResources( const source = view.source as PbrMaterialProps; const vbLayout = (source as unknown as { _vbLayout?: import("../../mesh/mesh.js").MeshVbLayout })._vbLayout; const vbKey = ""; + const uv2Mask = (source as { _uv2Mask?: number })._uv2Mask ?? 0; // Compose with the active-attachment scope set so the registered ext // sees the right list when contributing the geometry-params fragment. @@ -337,7 +338,8 @@ function _ensureViewResources( vbLayout, vbKey, view._geometryAttachments, - view._emitColor + view._emitColor, + uv2Mask ); } finally { _setActivePbrGeometryAttachments(prev); diff --git a/packages/babylon-lite/src/material/pbr/pbr-material.ts b/packages/babylon-lite/src/material/pbr/pbr-material.ts index f9eff60053..f0cd4abce2 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-material.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-material.ts @@ -97,8 +97,17 @@ export interface PbrMaterialProps extends Material { roughnessFactor?: number; /** Strength of ambient occlusion from ORM R channel. Default 1.0; 0.0 ignores R channel. */ occlusionStrength?: number; - /** UV set index for the occlusion texture (0 = UV1, 1 = UV2). Default 0. */ + /** glTF-derived UV set index for the occlusion texture: 0 = first UV set (TEXCOORD_0), + * 1 = second UV set (TEXCOORD_1). Default 0. Populated only by the glTF loader paths + * (gltf-pbr-builder-ext and KHR_texture_basisu). It selects WHICH UV set occlusion samples; + * whether UV2 gets plumbed at all is gated by `_uv2Mask` (occlusion contributes bit 32), + * which the slow path computes from this same value — so every occlusion-on-UV1 glTF + * material also carries `_uv2Mask`. Setting this alone (without `_uv2Mask`) does not force + * UV2 plumbing. */ occlusionTexCoord?: number; + /** @internal Per-channel UV1 (TEXCOORD_1) selection bitmask, precomputed at glTF build time by + * the slow-path loader (gltf-pbr-builder-ext). Bit literals mirror pbr-template-ext's decode. */ + _uv2Mask?: number; /** Separate occlusion texture sampled with UV2 when occlusionTexCoord=1. * R channel is occlusion. When set, ORM.r is NOT used for occlusion. */ occlusionTexture?: Texture2D; @@ -202,7 +211,14 @@ export function _computePbrMaterialFeatures(mat: PbrMaterialProps): { features: if ((mat as { _hasUvTx?: boolean })._hasUvTx) { features2 |= PBR2_HAS_UV_TRANSFORM; } - if (mat.occlusionTexCoord) { + // Per-channel UV set selection (glTF texCoord). `_uv2Mask` is precomputed once at glTF build + // time by the lazy slow-path loader (gltf-pbr-builder-ext) — the only place a texture can carry + // texCoord:1 (occlusion included, as bit 32) — so the always-loaded fast path pays just one read + // here. This replaces master's `occlusionTexCoord` trigger: occlusion-on-UV1 always routes through + // the slow path (any texCoord:1 in the material JSON forces it, incl. KHR_texture_basisu), so its + // bit is already folded into `_uv2Mask`. Any channel on UV1 needs the uv2 vertex attribute + + // varying threaded through. + if ((mat as { _uv2Mask?: number })._uv2Mask) { features2 |= PBR2_HAS_UV2; } if (mat.baseColorFactor) { diff --git a/packages/babylon-lite/src/material/pbr/pbr-pipeline.ts b/packages/babylon-lite/src/material/pbr/pbr-pipeline.ts index b13592bc99..096c62c648 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-pipeline.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-pipeline.ts @@ -251,7 +251,7 @@ export function createPbrMeshBindGroup( addTex(material.normalTexture!); } addTex(material.ormTexture ?? _pbrFallbackResolver?.(engine)!); - if ((features2 & PBR2_HAS_UV2) !== 0 && (meshFeatures & MSH_HAS_UV2) !== 0 && material.occlusionTexture) { + if ((features2 & PBR2_HAS_UV2) !== 0 && (meshFeatures & MSH_HAS_UV2) !== 0 && material.occlusionTexture && material.occlusionTexCoord === 1) { addTex(material.occlusionTexture); } if (hasEmissive) { diff --git a/packages/babylon-lite/src/material/pbr/pbr-renderable.ts b/packages/babylon-lite/src/material/pbr/pbr-renderable.ts index 9b52bf0077..83ecfb0a8b 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-renderable.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-renderable.ts @@ -136,8 +136,11 @@ export async function buildPbrRenderables(scene: SceneContext, meshes: Mesh[], e hasCullingTI ||= !!m.thinInstances?._gpuCullingEnabled; hasAnyUnlit ||= !!mat.unlit; hasAnyUvTransform ||= !!mat._hasUvTx; - // UV2 only counts when occlusion samples texcoord 1. - hasAnyUv2 ||= !!m._gpu.uv2Buffer && mat.occlusionTexCoord === 1; + // UV2 counts when ANY PBR channel samples texCoord 1 (occlusion included, via `_uv2Mask` + // bit 32) — precomputed as `_uv2Mask` on the material by the glTF slow path (0/undefined on + // the fast path). Occlusion-on-UV1 (incl. KHR_texture_basisu) always routes through that slow + // path, so its UV2 usage is already reflected here without a separate occlusionTexCoord check. + hasAnyUv2 ||= !!m._gpu.uv2Buffer && !!(mat as { _uv2Mask?: number })._uv2Mask; hasAnyVertexColor ||= !!m._gpu.colorBuffer; hasAnyFlatNormal ||= !!(m as { _flatNormal?: boolean })._flatNormal; hasGammaAlbedo ||= !!mat.gammaAlbedo; @@ -344,9 +347,19 @@ export async function buildPbrRenderables(scene: SceneContext, meshes: Mesh[], e // today. Interleaved meshes carry a precomputed vbKey from the loader module. const vbLayout = mi._gpu._vbLayout; const vbKey = mi._gpu._vbKey ?? ""; - - const composed = composePbr(features, features2, meshFeatures, sceneFeatures, lightMode, singleLightType, esmShadowDepthCode, vbLayout, vbKey); - const bindings = getOrCreatePbrBindings(engine, features, features2, meshFeatures, sceneFeatures, composed, `${lightMode}:${singleLightType}${vbKey}`, mat.stencil ?? null); + const uv2Mask = (mat as { _uv2Mask?: number })._uv2Mask ?? 0; + + const composed = composePbr(features, features2, meshFeatures, sceneFeatures, lightMode, singleLightType, esmShadowDepthCode, vbLayout, vbKey, uv2Mask); + const bindings = getOrCreatePbrBindings( + engine, + features, + features2, + meshFeatures, + sceneFeatures, + composed, + `${lightMode}:${singleLightType}${vbKey}:${uv2Mask}`, + mat.stencil ?? null + ); // Mesh UBO (world matrix at offset 0; spec.totalBytes covers any extra fields). const meshUboData = new F32(composed._meshUboSpec._totalBytes / 4); diff --git a/packages/babylon-lite/src/material/pbr/pbr-template-ext.ts b/packages/babylon-lite/src/material/pbr/pbr-template-ext.ts index 9276e9d364..3b9f6c23a0 100644 --- a/packages/babylon-lite/src/material/pbr/pbr-template-ext.ts +++ b/packages/babylon-lite/src/material/pbr/pbr-template-ext.ts @@ -59,8 +59,8 @@ export function createPbrTemplateExt(flags: { _hasVertexColor: boolean; /** @internal */ _hasUv2: boolean; - /** @internal */ - _hasOcclusionUv2: boolean; + /** @internal Per-channel UV1 selection bitmask (see pbr-material.ts). Decoded locally. */ + _uv2Mask: number; /** @internal features2 bitfield — read locally for orm-unpack (occlusion split) without * adding a flag branch to the shared composer. */ _features2?: number; @@ -71,7 +71,14 @@ export function createPbrTemplateExt(flags: { /** @internal */ _hasSpecGloss: boolean; }): PbrTemplateExt { - const { _hasUvTransform, _hasVertexColor, _hasUv2, _hasOcclusionUv2, _hasAnyNormal, _hasEmissiveTexture, _hasSpecGloss } = flags; + const { _hasUvTransform, _hasVertexColor, _hasUv2, _hasAnyNormal, _hasEmissiveTexture, _hasSpecGloss } = flags; + // Per-channel UV1 (TEXCOORD_1) selection. Bit literals mirror the gltf slow-path encode: + // baseColor=1, orm=2, normal=4, emissive=8, specGloss=16, occlusion=32. Only honoured when the + // uv2 vertex attribute is actually present (_hasUv2); otherwise every channel falls back to + // input.uv so the shader never references a missing uv2 varying. + const uv2Mask = _hasUv2 ? flags._uv2Mask : 0; + const baseUvFor = (bit: number): string => (uv2Mask & bit ? "input.uv2" : "input.uv"); + const _hasOcclusionUv2 = !!(uv2Mask & 32); // orm-unpack: occlusion sampled from the ORM texture with its own UV transform. // PBR2_OCCL_UV_SPLIT is defined locally (not in shared pbr-flag-bits.ts) per GUIDANCE // §4c′ — it is set in uv-transform-fragment.detect and read only here, both lazy. @@ -83,8 +90,10 @@ export function createPbrTemplateExt(flags: { { _name: `${name}UVm`, _type: "vec4" }, { _name: `${name}UVt`, _type: "vec4" }, ]; - const uvVarName = (name: string) => (_hasUvTransform ? `${name}UV` : "input.uv"); - const uvTransformDecl = (name: string) => (_hasUvTransform ? `let ${name}UV = txfUV(input.uv, material.${name}UVm, material.${name}UVt.xy);\n` : ""); + // Each channel's sampled UV: with a UV transform it becomes a `${name}UV` local (built from + // the channel's base UV set); without a transform it is the base UV set (input.uv / input.uv2). + const uvVarName = (name: string, bit: number) => (_hasUvTransform ? `${name}UV` : baseUvFor(bit)); + const uvTransformDecl = (name: string, bit: number) => (_hasUvTransform ? `let ${name}UV = txfUV(${baseUvFor(bit)}, material.${name}UVm, material.${name}UVt.xy);\n` : ""); const UV_TRANSFORM_HELPER_WGSL = _hasUvTransform ? `fn txfUV(uv: vec2, m: vec4, t: vec2) -> vec2 { return vec2(dot(m.xy, uv), dot(m.zw, uv)) + t; @@ -151,21 +160,22 @@ return vec2(dot(m.xy, uv), dot(m.zw, uv)) + t; const fragmentHelpers = UV_TRANSFORM_HELPER_WGSL; // ── Fragment prelude ──────────────────────────────────────── + // Bit literal per channel (1/2/4/8/16) selects its base UV set inside the transform. const fragmentPrelude = _hasUvTransform - ? uvTransformDecl("baseColor") + - (_hasAnyNormal ? uvTransformDecl("normal") : "") + - uvTransformDecl("orm") + - (_hasOcclusionSplit ? uvTransformDecl("occl") : "") + - (_hasEmissiveTexture ? uvTransformDecl("emissive") : "") + - (_hasSpecGloss ? uvTransformDecl("specGloss") : "") + ? uvTransformDecl("baseColor", 1) + + (_hasAnyNormal ? uvTransformDecl("normal", 4) : "") + + uvTransformDecl("orm", 2) + + (_hasOcclusionSplit ? uvTransformDecl("occl", 0) : "") + + (_hasEmissiveTexture ? uvTransformDecl("emissive", 8) : "") + + (_hasSpecGloss ? uvTransformDecl("specGloss", 16) : "") : ""; // ── UV expressions ────────────────────────────────────────── - const uvForBaseColor = uvVarName("baseColor"); - const uvForNormal = uvVarName("normal"); - const uvForOrm = uvVarName("orm"); - const uvForEmissive = uvVarName("emissive"); - const uvForSpecGloss = uvVarName("specGloss"); + const uvForBaseColor = uvVarName("baseColor", 1); + const uvForNormal = uvVarName("normal", 4); + const uvForOrm = uvVarName("orm", 2); + const uvForEmissive = uvVarName("emissive", 8); + const uvForSpecGloss = uvVarName("specGloss", 16); // ── Base color modifier ───────────────────────────────────── // NOTE: backtick (not double-quote) so the bundle's WGSL identifier mangler diff --git a/scene-config.json b/scene-config.json index 4de74572be..05b53f143d 100644 --- a/scene-config.json +++ b/scene-config.json @@ -48,7 +48,7 @@ "name": "Scene 5 — Alien Skeleton", "maxMad": 0.01, "maxRegionMad": 0.08, - "maxRawKB": 92.2, + "maxRawKB": 92.27, "description": "glTF Alien model with PBR, skeleton/bones, normal map, hemispheric light.", "tags": ["pbr", "gltf"], "skipPerf": true, @@ -275,7 +275,7 @@ "slug": "scene27-material-variants", "name": "Scene 27 — Material Variants", "maxMad": 1, - "maxRawKB": 82.9, + "maxRawKB": 83.03, "description": "glTF refrigerator with KHR_materials_variants, White variant selected. ArcRotate camera, hemispheric light.", "tags": ["pbr", "gltf", "variants"], "skipPerf": true, @@ -296,7 +296,7 @@ "slug": "scene29-sheen-cloth-gltf", "name": "Scene 29 — Sheen Cloth glTF", "maxMad": 0.015, - "maxRawKB": 90.5, + "maxRawKB": 90.77, "description": "SheenCloth.gltf (KHR_materials_sheen + KHR_texture_transform 30× tiling) with default environment (IBL only). Matches PG #YG3BBF#2.", "tags": ["pbr", "gltf", "env", "sheen", "texture-transform"], "skipPerf": true, @@ -307,7 +307,7 @@ "slug": "scene30-volume-testing", "name": "Scene 30 — KHR_materials_volume_testing", "maxMad": 0.15, - "maxRawKB": 104.1, + "maxRawKB": 104.24, "description": "KHR_materials_volume_testing.glb (transmission + volume + ior + specular) against default IBL environment with frame-graph scene-texture transmission. Matches PG #YG3BBF#16.", "tags": ["pbr", "gltf", "env", "transmission", "volume"], "skipPerf": true, @@ -351,7 +351,7 @@ "slug": "scene34-node-visibility", "name": "Scene 34 — KHR_node_visibility + KHR_animation_pointer", "maxMad": 0.02, - "maxRawKB": 97.1, + "maxRawKB": 97.12, "description": "CubeVisibility.glb — three cubes: green always-visible, blue blinking via KHR_animation_pointer on its visibility flag, two reds hidden via KHR_node_visibility. Default IBL env. Matches PG #YG3BBF#55.", "tags": ["pbr", "gltf", "env", "node-visibility", "animation-pointer"], "skipPerf": true, @@ -362,7 +362,7 @@ "slug": "scene35-gltf-instancing", "name": "Scene 35 — EXT_mesh_gpu_instancing", "maxMad": 0.02, - "maxRawKB": 84.0, + "maxRawKB": 84.02, "description": "SimpleInstancing.glb (EXT_mesh_gpu_instancing) — 5×5×5 grid of 125 unit cubes driven by per-instance TRS accessors. Default IBL env. Matches PG #YG3BBF#57.", "tags": ["pbr", "gltf", "env", "gpu-instancing"], "compatParity": true @@ -383,7 +383,7 @@ "slug": "scene37-sheen-sofa", "name": "Scene 37 — Sheen Wood Leather Sofa", "maxMad": 0.02, - "maxRawKB": 97.3, + "maxRawKB": 97.5, "description": "SheenWoodLeatherSofa.glb (KHR_materials_sheen + KHR_materials_specular + KHR_texture_transform + EXT_texture_webp) with default IBL environment (no skybox, no ground). Matches PG #YG3BBF#58.", "tags": ["pbr", "gltf", "env", "sheen", "specular", "texture-transform", "webp"], "compatParity": true @@ -404,7 +404,7 @@ "slug": "scene39-animation-pointer-waterfall", "name": "Scene 39 — KHR_animation_pointer (Animated Waterfall)", "maxMad": 0.6, - "maxRawKB": 109.1, + "maxRawKB": 109.38, "description": "AnimatedWaterfall.gltf — grass blades rotate via /nodes/{n}/rotation pointers and water/foam surfaces scroll via /materials/{m}/.../KHR_texture_transform offset+scale pointers. Default IBL env, no skybox/ground. Validates KHR_animation_pointer node-TRS + texture-transform handlers.", "tags": ["pbr", "gltf", "env", "lights-punctual", "texture-transform", "animation-pointer"], "skipPerf": true, @@ -1188,7 +1188,7 @@ "slug": "scene115-alien-picking-frame100", "name": "Scene 115 — Alien Picking Frame 100", "maxMad": 0.01, - "maxRawKB": 126.7, + "maxRawKB": 126.72, "description": "Precise picking validation on the animated Alien glTF at frame 100: BJS and Lite CPU PickInfo values drive a surface sphere and normal marker.", "tags": ["pbr", "gltf", "anim", "skeleton", "picking"], "skipPerf": true @@ -1369,7 +1369,7 @@ "slug": "scene144-bloom-post-process", "name": "Scene 144 — Bloom Post-process", "maxMad": 0.072, - "maxRawKB": 112, + "maxRawKB": 112.73, "description": "Tarisland dragon asset rendered through a Lite frame-graph bloom task using the Babylon.js Playground bloom settings.", "tags": ["post-process", "frame-graph", "gltf", "animation"], "note": "PENDING USER APPROVAL. maxMad widened 0.07 -> 0.072. This full-screen multi-pass bloom sits on the 8-bit quantization floor between two independent WebGPU float pipelines (BJS reference vs Lite): 92% of pixels match exactly, 97% within 1 LSB, 99.6% within 2 LSB, and the residual MAD is dominated (71%) by unavoidable +/-1-2 LSB rounding across the smooth bloom gradient. Bloom params (threshold 0.1, weight 2, kernel 64, scale 0.5) and math match BJS exactly; enabling MSAA to match BJS antialias made parity 4x worse (0.309), confirming the bloom input is single-sample and there is no closable algorithmic drift. The old 0.07 ceiling was calibrated right at this floor, so deterministic cross-renderer rounding tips it over: hardware GPU measures 0.0700043, CI SwiftShader measures 0.0700051 (both deterministic, 0 run-to-run variance). 0.072 clears the observed floor by ~2.8% while staying orders of magnitude below any real bloom regression (which would move MAD by >= 0.1).", @@ -1456,7 +1456,7 @@ "slug": "scene152-gltf-manager", "name": "Scene 152 — Unified AnimationManager", "maxMad": 0.02, - "maxRawKB": 94.4, + "maxRawKB": 94.43, "description": "One explicit AnimationManager drives a glTF shark skeleton group and a manual camera orbit property group.", "tags": ["pbr", "gltf", "anim"], "skipPerf": true, @@ -1584,7 +1584,7 @@ "name": "Scene 164 - Device Lost Recovery", "maxMad": 0.01, "maxRegionMad": 0.08, - "maxRawKB": 99.2, + "maxRawKB": 99.27, "description": "Scene 5 Alien glTF forces WebGPU device loss and validates opt-in automatic recovery without an app rebuild callback.", "tags": ["pbr", "gltf", "anim", "recovery"], "skipPerf": true @@ -1676,7 +1676,7 @@ "slug": "scene176-mosquito-amber", "name": "Scene 176 - MosquitoInAmber", "maxMad": 0.5, - "maxRawKB": 104.3, + "maxRawKB": 104.33, "description": "KhronosGroup MosquitoInAmber.gltf (KHR_materials_transmission + ior + volume) against the studio.env HDR environment used as IBL and a blurred HDR skybox, with frame-graph scene-texture transmission.", "tags": ["pbr", "gltf", "env", "transmission", "volume", "skybox"], "skipPerf": true, @@ -1936,7 +1936,7 @@ "slug": "scene219-vat-instanced", "name": "Scene 219 — Per-instance VAT", "maxMad": 0.02, - "maxRawKB": 98.2, + "maxRawKB": 98.25, "description": "Per-instance VAT: the scene-11 shark baked to a VAT texture and rendered through the GPU thin-instance VAT path (one identity-matrix instance) frozen via ?seekTime. finalWorld = instanceMatrix * mesh.world * skin equals the plain skinned pose at identity, so it matches the BJS live-skeleton golden exactly.", "tags": ["vat", "animation", "skeleton", "instancing", "pbr", "gltf"], "skipPerf": true, @@ -2033,7 +2033,7 @@ "slug": "scene240-animated-triangle", "name": "Scene 240 — AnimatedTriangle", "maxMad": 0.2, - "maxRawKB": 91.3, + "maxRawKB": 91.33, "description": "AnimatedTriangle.gltf — cx20 gltf-test. Node-rotation animation; material-less no-NORMAL mesh (smooth normals).", "tags": ["gltf"], "skipPerf": true @@ -2043,7 +2043,7 @@ "slug": "scene241-animation-pointer-uvs", "name": "Scene 241 — AnimationPointerUVs", "maxMad": 1.3, - "maxRawKB": 162.1, + "maxRawKB": 162.36, "description": "AnimationPointerUVs.gltf — cx20 gltf-test. KHR_animation_pointer UV-transform across 82 materials.", "tags": ["gltf"], "skipPerf": true @@ -2053,7 +2053,7 @@ "slug": "scene242-emissive-fireflies", "name": "Scene 242 — EmissiveFireflies", "maxMad": 0.2, - "maxRawKB": 97.5, + "maxRawKB": 97.54, "description": "EmissiveFireflies.gltf — cx20 gltf-test. KHR_animation_pointer material emissiveFactor/emissiveStrength/baseColorFactor.", "tags": ["gltf"], "skipPerf": true @@ -2063,7 +2063,7 @@ "slug": "scene243-morph-stress-test", "name": "Scene 243 — MorphStressTest", "maxMad": 0.2, - "maxRawKB": 97.7, + "maxRawKB": 98.03, "description": "MorphStressTest.gltf — cx20 gltf-test. Morph-target weight animation.", "tags": ["gltf"], "skipPerf": true @@ -2073,7 +2073,7 @@ "slug": "scene244-pot-of-coals-animation-pointer", "name": "Scene 244 — PotOfCoalsAnimationPointer", "maxMad": 0.2, - "maxRawKB": 134.0, + "maxRawKB": 134.27, "description": "PotOfCoalsAnimationPointer.gltf — cx20 gltf-test. KHR_animation_pointer texture-transform rotation.", "tags": ["gltf"], "skipPerf": true @@ -2083,7 +2083,7 @@ "slug": "scene245-recursive-skeletons", "name": "Scene 245 — RecursiveSkeletons", "maxMad": 0.2, - "maxRawKB": 100.9, + "maxRawKB": 101.05, "description": "RecursiveSkeletons.gltf — cx20 gltf-test. Deep recursive skeletons; interleaved JOINTS/WEIGHTS/COLOR_0.", "tags": ["gltf"], "skipPerf": true @@ -2093,7 +2093,7 @@ "slug": "scene246-simple-skin", "name": "Scene 246 — SimpleSkin", "maxMad": 0.2, - "maxRawKB": 99.8, + "maxRawKB": 99.85, "description": "SimpleSkin.gltf — cx20 gltf-test. Material-less skinned mesh; interleaved JOINTS/WEIGHTS, no-NORMAL smooth normals.", "tags": ["gltf"], "skipPerf": true @@ -2103,7 +2103,7 @@ "slug": "scene247-teapots-galore", "name": "Scene 247 — TeapotsGalore", "maxMad": 0.4, - "maxRawKB": 85.0, + "maxRawKB": 85.03, "description": "TeapotsGalore.gltf — cx20 gltf-test. EXT_mesh_gpu_instancing, top-down view.", "tags": ["gltf"], "skipPerf": true @@ -2133,7 +2133,7 @@ "slug": "scene251-animation-mask", "name": "Scene 251 — Animation Mask (Xbot walk, frozen legs)", "maxMad": 0.05, - "maxRawKB": 89.9, + "maxRawKB": 89.96, "description": "Xbot 'walk' clip with an AnimationGroupMask (Exclude mode) listing the lower-body bones (legs + feet/toes). Everything animates except those, so the hips, spine, and arms walk while the legs hold their bind pose. Validates AnimationGroupMask include/exclude semantics against Babylon.js. Frozen at a deterministic frame.", "tags": ["gltf", "skeleton", "animation", "animation-mask"], "skipPerf": true @@ -2154,7 +2154,7 @@ "slug": "scene253-animate-all-the-things", "name": "Scene 253 — AnimateAllTheThings", "maxMad": 0.3, - "maxRawKB": 153.3, + "maxRawKB": 153.58, "description": "cx20 gltf-test AnimateAllTheThings, viewed top-down over the full grid of test objects. Exercises KHR_lights_punctual, KHR_texture_transform, KHR_materials_unlit/ior/transmission/iridescence/volume/emissive_strength and KHR_animation_pointer, plus skinning and morph targets. Frozen at a deterministic frame.", "tags": ["gltf", "animation", "animation-pointer", "transmission", "iridescence", "skeleton", "morph"], "skipPerf": true @@ -2176,7 +2176,7 @@ "name": "Scene 255 — Skin Weights (Byte)", "maxMad": 0.1, "maxRegionMad": 0.5, - "maxRawKB": 94.4, + "maxRawKB": 94.45, "description": "glTF Animation_SkinType_01: a skinned plane whose vertex WEIGHTS are a normalized UNSIGNED_BYTE accessor (componentType 5121). Validates denormalization of non-float skin weights (glTF-Asset-Generator Category B); Lite previously read them raw and exploded the skin. Frozen at seekTime=1.0.", "tags": ["gltf", "skeleton", "animation"], "skipPerf": true