@playcanvas/web-components 0.2.2 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/components/particlesystem-component.d.ts +52 -0
- package/dist/index.d.ts +3 -2
- package/dist/pwc.cjs +427 -84
- package/dist/pwc.cjs.map +1 -1
- package/dist/pwc.js +427 -84
- package/dist/pwc.js.map +1 -1
- package/dist/pwc.min.js +1 -1
- package/dist/pwc.min.js.map +1 -1
- package/dist/pwc.mjs +427 -85
- package/dist/pwc.mjs.map +1 -1
- package/package.json +13 -12
- package/src/asset.ts +53 -1
- package/src/components/particlesystem-component.ts +155 -0
- package/src/components/sound-slot.ts +5 -3
- package/src/index.ts +4 -2
- package/src/sky.ts +1 -0
package/dist/pwc.js
CHANGED
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
}
|
|
18
18
|
get closestApp() {
|
|
19
19
|
var _a;
|
|
20
|
-
return (_a = this.parentElement) === null || _a ===
|
|
20
|
+
return (_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.closest('pc-app');
|
|
21
21
|
}
|
|
22
22
|
get closestEntity() {
|
|
23
23
|
var _a;
|
|
24
|
-
return (_a = this.parentElement) === null || _a ===
|
|
24
|
+
return (_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.closest('pc-entity');
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
27
|
* Called when the element is fully initialized and ready.
|
|
@@ -759,7 +759,7 @@
|
|
|
759
759
|
if (!this.entity)
|
|
760
760
|
return;
|
|
761
761
|
const closestEntity = this.closestEntity;
|
|
762
|
-
if (closestEntity === null || closestEntity ===
|
|
762
|
+
if (closestEntity === null || closestEntity === void 0 ? void 0 : closestEntity.entity) {
|
|
763
763
|
closestEntity.entity.addChild(this.entity);
|
|
764
764
|
}
|
|
765
765
|
else {
|
|
@@ -981,11 +981,187 @@
|
|
|
981
981
|
}
|
|
982
982
|
hasListeners(type) {
|
|
983
983
|
var _a;
|
|
984
|
-
return Boolean((_a = this._listeners[type]) === null || _a ===
|
|
984
|
+
return Boolean((_a = this._listeners[type]) === null || _a === void 0 ? void 0 : _a.length);
|
|
985
985
|
}
|
|
986
986
|
}
|
|
987
987
|
customElements.define('pc-entity', EntityElement);
|
|
988
988
|
|
|
989
|
+
// This file is part of meshoptimizer library and is distributed under the terms of MIT License.
|
|
990
|
+
// Copyright (C) 2016-2022, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com)
|
|
991
|
+
var MeshoptDecoder = (function() {
|
|
992
|
+
|
|
993
|
+
// Built with clang version 14.0.4
|
|
994
|
+
// Built from meshoptimizer 0.18
|
|
995
|
+
var wasm_base = "b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:P8Yqdbk;3sezu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfgocl4cifcd4hxdndndndnaoc9WGgmTmbcbhPcehsawcjdfhzalhHinaraH9Rax6midnaraHaxfgl9RcK6mbczhoinawcj;cbfaogifgoc9WfhOdndndndndnaHaic9WfgAco4fRbbaAci4coG4ciGPlbedibkaO9cb83ibaOcwf9cb83ibxikaOalRblalRbbgAco4gCaCciSgCE86bbaocGfalclfaCfgORbbaAcl4ciGgCaCciSgCE86bbaocVfaOaCfgORbbaAcd4ciGgCaCciSgCE86bbaoc7faOaCfgORbbaAciGgAaAciSgAE86bbaoctfaOaAfgARbbalRbegOco4gCaCciSgCE86bbaoc91faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc4faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc93faAaCfgARbbaOciGgOaOciSgOE86bbaoc94faAaOfgARbbalRbdgOco4gCaCciSgCE86bbaoc95faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc96faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc97faAaCfgARbbaOciGgOaOciSgOE86bbaoc98faAaOfgORbbalRbiglco4gAaAciSgAE86bbaoc99faOaAfgORbbalcl4ciGgAaAciSgAE86bbaoc9:faOaAfgORbbalcd4ciGgAaAciSgAE86bbaocufaOaAfgoRbbalciGglalciSglE86bbaoalfhlxdkaOalRbwalRbbgAcl4gCaCcsSgCE86bbaocGfalcwfaCfgORbbaAcsGgAaAcsSgAE86bbaocVfaOaAfgORbbalRbegAcl4gCaCcsSgCE86bbaoc7faOaCfgORbbaAcsGgAaAcsSgAE86bbaoctfaOaAfgORbbalRbdgAcl4gCaCcsSgCE86bbaoc91faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc4faOaAfgORbbalRbigAcl4gCaCcsSgCE86bbaoc93faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc94faOaAfgORbbalRblgAcl4gCaCcsSgCE86bbaoc95faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc96faOaAfgORbbalRbvgAcl4gCaCcsSgCE86bbaoc97faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc98faOaAfgORbbalRbogAcl4gCaCcsSgCE86bbaoc99faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc9:faOaAfgORbbalRbrglcl4gAaAcsSgAE86bbaocufaOaAfgoRbbalcsGglalcsSglE86bbaoalfhlxekaOal8Pbb83bbaOcwfalcwf8Pbb83bbalczfhlkdnaiam9pmbaiczfhoaral9RcL0mekkaiam6mialTmidnakTmbawaPfRbbhOcbhoazhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkkazcefhzaPcefgPad6hsalhHaPad9hmexvkkcbhlasceGmdxikalaxad2fhCdnakTmbcbhHcehsawcjdfhminaral9Rax6mialTmdalaxfhlawaHfRbbhOcbhoamhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkamcefhmaHcefgHad6hsaHad9hmbkaChlxikcbhocehsinaral9Rax6mdalTmealaxfhlaocefgoad6hsadao9hmbkaChlxdkcbhlasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqalmbkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;yzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;siliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabavcefciGaiVcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabavcdfciGaiVcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabavcufciGaiVcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabavciGaiVcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2geTmbinababydbgdcwtcw91:Yadce91cjjj;8ifcjjj98G::NUdbabclfhbaecufgembkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaiczfhiaeczfheadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb";
|
|
996
|
+
var wasm_simd = "b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;t9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;h8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincehHalhOcbhAdninaraO9RaP6miavcj;cbfaAak2fhCaOaPfhlcbhidnakc;ab6mbaral9Rc;Gb6mbcbhoinaCaofhidndndndndnaOaoco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklbalczfhlkdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklzalczfhlkdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklaalczfhlkdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalclfaYpQbfaXc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalcwfaYpQbfaXc:q:yjjbfRbbfhlxekaialpbbbpkl8Walczfhlkaoc;abfhiaocjefak0meaihoaral9Rc;Fb0mbkkdndnaiak9pmbaici4hoinaral9RcK6mdaCaifhXdndndndndnaOaico4fRbbaocoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpklbxikaXalpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaXalpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAci6hHalhOaAcefgohAaoclSmdxekkcbhlaHceGmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;uzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:EPliuo97eue978Jjjjjbca9Rhidndnadcl9hmbdnaec98GglTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaiaeciGgvcdtgdVcbczad9R;8kbaiabalcdtfglad;8qbbdnavTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkalaiad;8qbbskdnaec98GgxTmbcbhvabhdinadczfglalpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgvax6mbkkaxae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabaxcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oawaopmbezHdiOAlvCXorQLp9qpklbkalaiad;8qbbkk;4wllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalae9pmbaiaeciGgvcitgofcbcaao9R;8kbaiabalcitfgwao;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbhdabheinaeaepbbbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepkbbaeczfheadclfgdav6mbkkdnaval9pmbaialciGgdcdtgeVcbc;abae9R;8kbaiabavcdtfgvae;8qbbdnadTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepklbkavaiae;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb";
|
|
997
|
+
|
|
998
|
+
var detector = new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]);
|
|
999
|
+
var wasmpack = new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);
|
|
1000
|
+
|
|
1001
|
+
if (typeof WebAssembly !== 'object') {
|
|
1002
|
+
return {
|
|
1003
|
+
supported: false,
|
|
1004
|
+
};
|
|
1005
|
+
}
|
|
1006
|
+
|
|
1007
|
+
var wasm = WebAssembly.validate(detector) ? wasm_simd : wasm_base;
|
|
1008
|
+
|
|
1009
|
+
var instance;
|
|
1010
|
+
|
|
1011
|
+
var ready =
|
|
1012
|
+
WebAssembly.instantiate(unpack(wasm), {})
|
|
1013
|
+
.then(function(result) {
|
|
1014
|
+
instance = result.instance;
|
|
1015
|
+
instance.exports.__wasm_call_ctors();
|
|
1016
|
+
});
|
|
1017
|
+
|
|
1018
|
+
function unpack(data) {
|
|
1019
|
+
var result = new Uint8Array(data.length);
|
|
1020
|
+
for (var i = 0; i < data.length; ++i) {
|
|
1021
|
+
var ch = data.charCodeAt(i);
|
|
1022
|
+
result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
|
|
1023
|
+
}
|
|
1024
|
+
var write = 0;
|
|
1025
|
+
for (var i = 0; i < data.length; ++i) {
|
|
1026
|
+
result[write++] = (result[i] < 60) ? wasmpack[result[i]] : (result[i] - 60) * 64 + result[++i];
|
|
1027
|
+
}
|
|
1028
|
+
return result.buffer.slice(0, write);
|
|
1029
|
+
}
|
|
1030
|
+
|
|
1031
|
+
function decode(fun, target, count, size, source, filter) {
|
|
1032
|
+
var sbrk = instance.exports.sbrk;
|
|
1033
|
+
var count4 = (count + 3) & -4;
|
|
1034
|
+
var tp = sbrk(count4 * size);
|
|
1035
|
+
var sp = sbrk(source.length);
|
|
1036
|
+
var heap = new Uint8Array(instance.exports.memory.buffer);
|
|
1037
|
+
heap.set(source, sp);
|
|
1038
|
+
var res = fun(tp, count, size, sp, source.length);
|
|
1039
|
+
if (res == 0 && filter) {
|
|
1040
|
+
filter(tp, count4, size);
|
|
1041
|
+
}
|
|
1042
|
+
target.set(heap.subarray(tp, tp + count * size));
|
|
1043
|
+
sbrk(tp - sbrk(0));
|
|
1044
|
+
if (res != 0) {
|
|
1045
|
+
throw new Error("Malformed buffer data: " + res);
|
|
1046
|
+
}
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
var filters = {
|
|
1050
|
+
NONE: "",
|
|
1051
|
+
OCTAHEDRAL: "meshopt_decodeFilterOct",
|
|
1052
|
+
QUATERNION: "meshopt_decodeFilterQuat",
|
|
1053
|
+
EXPONENTIAL: "meshopt_decodeFilterExp",
|
|
1054
|
+
};
|
|
1055
|
+
|
|
1056
|
+
var decoders = {
|
|
1057
|
+
ATTRIBUTES: "meshopt_decodeVertexBuffer",
|
|
1058
|
+
TRIANGLES: "meshopt_decodeIndexBuffer",
|
|
1059
|
+
INDICES: "meshopt_decodeIndexSequence",
|
|
1060
|
+
};
|
|
1061
|
+
|
|
1062
|
+
var workers = [];
|
|
1063
|
+
var requestId = 0;
|
|
1064
|
+
|
|
1065
|
+
function createWorker(url) {
|
|
1066
|
+
var worker = {
|
|
1067
|
+
object: new Worker(url),
|
|
1068
|
+
pending: 0,
|
|
1069
|
+
requests: {}
|
|
1070
|
+
};
|
|
1071
|
+
|
|
1072
|
+
worker.object.onmessage = function(event) {
|
|
1073
|
+
var data = event.data;
|
|
1074
|
+
|
|
1075
|
+
worker.pending -= data.count;
|
|
1076
|
+
worker.requests[data.id][data.action](data.value);
|
|
1077
|
+
|
|
1078
|
+
delete worker.requests[data.id];
|
|
1079
|
+
};
|
|
1080
|
+
|
|
1081
|
+
return worker;
|
|
1082
|
+
}
|
|
1083
|
+
|
|
1084
|
+
function initWorkers(count) {
|
|
1085
|
+
var source =
|
|
1086
|
+
"var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(unpack(wasm)) + "]), {})" +
|
|
1087
|
+
".then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });" +
|
|
1088
|
+
"self.onmessage = workerProcess;" +
|
|
1089
|
+
decode.toString() + workerProcess.toString();
|
|
1090
|
+
|
|
1091
|
+
var blob = new Blob([source], {type: 'text/javascript'});
|
|
1092
|
+
var url = URL.createObjectURL(blob);
|
|
1093
|
+
|
|
1094
|
+
for (var i = 0; i < count; ++i) {
|
|
1095
|
+
workers[i] = createWorker(url);
|
|
1096
|
+
}
|
|
1097
|
+
|
|
1098
|
+
URL.revokeObjectURL(url);
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
function decodeWorker(count, size, source, mode, filter) {
|
|
1102
|
+
var worker = workers[0];
|
|
1103
|
+
|
|
1104
|
+
for (var i = 1; i < workers.length; ++i) {
|
|
1105
|
+
if (workers[i].pending < worker.pending) {
|
|
1106
|
+
worker = workers[i];
|
|
1107
|
+
}
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
return new Promise(function (resolve, reject) {
|
|
1111
|
+
var data = new Uint8Array(source);
|
|
1112
|
+
var id = requestId++;
|
|
1113
|
+
|
|
1114
|
+
worker.pending += count;
|
|
1115
|
+
worker.requests[id] = { resolve: resolve, reject: reject };
|
|
1116
|
+
worker.object.postMessage({ id: id, count: count, size: size, source: data, mode: mode, filter: filter }, [ data.buffer ]);
|
|
1117
|
+
});
|
|
1118
|
+
}
|
|
1119
|
+
|
|
1120
|
+
function workerProcess(event) {
|
|
1121
|
+
ready.then(function() {
|
|
1122
|
+
var data = event.data;
|
|
1123
|
+
try {
|
|
1124
|
+
var target = new Uint8Array(data.count * data.size);
|
|
1125
|
+
decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);
|
|
1126
|
+
self.postMessage({ id: data.id, count: data.count, action: "resolve", value: target }, [ target.buffer ]);
|
|
1127
|
+
} catch (error) {
|
|
1128
|
+
self.postMessage({ id: data.id, count: data.count, action: "reject", value: error });
|
|
1129
|
+
}
|
|
1130
|
+
});
|
|
1131
|
+
}
|
|
1132
|
+
|
|
1133
|
+
return {
|
|
1134
|
+
ready: ready,
|
|
1135
|
+
supported: true,
|
|
1136
|
+
useWorkers: function(count) {
|
|
1137
|
+
initWorkers(count);
|
|
1138
|
+
},
|
|
1139
|
+
decodeVertexBuffer: function(target, count, size, source, filter) {
|
|
1140
|
+
decode(instance.exports.meshopt_decodeVertexBuffer, target, count, size, source, instance.exports[filters[filter]]);
|
|
1141
|
+
},
|
|
1142
|
+
decodeIndexBuffer: function(target, count, size, source) {
|
|
1143
|
+
decode(instance.exports.meshopt_decodeIndexBuffer, target, count, size, source);
|
|
1144
|
+
},
|
|
1145
|
+
decodeIndexSequence: function(target, count, size, source) {
|
|
1146
|
+
decode(instance.exports.meshopt_decodeIndexSequence, target, count, size, source);
|
|
1147
|
+
},
|
|
1148
|
+
decodeGltfBuffer: function(target, count, size, source, mode, filter) {
|
|
1149
|
+
decode(instance.exports[decoders[mode]], target, count, size, source, instance.exports[filters[filter]]);
|
|
1150
|
+
},
|
|
1151
|
+
decodeGltfBufferAsync: function(count, size, source, mode, filter) {
|
|
1152
|
+
if (workers.length > 0) {
|
|
1153
|
+
return decodeWorker(count, size, source, decoders[mode], filters[filter]);
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
return ready.then(function() {
|
|
1157
|
+
var target = new Uint8Array(count * size);
|
|
1158
|
+
decode(instance.exports[decoders[mode]], target, count, size, source, instance.exports[filters[filter]]);
|
|
1159
|
+
return target;
|
|
1160
|
+
});
|
|
1161
|
+
}
|
|
1162
|
+
};
|
|
1163
|
+
})();
|
|
1164
|
+
|
|
989
1165
|
const extToType = new Map([
|
|
990
1166
|
['bin', 'binary'],
|
|
991
1167
|
['css', 'css'],
|
|
@@ -1005,6 +1181,27 @@
|
|
|
1005
1181
|
['vert', 'shader'],
|
|
1006
1182
|
['webp', 'texture']
|
|
1007
1183
|
]);
|
|
1184
|
+
// provide buffer view callback so we can handle models compressed with MeshOptimizer
|
|
1185
|
+
// https://github.com/zeux/meshoptimizer
|
|
1186
|
+
const processBufferView = (gltfBuffer, buffers, continuation) => {
|
|
1187
|
+
if (gltfBuffer.extensions && gltfBuffer.extensions.EXT_meshopt_compression) {
|
|
1188
|
+
const extensionDef = gltfBuffer.extensions.EXT_meshopt_compression;
|
|
1189
|
+
Promise.all([MeshoptDecoder.ready, buffers[extensionDef.buffer]]).then((promiseResult) => {
|
|
1190
|
+
const buffer = promiseResult[1];
|
|
1191
|
+
const byteOffset = extensionDef.byteOffset || 0;
|
|
1192
|
+
const byteLength = extensionDef.byteLength || 0;
|
|
1193
|
+
const count = extensionDef.count;
|
|
1194
|
+
const stride = extensionDef.byteStride;
|
|
1195
|
+
const result = new Uint8Array(count * stride);
|
|
1196
|
+
const source = new Uint8Array(buffer.buffer, buffer.byteOffset + byteOffset, byteLength);
|
|
1197
|
+
MeshoptDecoder.decodeGltfBuffer(result, count, stride, source, extensionDef.mode, extensionDef.filter);
|
|
1198
|
+
continuation(null, result);
|
|
1199
|
+
});
|
|
1200
|
+
}
|
|
1201
|
+
else {
|
|
1202
|
+
continuation(null, null);
|
|
1203
|
+
}
|
|
1204
|
+
};
|
|
1008
1205
|
/**
|
|
1009
1206
|
* The AssetElement interface provides properties and methods for manipulating
|
|
1010
1207
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-asset/ | `<pc-asset>`} elements.
|
|
@@ -1031,13 +1228,23 @@
|
|
|
1031
1228
|
// If no type is specified, try to infer it from the file extension.
|
|
1032
1229
|
if (!type) {
|
|
1033
1230
|
const ext = src.split('.').pop();
|
|
1034
|
-
type = (_a = extToType.get(ext || '')) !== null && _a !==
|
|
1231
|
+
type = (_a = extToType.get(ext || '')) !== null && _a !== void 0 ? _a : null;
|
|
1035
1232
|
}
|
|
1036
1233
|
if (!type) {
|
|
1037
1234
|
console.warn(`Unsupported asset type: ${src}`);
|
|
1038
1235
|
return;
|
|
1039
1236
|
}
|
|
1040
|
-
|
|
1237
|
+
if (type === 'container') {
|
|
1238
|
+
this.asset = new playcanvas.Asset(id, type, { url: src }, undefined, {
|
|
1239
|
+
// @ts-ignore TODO no definition in pc
|
|
1240
|
+
bufferView: {
|
|
1241
|
+
processAsync: processBufferView.bind(this)
|
|
1242
|
+
}
|
|
1243
|
+
});
|
|
1244
|
+
}
|
|
1245
|
+
else {
|
|
1246
|
+
this.asset = new playcanvas.Asset(id, type, { url: src });
|
|
1247
|
+
}
|
|
1041
1248
|
this.asset.preload = !this._lazy;
|
|
1042
1249
|
}
|
|
1043
1250
|
destroyAsset() {
|
|
@@ -1065,7 +1272,7 @@
|
|
|
1065
1272
|
}
|
|
1066
1273
|
static get(id) {
|
|
1067
1274
|
const assetElement = document.querySelector(`pc-asset[id="${id}"]`);
|
|
1068
|
-
return assetElement === null || assetElement ===
|
|
1275
|
+
return assetElement === null || assetElement === void 0 ? void 0 : assetElement.asset;
|
|
1069
1276
|
}
|
|
1070
1277
|
static get observedAttributes() {
|
|
1071
1278
|
return ['lazy'];
|
|
@@ -1112,7 +1319,7 @@
|
|
|
1112
1319
|
initComponent() { }
|
|
1113
1320
|
async connectedCallback() {
|
|
1114
1321
|
var _a;
|
|
1115
|
-
await ((_a = this.closestApp) === null || _a ===
|
|
1322
|
+
await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
1116
1323
|
await this.addComponent();
|
|
1117
1324
|
this.initComponent();
|
|
1118
1325
|
this._onReady();
|
|
@@ -1243,7 +1450,7 @@
|
|
|
1243
1450
|
}
|
|
1244
1451
|
get xrAvailable() {
|
|
1245
1452
|
var _a;
|
|
1246
|
-
const xrManager = (_a = this.component) === null || _a ===
|
|
1453
|
+
const xrManager = (_a = this.component) === null || _a === void 0 ? void 0 : _a.system.app.xr;
|
|
1247
1454
|
return xrManager && xrManager.supported && xrManager.isAvailable(playcanvas.XRTYPE_VR);
|
|
1248
1455
|
}
|
|
1249
1456
|
/**
|
|
@@ -1574,7 +1781,7 @@
|
|
|
1574
1781
|
var _a;
|
|
1575
1782
|
this._tonemap = value;
|
|
1576
1783
|
if (this.component) {
|
|
1577
|
-
this.component.toneMapping = (_a = tonemaps.get(value)) !== null && _a !==
|
|
1784
|
+
this.component.toneMapping = (_a = tonemaps.get(value)) !== null && _a !== void 0 ? _a : playcanvas.TONEMAP_NONE;
|
|
1578
1785
|
}
|
|
1579
1786
|
}
|
|
1580
1787
|
/**
|
|
@@ -2110,64 +2317,6 @@
|
|
|
2110
2317
|
}
|
|
2111
2318
|
customElements.define('pc-element', ElementComponentElement);
|
|
2112
2319
|
|
|
2113
|
-
/**
|
|
2114
|
-
* The SplatComponentElement interface provides properties and methods for manipulating
|
|
2115
|
-
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-splat/ | `<pc-splat>`} elements.
|
|
2116
|
-
* The SplatComponentElement interface also inherits the properties and methods of the
|
|
2117
|
-
* {@link HTMLElement} interface.
|
|
2118
|
-
*
|
|
2119
|
-
* @category Components
|
|
2120
|
-
*/
|
|
2121
|
-
class SplatComponentElement extends ComponentElement {
|
|
2122
|
-
/** @ignore */
|
|
2123
|
-
constructor() {
|
|
2124
|
-
super('gsplat');
|
|
2125
|
-
this._asset = '';
|
|
2126
|
-
}
|
|
2127
|
-
getInitialComponentData() {
|
|
2128
|
-
return {
|
|
2129
|
-
asset: AssetElement.get(this._asset)
|
|
2130
|
-
};
|
|
2131
|
-
}
|
|
2132
|
-
/**
|
|
2133
|
-
* Gets the underlying PlayCanvas splat component.
|
|
2134
|
-
* @returns The splat component.
|
|
2135
|
-
*/
|
|
2136
|
-
get component() {
|
|
2137
|
-
return super.component;
|
|
2138
|
-
}
|
|
2139
|
-
/**
|
|
2140
|
-
* Sets id of the `pc-asset` to use for the splat.
|
|
2141
|
-
* @param value - The asset ID.
|
|
2142
|
-
*/
|
|
2143
|
-
set asset(value) {
|
|
2144
|
-
this._asset = value;
|
|
2145
|
-
const asset = AssetElement.get(value);
|
|
2146
|
-
if (this.component && asset) {
|
|
2147
|
-
this.component.asset = asset;
|
|
2148
|
-
}
|
|
2149
|
-
}
|
|
2150
|
-
/**
|
|
2151
|
-
* Gets the id of the `pc-asset` to use for the splat.
|
|
2152
|
-
* @returns The asset ID.
|
|
2153
|
-
*/
|
|
2154
|
-
get asset() {
|
|
2155
|
-
return this._asset;
|
|
2156
|
-
}
|
|
2157
|
-
static get observedAttributes() {
|
|
2158
|
-
return [...super.observedAttributes, 'asset'];
|
|
2159
|
-
}
|
|
2160
|
-
attributeChangedCallback(name, _oldValue, newValue) {
|
|
2161
|
-
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
2162
|
-
switch (name) {
|
|
2163
|
-
case 'asset':
|
|
2164
|
-
this.asset = newValue;
|
|
2165
|
-
break;
|
|
2166
|
-
}
|
|
2167
|
-
}
|
|
2168
|
-
}
|
|
2169
|
-
customElements.define('pc-splat', SplatComponentElement);
|
|
2170
|
-
|
|
2171
2320
|
const shadowTypes = new Map([
|
|
2172
2321
|
['pcf1-16f', playcanvas.SHADOW_PCF1_16F],
|
|
2173
2322
|
['pcf1-32f', playcanvas.SHADOW_PCF1_32F],
|
|
@@ -2436,7 +2585,7 @@
|
|
|
2436
2585
|
var _a;
|
|
2437
2586
|
this._shadowType = value;
|
|
2438
2587
|
if (this.component) {
|
|
2439
|
-
this.component.shadowType = (_a = shadowTypes.get(value)) !== null && _a !==
|
|
2588
|
+
this.component.shadowType = (_a = shadowTypes.get(value)) !== null && _a !== void 0 ? _a : playcanvas.SHADOW_PCF3_32F;
|
|
2440
2589
|
}
|
|
2441
2590
|
}
|
|
2442
2591
|
/**
|
|
@@ -2553,6 +2702,138 @@
|
|
|
2553
2702
|
}
|
|
2554
2703
|
customElements.define('pc-light', LightComponentElement);
|
|
2555
2704
|
|
|
2705
|
+
/**
|
|
2706
|
+
* The ParticleSystemComponentElement interface provides properties and methods for manipulating
|
|
2707
|
+
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-particles/ | `<pc-particles>`} elements.
|
|
2708
|
+
* The ParticleSystemComponentElement interface also inherits the properties and methods of the
|
|
2709
|
+
* {@link HTMLElement} interface.
|
|
2710
|
+
*
|
|
2711
|
+
* @category Components
|
|
2712
|
+
*/
|
|
2713
|
+
class ParticleSystemComponentElement extends ComponentElement {
|
|
2714
|
+
/** @ignore */
|
|
2715
|
+
constructor() {
|
|
2716
|
+
super('particlesystem');
|
|
2717
|
+
this._asset = '';
|
|
2718
|
+
}
|
|
2719
|
+
getInitialComponentData() {
|
|
2720
|
+
var _a;
|
|
2721
|
+
const asset = AssetElement.get(this._asset);
|
|
2722
|
+
if (!asset) {
|
|
2723
|
+
return {};
|
|
2724
|
+
}
|
|
2725
|
+
if (asset.resource.colorMapAsset) {
|
|
2726
|
+
const id = asset.resource.colorMapAsset;
|
|
2727
|
+
const colorMapAsset = (_a = AssetElement.get(id)) === null || _a === void 0 ? void 0 : _a.id;
|
|
2728
|
+
if (colorMapAsset) {
|
|
2729
|
+
asset.resource.colorMapAsset = colorMapAsset;
|
|
2730
|
+
}
|
|
2731
|
+
}
|
|
2732
|
+
return asset.resource;
|
|
2733
|
+
}
|
|
2734
|
+
/**
|
|
2735
|
+
* Gets the underlying PlayCanvas particle system component.
|
|
2736
|
+
* @returns The particle system component.
|
|
2737
|
+
*/
|
|
2738
|
+
get component() {
|
|
2739
|
+
return super.component;
|
|
2740
|
+
}
|
|
2741
|
+
applyConfig(resource) {
|
|
2742
|
+
if (!this.component) {
|
|
2743
|
+
return;
|
|
2744
|
+
}
|
|
2745
|
+
// Set all the config properties on the component
|
|
2746
|
+
for (const key in resource) {
|
|
2747
|
+
if (resource.hasOwnProperty(key)) {
|
|
2748
|
+
this.component[key] = resource[key];
|
|
2749
|
+
}
|
|
2750
|
+
}
|
|
2751
|
+
}
|
|
2752
|
+
async _loadAsset() {
|
|
2753
|
+
var _a;
|
|
2754
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
2755
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
2756
|
+
const asset = AssetElement.get(this._asset);
|
|
2757
|
+
if (!asset) {
|
|
2758
|
+
return;
|
|
2759
|
+
}
|
|
2760
|
+
if (asset.loaded) {
|
|
2761
|
+
this.applyConfig(asset.resource);
|
|
2762
|
+
}
|
|
2763
|
+
else {
|
|
2764
|
+
asset.once('load', () => {
|
|
2765
|
+
this.applyConfig(asset.resource);
|
|
2766
|
+
});
|
|
2767
|
+
app.assets.load(asset);
|
|
2768
|
+
}
|
|
2769
|
+
}
|
|
2770
|
+
/**
|
|
2771
|
+
* Sets the id of the `pc-asset` to use for the model.
|
|
2772
|
+
* @param value - The asset ID.
|
|
2773
|
+
*/
|
|
2774
|
+
set asset(value) {
|
|
2775
|
+
this._asset = value;
|
|
2776
|
+
if (this.isConnected) {
|
|
2777
|
+
this._loadAsset();
|
|
2778
|
+
}
|
|
2779
|
+
}
|
|
2780
|
+
/**
|
|
2781
|
+
* Gets the id of the `pc-asset` to use for the model.
|
|
2782
|
+
* @returns The asset ID.
|
|
2783
|
+
*/
|
|
2784
|
+
get asset() {
|
|
2785
|
+
return this._asset;
|
|
2786
|
+
}
|
|
2787
|
+
// Control methods
|
|
2788
|
+
/**
|
|
2789
|
+
* Starts playing the particle system
|
|
2790
|
+
*/
|
|
2791
|
+
play() {
|
|
2792
|
+
if (this.component) {
|
|
2793
|
+
this.component.play();
|
|
2794
|
+
}
|
|
2795
|
+
}
|
|
2796
|
+
/**
|
|
2797
|
+
* Pauses the particle system
|
|
2798
|
+
*/
|
|
2799
|
+
pause() {
|
|
2800
|
+
if (this.component) {
|
|
2801
|
+
this.component.pause();
|
|
2802
|
+
}
|
|
2803
|
+
}
|
|
2804
|
+
/**
|
|
2805
|
+
* Resets the particle system
|
|
2806
|
+
*/
|
|
2807
|
+
reset() {
|
|
2808
|
+
if (this.component) {
|
|
2809
|
+
this.component.reset();
|
|
2810
|
+
}
|
|
2811
|
+
}
|
|
2812
|
+
/**
|
|
2813
|
+
* Stops the particle system
|
|
2814
|
+
*/
|
|
2815
|
+
stop() {
|
|
2816
|
+
if (this.component) {
|
|
2817
|
+
this.component.stop();
|
|
2818
|
+
}
|
|
2819
|
+
}
|
|
2820
|
+
static get observedAttributes() {
|
|
2821
|
+
return [
|
|
2822
|
+
...super.observedAttributes,
|
|
2823
|
+
'asset'
|
|
2824
|
+
];
|
|
2825
|
+
}
|
|
2826
|
+
attributeChangedCallback(name, _oldValue, newValue) {
|
|
2827
|
+
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
2828
|
+
switch (name) {
|
|
2829
|
+
case 'asset':
|
|
2830
|
+
this.asset = newValue;
|
|
2831
|
+
break;
|
|
2832
|
+
}
|
|
2833
|
+
}
|
|
2834
|
+
}
|
|
2835
|
+
customElements.define('pc-particles', ParticleSystemComponentElement);
|
|
2836
|
+
|
|
2556
2837
|
/**
|
|
2557
2838
|
* The MaterialElement interface provides properties and methods for manipulating
|
|
2558
2839
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-material/ | `<pc-material>`} elements.
|
|
@@ -2643,7 +2924,7 @@
|
|
|
2643
2924
|
}
|
|
2644
2925
|
static get(id) {
|
|
2645
2926
|
const materialElement = document.querySelector(`pc-material[id="${id}"]`);
|
|
2646
|
-
return materialElement === null || materialElement ===
|
|
2927
|
+
return materialElement === null || materialElement === void 0 ? void 0 : materialElement.material;
|
|
2647
2928
|
}
|
|
2648
2929
|
static get observedAttributes() {
|
|
2649
2930
|
return ['diffuse', 'diffuse-map', 'metalness-map', 'normal-map', 'roughness-map'];
|
|
@@ -3323,7 +3604,7 @@
|
|
|
3323
3604
|
disconnectedCallback() {
|
|
3324
3605
|
var _a;
|
|
3325
3606
|
this.observer.disconnect();
|
|
3326
|
-
(_a = super.disconnectedCallback) === null || _a ===
|
|
3607
|
+
(_a = super.disconnectedCallback) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
3327
3608
|
}
|
|
3328
3609
|
/**
|
|
3329
3610
|
* Gets the underlying PlayCanvas script component.
|
|
@@ -3638,7 +3919,7 @@
|
|
|
3638
3919
|
}
|
|
3639
3920
|
async connectedCallback() {
|
|
3640
3921
|
var _a;
|
|
3641
|
-
await ((_a = this.soundElement) === null || _a ===
|
|
3922
|
+
await ((_a = this.soundElement) === null || _a === void 0 ? void 0 : _a.ready());
|
|
3642
3923
|
const options = {
|
|
3643
3924
|
autoPlay: this._autoPlay,
|
|
3644
3925
|
loop: this._loop,
|
|
@@ -3652,7 +3933,6 @@
|
|
|
3652
3933
|
}
|
|
3653
3934
|
this.soundSlot = this.soundElement.component.addSlot(this._name, options);
|
|
3654
3935
|
this.asset = this._asset;
|
|
3655
|
-
this.soundSlot.play();
|
|
3656
3936
|
this._onReady();
|
|
3657
3937
|
}
|
|
3658
3938
|
disconnectedCallback() {
|
|
@@ -3674,7 +3954,7 @@
|
|
|
3674
3954
|
var _a;
|
|
3675
3955
|
this._asset = value;
|
|
3676
3956
|
if (this.soundSlot) {
|
|
3677
|
-
const id = (_a = AssetElement.get(value)) === null || _a ===
|
|
3957
|
+
const id = (_a = AssetElement.get(value)) === null || _a === void 0 ? void 0 : _a.id;
|
|
3678
3958
|
if (id) {
|
|
3679
3959
|
this.soundSlot.asset = id;
|
|
3680
3960
|
}
|
|
@@ -3824,13 +4104,16 @@
|
|
|
3824
4104
|
return this._volume;
|
|
3825
4105
|
}
|
|
3826
4106
|
static get observedAttributes() {
|
|
3827
|
-
return ['asset', '
|
|
4107
|
+
return ['asset', 'auto-play', 'duration', 'loop', 'name', 'overlap', 'pitch', 'start-time', 'volume'];
|
|
3828
4108
|
}
|
|
3829
4109
|
attributeChangedCallback(name, _oldValue, newValue) {
|
|
3830
4110
|
switch (name) {
|
|
3831
4111
|
case 'asset':
|
|
3832
4112
|
this.asset = newValue;
|
|
3833
4113
|
break;
|
|
4114
|
+
case 'auto-play':
|
|
4115
|
+
this.autoPlay = this.hasAttribute('auto-play');
|
|
4116
|
+
break;
|
|
3834
4117
|
case 'duration':
|
|
3835
4118
|
this.duration = parseFloat(newValue);
|
|
3836
4119
|
break;
|
|
@@ -3846,7 +4129,7 @@
|
|
|
3846
4129
|
case 'pitch':
|
|
3847
4130
|
this.pitch = parseFloat(newValue);
|
|
3848
4131
|
break;
|
|
3849
|
-
case '
|
|
4132
|
+
case 'start-time':
|
|
3850
4133
|
this.startTime = parseFloat(newValue);
|
|
3851
4134
|
break;
|
|
3852
4135
|
case 'volume':
|
|
@@ -3857,6 +4140,64 @@
|
|
|
3857
4140
|
}
|
|
3858
4141
|
customElements.define('pc-sound', SoundSlotElement);
|
|
3859
4142
|
|
|
4143
|
+
/**
|
|
4144
|
+
* The SplatComponentElement interface provides properties and methods for manipulating
|
|
4145
|
+
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-splat/ | `<pc-splat>`} elements.
|
|
4146
|
+
* The SplatComponentElement interface also inherits the properties and methods of the
|
|
4147
|
+
* {@link HTMLElement} interface.
|
|
4148
|
+
*
|
|
4149
|
+
* @category Components
|
|
4150
|
+
*/
|
|
4151
|
+
class SplatComponentElement extends ComponentElement {
|
|
4152
|
+
/** @ignore */
|
|
4153
|
+
constructor() {
|
|
4154
|
+
super('gsplat');
|
|
4155
|
+
this._asset = '';
|
|
4156
|
+
}
|
|
4157
|
+
getInitialComponentData() {
|
|
4158
|
+
return {
|
|
4159
|
+
asset: AssetElement.get(this._asset)
|
|
4160
|
+
};
|
|
4161
|
+
}
|
|
4162
|
+
/**
|
|
4163
|
+
* Gets the underlying PlayCanvas splat component.
|
|
4164
|
+
* @returns The splat component.
|
|
4165
|
+
*/
|
|
4166
|
+
get component() {
|
|
4167
|
+
return super.component;
|
|
4168
|
+
}
|
|
4169
|
+
/**
|
|
4170
|
+
* Sets id of the `pc-asset` to use for the splat.
|
|
4171
|
+
* @param value - The asset ID.
|
|
4172
|
+
*/
|
|
4173
|
+
set asset(value) {
|
|
4174
|
+
this._asset = value;
|
|
4175
|
+
const asset = AssetElement.get(value);
|
|
4176
|
+
if (this.component && asset) {
|
|
4177
|
+
this.component.asset = asset;
|
|
4178
|
+
}
|
|
4179
|
+
}
|
|
4180
|
+
/**
|
|
4181
|
+
* Gets the id of the `pc-asset` to use for the splat.
|
|
4182
|
+
* @returns The asset ID.
|
|
4183
|
+
*/
|
|
4184
|
+
get asset() {
|
|
4185
|
+
return this._asset;
|
|
4186
|
+
}
|
|
4187
|
+
static get observedAttributes() {
|
|
4188
|
+
return [...super.observedAttributes, 'asset'];
|
|
4189
|
+
}
|
|
4190
|
+
attributeChangedCallback(name, _oldValue, newValue) {
|
|
4191
|
+
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
4192
|
+
switch (name) {
|
|
4193
|
+
case 'asset':
|
|
4194
|
+
this.asset = newValue;
|
|
4195
|
+
break;
|
|
4196
|
+
}
|
|
4197
|
+
}
|
|
4198
|
+
}
|
|
4199
|
+
customElements.define('pc-splat', SplatComponentElement);
|
|
4200
|
+
|
|
3860
4201
|
/**
|
|
3861
4202
|
* The ModelElement interface provides properties and methods for manipulating
|
|
3862
4203
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-model/ | `<pc-model>`} elements.
|
|
@@ -3902,8 +4243,8 @@
|
|
|
3902
4243
|
async _loadModel() {
|
|
3903
4244
|
var _a;
|
|
3904
4245
|
this._unloadModel();
|
|
3905
|
-
const appElement = await ((_a = this.closestApp) === null || _a ===
|
|
3906
|
-
const app = appElement === null || appElement ===
|
|
4246
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
4247
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
3907
4248
|
const asset = AssetElement.get(this._asset);
|
|
3908
4249
|
if (!asset) {
|
|
3909
4250
|
return;
|
|
@@ -3920,7 +4261,7 @@
|
|
|
3920
4261
|
}
|
|
3921
4262
|
_unloadModel() {
|
|
3922
4263
|
var _a;
|
|
3923
|
-
(_a = this._entity) === null || _a ===
|
|
4264
|
+
(_a = this._entity) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
3924
4265
|
this._entity = null;
|
|
3925
4266
|
}
|
|
3926
4267
|
/**
|
|
@@ -3993,7 +4334,7 @@
|
|
|
3993
4334
|
}
|
|
3994
4335
|
async connectedCallback() {
|
|
3995
4336
|
var _a;
|
|
3996
|
-
await ((_a = this.closestApp) === null || _a ===
|
|
4337
|
+
await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
3997
4338
|
this.scene = this.closestApp.app.scene;
|
|
3998
4339
|
this.updateSceneSettings();
|
|
3999
4340
|
this._onReady();
|
|
@@ -4186,11 +4527,12 @@
|
|
|
4186
4527
|
this._scene.sky.node.setLocalScale(this._scale);
|
|
4187
4528
|
this._scene.sky.center = this._center;
|
|
4188
4529
|
this._scene.skyboxIntensity = this._intensity;
|
|
4530
|
+
this._scene.skyboxMip = this._level;
|
|
4189
4531
|
}
|
|
4190
4532
|
async _loadSkybox() {
|
|
4191
4533
|
var _a;
|
|
4192
|
-
const appElement = await ((_a = this.closestApp) === null || _a ===
|
|
4193
|
-
const app = appElement === null || appElement ===
|
|
4534
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
4535
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
4194
4536
|
if (!app) {
|
|
4195
4537
|
return;
|
|
4196
4538
|
}
|
|
@@ -4213,10 +4555,10 @@
|
|
|
4213
4555
|
var _a, _b;
|
|
4214
4556
|
if (!this._scene)
|
|
4215
4557
|
return;
|
|
4216
|
-
(_a = this._scene.skybox) === null || _a ===
|
|
4558
|
+
(_a = this._scene.skybox) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
4217
4559
|
// @ts-ignore
|
|
4218
4560
|
this._scene.skybox = null;
|
|
4219
|
-
(_b = this._scene.envAtlas) === null || _b ===
|
|
4561
|
+
(_b = this._scene.envAtlas) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
4220
4562
|
// @ts-ignore
|
|
4221
4563
|
this._scene.envAtlas = null;
|
|
4222
4564
|
this._scene = null;
|
|
@@ -4405,6 +4747,7 @@
|
|
|
4405
4747
|
exports.MaterialElement = MaterialElement;
|
|
4406
4748
|
exports.ModelElement = ModelElement;
|
|
4407
4749
|
exports.ModuleElement = ModuleElement;
|
|
4750
|
+
exports.ParticleSystemComponentElement = ParticleSystemComponentElement;
|
|
4408
4751
|
exports.RenderComponentElement = RenderComponentElement;
|
|
4409
4752
|
exports.RigidBodyComponentElement = RigidBodyComponentElement;
|
|
4410
4753
|
exports.SceneElement = SceneElement;
|