@playcanvas/web-components 0.2.2 → 0.2.3
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 +421 -81
- package/dist/pwc.cjs.map +1 -1
- package/dist/pwc.js +421 -81
- 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 +421 -82
- 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/index.ts +4 -2
package/dist/pwc.cjs
CHANGED
|
@@ -15,11 +15,11 @@ class AsyncElement extends HTMLElement {
|
|
|
15
15
|
}
|
|
16
16
|
get closestApp() {
|
|
17
17
|
var _a;
|
|
18
|
-
return (_a = this.parentElement) === null || _a ===
|
|
18
|
+
return (_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.closest('pc-app');
|
|
19
19
|
}
|
|
20
20
|
get closestEntity() {
|
|
21
21
|
var _a;
|
|
22
|
-
return (_a = this.parentElement) === null || _a ===
|
|
22
|
+
return (_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.closest('pc-entity');
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* Called when the element is fully initialized and ready.
|
|
@@ -757,7 +757,7 @@ class EntityElement extends AsyncElement {
|
|
|
757
757
|
if (!this.entity)
|
|
758
758
|
return;
|
|
759
759
|
const closestEntity = this.closestEntity;
|
|
760
|
-
if (closestEntity === null || closestEntity ===
|
|
760
|
+
if (closestEntity === null || closestEntity === void 0 ? void 0 : closestEntity.entity) {
|
|
761
761
|
closestEntity.entity.addChild(this.entity);
|
|
762
762
|
}
|
|
763
763
|
else {
|
|
@@ -979,11 +979,187 @@ class EntityElement extends AsyncElement {
|
|
|
979
979
|
}
|
|
980
980
|
hasListeners(type) {
|
|
981
981
|
var _a;
|
|
982
|
-
return Boolean((_a = this._listeners[type]) === null || _a ===
|
|
982
|
+
return Boolean((_a = this._listeners[type]) === null || _a === void 0 ? void 0 : _a.length);
|
|
983
983
|
}
|
|
984
984
|
}
|
|
985
985
|
customElements.define('pc-entity', EntityElement);
|
|
986
986
|
|
|
987
|
+
// This file is part of meshoptimizer library and is distributed under the terms of MIT License.
|
|
988
|
+
// Copyright (C) 2016-2022, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com)
|
|
989
|
+
var MeshoptDecoder = (function() {
|
|
990
|
+
|
|
991
|
+
// Built with clang version 14.0.4
|
|
992
|
+
// Built from meshoptimizer 0.18
|
|
993
|
+
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";
|
|
994
|
+
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";
|
|
995
|
+
|
|
996
|
+
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]);
|
|
997
|
+
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]);
|
|
998
|
+
|
|
999
|
+
if (typeof WebAssembly !== 'object') {
|
|
1000
|
+
return {
|
|
1001
|
+
supported: false,
|
|
1002
|
+
};
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
var wasm = WebAssembly.validate(detector) ? wasm_simd : wasm_base;
|
|
1006
|
+
|
|
1007
|
+
var instance;
|
|
1008
|
+
|
|
1009
|
+
var ready =
|
|
1010
|
+
WebAssembly.instantiate(unpack(wasm), {})
|
|
1011
|
+
.then(function(result) {
|
|
1012
|
+
instance = result.instance;
|
|
1013
|
+
instance.exports.__wasm_call_ctors();
|
|
1014
|
+
});
|
|
1015
|
+
|
|
1016
|
+
function unpack(data) {
|
|
1017
|
+
var result = new Uint8Array(data.length);
|
|
1018
|
+
for (var i = 0; i < data.length; ++i) {
|
|
1019
|
+
var ch = data.charCodeAt(i);
|
|
1020
|
+
result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
|
|
1021
|
+
}
|
|
1022
|
+
var write = 0;
|
|
1023
|
+
for (var i = 0; i < data.length; ++i) {
|
|
1024
|
+
result[write++] = (result[i] < 60) ? wasmpack[result[i]] : (result[i] - 60) * 64 + result[++i];
|
|
1025
|
+
}
|
|
1026
|
+
return result.buffer.slice(0, write);
|
|
1027
|
+
}
|
|
1028
|
+
|
|
1029
|
+
function decode(fun, target, count, size, source, filter) {
|
|
1030
|
+
var sbrk = instance.exports.sbrk;
|
|
1031
|
+
var count4 = (count + 3) & -4;
|
|
1032
|
+
var tp = sbrk(count4 * size);
|
|
1033
|
+
var sp = sbrk(source.length);
|
|
1034
|
+
var heap = new Uint8Array(instance.exports.memory.buffer);
|
|
1035
|
+
heap.set(source, sp);
|
|
1036
|
+
var res = fun(tp, count, size, sp, source.length);
|
|
1037
|
+
if (res == 0 && filter) {
|
|
1038
|
+
filter(tp, count4, size);
|
|
1039
|
+
}
|
|
1040
|
+
target.set(heap.subarray(tp, tp + count * size));
|
|
1041
|
+
sbrk(tp - sbrk(0));
|
|
1042
|
+
if (res != 0) {
|
|
1043
|
+
throw new Error("Malformed buffer data: " + res);
|
|
1044
|
+
}
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1047
|
+
var filters = {
|
|
1048
|
+
NONE: "",
|
|
1049
|
+
OCTAHEDRAL: "meshopt_decodeFilterOct",
|
|
1050
|
+
QUATERNION: "meshopt_decodeFilterQuat",
|
|
1051
|
+
EXPONENTIAL: "meshopt_decodeFilterExp",
|
|
1052
|
+
};
|
|
1053
|
+
|
|
1054
|
+
var decoders = {
|
|
1055
|
+
ATTRIBUTES: "meshopt_decodeVertexBuffer",
|
|
1056
|
+
TRIANGLES: "meshopt_decodeIndexBuffer",
|
|
1057
|
+
INDICES: "meshopt_decodeIndexSequence",
|
|
1058
|
+
};
|
|
1059
|
+
|
|
1060
|
+
var workers = [];
|
|
1061
|
+
var requestId = 0;
|
|
1062
|
+
|
|
1063
|
+
function createWorker(url) {
|
|
1064
|
+
var worker = {
|
|
1065
|
+
object: new Worker(url),
|
|
1066
|
+
pending: 0,
|
|
1067
|
+
requests: {}
|
|
1068
|
+
};
|
|
1069
|
+
|
|
1070
|
+
worker.object.onmessage = function(event) {
|
|
1071
|
+
var data = event.data;
|
|
1072
|
+
|
|
1073
|
+
worker.pending -= data.count;
|
|
1074
|
+
worker.requests[data.id][data.action](data.value);
|
|
1075
|
+
|
|
1076
|
+
delete worker.requests[data.id];
|
|
1077
|
+
};
|
|
1078
|
+
|
|
1079
|
+
return worker;
|
|
1080
|
+
}
|
|
1081
|
+
|
|
1082
|
+
function initWorkers(count) {
|
|
1083
|
+
var source =
|
|
1084
|
+
"var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(unpack(wasm)) + "]), {})" +
|
|
1085
|
+
".then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });" +
|
|
1086
|
+
"self.onmessage = workerProcess;" +
|
|
1087
|
+
decode.toString() + workerProcess.toString();
|
|
1088
|
+
|
|
1089
|
+
var blob = new Blob([source], {type: 'text/javascript'});
|
|
1090
|
+
var url = URL.createObjectURL(blob);
|
|
1091
|
+
|
|
1092
|
+
for (var i = 0; i < count; ++i) {
|
|
1093
|
+
workers[i] = createWorker(url);
|
|
1094
|
+
}
|
|
1095
|
+
|
|
1096
|
+
URL.revokeObjectURL(url);
|
|
1097
|
+
}
|
|
1098
|
+
|
|
1099
|
+
function decodeWorker(count, size, source, mode, filter) {
|
|
1100
|
+
var worker = workers[0];
|
|
1101
|
+
|
|
1102
|
+
for (var i = 1; i < workers.length; ++i) {
|
|
1103
|
+
if (workers[i].pending < worker.pending) {
|
|
1104
|
+
worker = workers[i];
|
|
1105
|
+
}
|
|
1106
|
+
}
|
|
1107
|
+
|
|
1108
|
+
return new Promise(function (resolve, reject) {
|
|
1109
|
+
var data = new Uint8Array(source);
|
|
1110
|
+
var id = requestId++;
|
|
1111
|
+
|
|
1112
|
+
worker.pending += count;
|
|
1113
|
+
worker.requests[id] = { resolve: resolve, reject: reject };
|
|
1114
|
+
worker.object.postMessage({ id: id, count: count, size: size, source: data, mode: mode, filter: filter }, [ data.buffer ]);
|
|
1115
|
+
});
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
function workerProcess(event) {
|
|
1119
|
+
ready.then(function() {
|
|
1120
|
+
var data = event.data;
|
|
1121
|
+
try {
|
|
1122
|
+
var target = new Uint8Array(data.count * data.size);
|
|
1123
|
+
decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);
|
|
1124
|
+
self.postMessage({ id: data.id, count: data.count, action: "resolve", value: target }, [ target.buffer ]);
|
|
1125
|
+
} catch (error) {
|
|
1126
|
+
self.postMessage({ id: data.id, count: data.count, action: "reject", value: error });
|
|
1127
|
+
}
|
|
1128
|
+
});
|
|
1129
|
+
}
|
|
1130
|
+
|
|
1131
|
+
return {
|
|
1132
|
+
ready: ready,
|
|
1133
|
+
supported: true,
|
|
1134
|
+
useWorkers: function(count) {
|
|
1135
|
+
initWorkers(count);
|
|
1136
|
+
},
|
|
1137
|
+
decodeVertexBuffer: function(target, count, size, source, filter) {
|
|
1138
|
+
decode(instance.exports.meshopt_decodeVertexBuffer, target, count, size, source, instance.exports[filters[filter]]);
|
|
1139
|
+
},
|
|
1140
|
+
decodeIndexBuffer: function(target, count, size, source) {
|
|
1141
|
+
decode(instance.exports.meshopt_decodeIndexBuffer, target, count, size, source);
|
|
1142
|
+
},
|
|
1143
|
+
decodeIndexSequence: function(target, count, size, source) {
|
|
1144
|
+
decode(instance.exports.meshopt_decodeIndexSequence, target, count, size, source);
|
|
1145
|
+
},
|
|
1146
|
+
decodeGltfBuffer: function(target, count, size, source, mode, filter) {
|
|
1147
|
+
decode(instance.exports[decoders[mode]], target, count, size, source, instance.exports[filters[filter]]);
|
|
1148
|
+
},
|
|
1149
|
+
decodeGltfBufferAsync: function(count, size, source, mode, filter) {
|
|
1150
|
+
if (workers.length > 0) {
|
|
1151
|
+
return decodeWorker(count, size, source, decoders[mode], filters[filter]);
|
|
1152
|
+
}
|
|
1153
|
+
|
|
1154
|
+
return ready.then(function() {
|
|
1155
|
+
var target = new Uint8Array(count * size);
|
|
1156
|
+
decode(instance.exports[decoders[mode]], target, count, size, source, instance.exports[filters[filter]]);
|
|
1157
|
+
return target;
|
|
1158
|
+
});
|
|
1159
|
+
}
|
|
1160
|
+
};
|
|
1161
|
+
})();
|
|
1162
|
+
|
|
987
1163
|
const extToType = new Map([
|
|
988
1164
|
['bin', 'binary'],
|
|
989
1165
|
['css', 'css'],
|
|
@@ -1003,6 +1179,27 @@ const extToType = new Map([
|
|
|
1003
1179
|
['vert', 'shader'],
|
|
1004
1180
|
['webp', 'texture']
|
|
1005
1181
|
]);
|
|
1182
|
+
// provide buffer view callback so we can handle models compressed with MeshOptimizer
|
|
1183
|
+
// https://github.com/zeux/meshoptimizer
|
|
1184
|
+
const processBufferView = (gltfBuffer, buffers, continuation) => {
|
|
1185
|
+
if (gltfBuffer.extensions && gltfBuffer.extensions.EXT_meshopt_compression) {
|
|
1186
|
+
const extensionDef = gltfBuffer.extensions.EXT_meshopt_compression;
|
|
1187
|
+
Promise.all([MeshoptDecoder.ready, buffers[extensionDef.buffer]]).then((promiseResult) => {
|
|
1188
|
+
const buffer = promiseResult[1];
|
|
1189
|
+
const byteOffset = extensionDef.byteOffset || 0;
|
|
1190
|
+
const byteLength = extensionDef.byteLength || 0;
|
|
1191
|
+
const count = extensionDef.count;
|
|
1192
|
+
const stride = extensionDef.byteStride;
|
|
1193
|
+
const result = new Uint8Array(count * stride);
|
|
1194
|
+
const source = new Uint8Array(buffer.buffer, buffer.byteOffset + byteOffset, byteLength);
|
|
1195
|
+
MeshoptDecoder.decodeGltfBuffer(result, count, stride, source, extensionDef.mode, extensionDef.filter);
|
|
1196
|
+
continuation(null, result);
|
|
1197
|
+
});
|
|
1198
|
+
}
|
|
1199
|
+
else {
|
|
1200
|
+
continuation(null, null);
|
|
1201
|
+
}
|
|
1202
|
+
};
|
|
1006
1203
|
/**
|
|
1007
1204
|
* The AssetElement interface provides properties and methods for manipulating
|
|
1008
1205
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-asset/ | `<pc-asset>`} elements.
|
|
@@ -1029,13 +1226,23 @@ class AssetElement extends HTMLElement {
|
|
|
1029
1226
|
// If no type is specified, try to infer it from the file extension.
|
|
1030
1227
|
if (!type) {
|
|
1031
1228
|
const ext = src.split('.').pop();
|
|
1032
|
-
type = (_a = extToType.get(ext || '')) !== null && _a !==
|
|
1229
|
+
type = (_a = extToType.get(ext || '')) !== null && _a !== void 0 ? _a : null;
|
|
1033
1230
|
}
|
|
1034
1231
|
if (!type) {
|
|
1035
1232
|
console.warn(`Unsupported asset type: ${src}`);
|
|
1036
1233
|
return;
|
|
1037
1234
|
}
|
|
1038
|
-
|
|
1235
|
+
if (type === 'container') {
|
|
1236
|
+
this.asset = new playcanvas.Asset(id, type, { url: src }, undefined, {
|
|
1237
|
+
// @ts-ignore TODO no definition in pc
|
|
1238
|
+
bufferView: {
|
|
1239
|
+
processAsync: processBufferView.bind(this)
|
|
1240
|
+
}
|
|
1241
|
+
});
|
|
1242
|
+
}
|
|
1243
|
+
else {
|
|
1244
|
+
this.asset = new playcanvas.Asset(id, type, { url: src });
|
|
1245
|
+
}
|
|
1039
1246
|
this.asset.preload = !this._lazy;
|
|
1040
1247
|
}
|
|
1041
1248
|
destroyAsset() {
|
|
@@ -1063,7 +1270,7 @@ class AssetElement extends HTMLElement {
|
|
|
1063
1270
|
}
|
|
1064
1271
|
static get(id) {
|
|
1065
1272
|
const assetElement = document.querySelector(`pc-asset[id="${id}"]`);
|
|
1066
|
-
return assetElement === null || assetElement ===
|
|
1273
|
+
return assetElement === null || assetElement === void 0 ? void 0 : assetElement.asset;
|
|
1067
1274
|
}
|
|
1068
1275
|
static get observedAttributes() {
|
|
1069
1276
|
return ['lazy'];
|
|
@@ -1110,7 +1317,7 @@ class ComponentElement extends AsyncElement {
|
|
|
1110
1317
|
initComponent() { }
|
|
1111
1318
|
async connectedCallback() {
|
|
1112
1319
|
var _a;
|
|
1113
|
-
await ((_a = this.closestApp) === null || _a ===
|
|
1320
|
+
await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
1114
1321
|
await this.addComponent();
|
|
1115
1322
|
this.initComponent();
|
|
1116
1323
|
this._onReady();
|
|
@@ -1241,7 +1448,7 @@ class CameraComponentElement extends ComponentElement {
|
|
|
1241
1448
|
}
|
|
1242
1449
|
get xrAvailable() {
|
|
1243
1450
|
var _a;
|
|
1244
|
-
const xrManager = (_a = this.component) === null || _a ===
|
|
1451
|
+
const xrManager = (_a = this.component) === null || _a === void 0 ? void 0 : _a.system.app.xr;
|
|
1245
1452
|
return xrManager && xrManager.supported && xrManager.isAvailable(playcanvas.XRTYPE_VR);
|
|
1246
1453
|
}
|
|
1247
1454
|
/**
|
|
@@ -1572,7 +1779,7 @@ class CameraComponentElement extends ComponentElement {
|
|
|
1572
1779
|
var _a;
|
|
1573
1780
|
this._tonemap = value;
|
|
1574
1781
|
if (this.component) {
|
|
1575
|
-
this.component.toneMapping = (_a = tonemaps.get(value)) !== null && _a !==
|
|
1782
|
+
this.component.toneMapping = (_a = tonemaps.get(value)) !== null && _a !== void 0 ? _a : playcanvas.TONEMAP_NONE;
|
|
1576
1783
|
}
|
|
1577
1784
|
}
|
|
1578
1785
|
/**
|
|
@@ -2108,64 +2315,6 @@ class ElementComponentElement extends ComponentElement {
|
|
|
2108
2315
|
}
|
|
2109
2316
|
customElements.define('pc-element', ElementComponentElement);
|
|
2110
2317
|
|
|
2111
|
-
/**
|
|
2112
|
-
* The SplatComponentElement interface provides properties and methods for manipulating
|
|
2113
|
-
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-splat/ | `<pc-splat>`} elements.
|
|
2114
|
-
* The SplatComponentElement interface also inherits the properties and methods of the
|
|
2115
|
-
* {@link HTMLElement} interface.
|
|
2116
|
-
*
|
|
2117
|
-
* @category Components
|
|
2118
|
-
*/
|
|
2119
|
-
class SplatComponentElement extends ComponentElement {
|
|
2120
|
-
/** @ignore */
|
|
2121
|
-
constructor() {
|
|
2122
|
-
super('gsplat');
|
|
2123
|
-
this._asset = '';
|
|
2124
|
-
}
|
|
2125
|
-
getInitialComponentData() {
|
|
2126
|
-
return {
|
|
2127
|
-
asset: AssetElement.get(this._asset)
|
|
2128
|
-
};
|
|
2129
|
-
}
|
|
2130
|
-
/**
|
|
2131
|
-
* Gets the underlying PlayCanvas splat component.
|
|
2132
|
-
* @returns The splat component.
|
|
2133
|
-
*/
|
|
2134
|
-
get component() {
|
|
2135
|
-
return super.component;
|
|
2136
|
-
}
|
|
2137
|
-
/**
|
|
2138
|
-
* Sets id of the `pc-asset` to use for the splat.
|
|
2139
|
-
* @param value - The asset ID.
|
|
2140
|
-
*/
|
|
2141
|
-
set asset(value) {
|
|
2142
|
-
this._asset = value;
|
|
2143
|
-
const asset = AssetElement.get(value);
|
|
2144
|
-
if (this.component && asset) {
|
|
2145
|
-
this.component.asset = asset;
|
|
2146
|
-
}
|
|
2147
|
-
}
|
|
2148
|
-
/**
|
|
2149
|
-
* Gets the id of the `pc-asset` to use for the splat.
|
|
2150
|
-
* @returns The asset ID.
|
|
2151
|
-
*/
|
|
2152
|
-
get asset() {
|
|
2153
|
-
return this._asset;
|
|
2154
|
-
}
|
|
2155
|
-
static get observedAttributes() {
|
|
2156
|
-
return [...super.observedAttributes, 'asset'];
|
|
2157
|
-
}
|
|
2158
|
-
attributeChangedCallback(name, _oldValue, newValue) {
|
|
2159
|
-
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
2160
|
-
switch (name) {
|
|
2161
|
-
case 'asset':
|
|
2162
|
-
this.asset = newValue;
|
|
2163
|
-
break;
|
|
2164
|
-
}
|
|
2165
|
-
}
|
|
2166
|
-
}
|
|
2167
|
-
customElements.define('pc-splat', SplatComponentElement);
|
|
2168
|
-
|
|
2169
2318
|
const shadowTypes = new Map([
|
|
2170
2319
|
['pcf1-16f', playcanvas.SHADOW_PCF1_16F],
|
|
2171
2320
|
['pcf1-32f', playcanvas.SHADOW_PCF1_32F],
|
|
@@ -2434,7 +2583,7 @@ class LightComponentElement extends ComponentElement {
|
|
|
2434
2583
|
var _a;
|
|
2435
2584
|
this._shadowType = value;
|
|
2436
2585
|
if (this.component) {
|
|
2437
|
-
this.component.shadowType = (_a = shadowTypes.get(value)) !== null && _a !==
|
|
2586
|
+
this.component.shadowType = (_a = shadowTypes.get(value)) !== null && _a !== void 0 ? _a : playcanvas.SHADOW_PCF3_32F;
|
|
2438
2587
|
}
|
|
2439
2588
|
}
|
|
2440
2589
|
/**
|
|
@@ -2551,6 +2700,138 @@ class LightComponentElement extends ComponentElement {
|
|
|
2551
2700
|
}
|
|
2552
2701
|
customElements.define('pc-light', LightComponentElement);
|
|
2553
2702
|
|
|
2703
|
+
/**
|
|
2704
|
+
* The ParticleSystemComponentElement interface provides properties and methods for manipulating
|
|
2705
|
+
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-particles/ | `<pc-particles>`} elements.
|
|
2706
|
+
* The ParticleSystemComponentElement interface also inherits the properties and methods of the
|
|
2707
|
+
* {@link HTMLElement} interface.
|
|
2708
|
+
*
|
|
2709
|
+
* @category Components
|
|
2710
|
+
*/
|
|
2711
|
+
class ParticleSystemComponentElement extends ComponentElement {
|
|
2712
|
+
/** @ignore */
|
|
2713
|
+
constructor() {
|
|
2714
|
+
super('particlesystem');
|
|
2715
|
+
this._asset = '';
|
|
2716
|
+
}
|
|
2717
|
+
getInitialComponentData() {
|
|
2718
|
+
var _a;
|
|
2719
|
+
const asset = AssetElement.get(this._asset);
|
|
2720
|
+
if (!asset) {
|
|
2721
|
+
return {};
|
|
2722
|
+
}
|
|
2723
|
+
if (asset.resource.colorMapAsset) {
|
|
2724
|
+
const id = asset.resource.colorMapAsset;
|
|
2725
|
+
const colorMapAsset = (_a = AssetElement.get(id)) === null || _a === void 0 ? void 0 : _a.id;
|
|
2726
|
+
if (colorMapAsset) {
|
|
2727
|
+
asset.resource.colorMapAsset = colorMapAsset;
|
|
2728
|
+
}
|
|
2729
|
+
}
|
|
2730
|
+
return asset.resource;
|
|
2731
|
+
}
|
|
2732
|
+
/**
|
|
2733
|
+
* Gets the underlying PlayCanvas particle system component.
|
|
2734
|
+
* @returns The particle system component.
|
|
2735
|
+
*/
|
|
2736
|
+
get component() {
|
|
2737
|
+
return super.component;
|
|
2738
|
+
}
|
|
2739
|
+
applyConfig(resource) {
|
|
2740
|
+
if (!this.component) {
|
|
2741
|
+
return;
|
|
2742
|
+
}
|
|
2743
|
+
// Set all the config properties on the component
|
|
2744
|
+
for (const key in resource) {
|
|
2745
|
+
if (resource.hasOwnProperty(key)) {
|
|
2746
|
+
this.component[key] = resource[key];
|
|
2747
|
+
}
|
|
2748
|
+
}
|
|
2749
|
+
}
|
|
2750
|
+
async _loadAsset() {
|
|
2751
|
+
var _a;
|
|
2752
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
2753
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
2754
|
+
const asset = AssetElement.get(this._asset);
|
|
2755
|
+
if (!asset) {
|
|
2756
|
+
return;
|
|
2757
|
+
}
|
|
2758
|
+
if (asset.loaded) {
|
|
2759
|
+
this.applyConfig(asset.resource);
|
|
2760
|
+
}
|
|
2761
|
+
else {
|
|
2762
|
+
asset.once('load', () => {
|
|
2763
|
+
this.applyConfig(asset.resource);
|
|
2764
|
+
});
|
|
2765
|
+
app.assets.load(asset);
|
|
2766
|
+
}
|
|
2767
|
+
}
|
|
2768
|
+
/**
|
|
2769
|
+
* Sets the id of the `pc-asset` to use for the model.
|
|
2770
|
+
* @param value - The asset ID.
|
|
2771
|
+
*/
|
|
2772
|
+
set asset(value) {
|
|
2773
|
+
this._asset = value;
|
|
2774
|
+
if (this.isConnected) {
|
|
2775
|
+
this._loadAsset();
|
|
2776
|
+
}
|
|
2777
|
+
}
|
|
2778
|
+
/**
|
|
2779
|
+
* Gets the id of the `pc-asset` to use for the model.
|
|
2780
|
+
* @returns The asset ID.
|
|
2781
|
+
*/
|
|
2782
|
+
get asset() {
|
|
2783
|
+
return this._asset;
|
|
2784
|
+
}
|
|
2785
|
+
// Control methods
|
|
2786
|
+
/**
|
|
2787
|
+
* Starts playing the particle system
|
|
2788
|
+
*/
|
|
2789
|
+
play() {
|
|
2790
|
+
if (this.component) {
|
|
2791
|
+
this.component.play();
|
|
2792
|
+
}
|
|
2793
|
+
}
|
|
2794
|
+
/**
|
|
2795
|
+
* Pauses the particle system
|
|
2796
|
+
*/
|
|
2797
|
+
pause() {
|
|
2798
|
+
if (this.component) {
|
|
2799
|
+
this.component.pause();
|
|
2800
|
+
}
|
|
2801
|
+
}
|
|
2802
|
+
/**
|
|
2803
|
+
* Resets the particle system
|
|
2804
|
+
*/
|
|
2805
|
+
reset() {
|
|
2806
|
+
if (this.component) {
|
|
2807
|
+
this.component.reset();
|
|
2808
|
+
}
|
|
2809
|
+
}
|
|
2810
|
+
/**
|
|
2811
|
+
* Stops the particle system
|
|
2812
|
+
*/
|
|
2813
|
+
stop() {
|
|
2814
|
+
if (this.component) {
|
|
2815
|
+
this.component.stop();
|
|
2816
|
+
}
|
|
2817
|
+
}
|
|
2818
|
+
static get observedAttributes() {
|
|
2819
|
+
return [
|
|
2820
|
+
...super.observedAttributes,
|
|
2821
|
+
'asset'
|
|
2822
|
+
];
|
|
2823
|
+
}
|
|
2824
|
+
attributeChangedCallback(name, _oldValue, newValue) {
|
|
2825
|
+
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
2826
|
+
switch (name) {
|
|
2827
|
+
case 'asset':
|
|
2828
|
+
this.asset = newValue;
|
|
2829
|
+
break;
|
|
2830
|
+
}
|
|
2831
|
+
}
|
|
2832
|
+
}
|
|
2833
|
+
customElements.define('pc-particles', ParticleSystemComponentElement);
|
|
2834
|
+
|
|
2554
2835
|
/**
|
|
2555
2836
|
* The MaterialElement interface provides properties and methods for manipulating
|
|
2556
2837
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-material/ | `<pc-material>`} elements.
|
|
@@ -2641,7 +2922,7 @@ class MaterialElement extends HTMLElement {
|
|
|
2641
2922
|
}
|
|
2642
2923
|
static get(id) {
|
|
2643
2924
|
const materialElement = document.querySelector(`pc-material[id="${id}"]`);
|
|
2644
|
-
return materialElement === null || materialElement ===
|
|
2925
|
+
return materialElement === null || materialElement === void 0 ? void 0 : materialElement.material;
|
|
2645
2926
|
}
|
|
2646
2927
|
static get observedAttributes() {
|
|
2647
2928
|
return ['diffuse', 'diffuse-map', 'metalness-map', 'normal-map', 'roughness-map'];
|
|
@@ -3321,7 +3602,7 @@ class ScriptComponentElement extends ComponentElement {
|
|
|
3321
3602
|
disconnectedCallback() {
|
|
3322
3603
|
var _a;
|
|
3323
3604
|
this.observer.disconnect();
|
|
3324
|
-
(_a = super.disconnectedCallback) === null || _a ===
|
|
3605
|
+
(_a = super.disconnectedCallback) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
3325
3606
|
}
|
|
3326
3607
|
/**
|
|
3327
3608
|
* Gets the underlying PlayCanvas script component.
|
|
@@ -3636,7 +3917,7 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3636
3917
|
}
|
|
3637
3918
|
async connectedCallback() {
|
|
3638
3919
|
var _a;
|
|
3639
|
-
await ((_a = this.soundElement) === null || _a ===
|
|
3920
|
+
await ((_a = this.soundElement) === null || _a === void 0 ? void 0 : _a.ready());
|
|
3640
3921
|
const options = {
|
|
3641
3922
|
autoPlay: this._autoPlay,
|
|
3642
3923
|
loop: this._loop,
|
|
@@ -3672,7 +3953,7 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3672
3953
|
var _a;
|
|
3673
3954
|
this._asset = value;
|
|
3674
3955
|
if (this.soundSlot) {
|
|
3675
|
-
const id = (_a = AssetElement.get(value)) === null || _a ===
|
|
3956
|
+
const id = (_a = AssetElement.get(value)) === null || _a === void 0 ? void 0 : _a.id;
|
|
3676
3957
|
if (id) {
|
|
3677
3958
|
this.soundSlot.asset = id;
|
|
3678
3959
|
}
|
|
@@ -3855,6 +4136,64 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3855
4136
|
}
|
|
3856
4137
|
customElements.define('pc-sound', SoundSlotElement);
|
|
3857
4138
|
|
|
4139
|
+
/**
|
|
4140
|
+
* The SplatComponentElement interface provides properties and methods for manipulating
|
|
4141
|
+
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-splat/ | `<pc-splat>`} elements.
|
|
4142
|
+
* The SplatComponentElement interface also inherits the properties and methods of the
|
|
4143
|
+
* {@link HTMLElement} interface.
|
|
4144
|
+
*
|
|
4145
|
+
* @category Components
|
|
4146
|
+
*/
|
|
4147
|
+
class SplatComponentElement extends ComponentElement {
|
|
4148
|
+
/** @ignore */
|
|
4149
|
+
constructor() {
|
|
4150
|
+
super('gsplat');
|
|
4151
|
+
this._asset = '';
|
|
4152
|
+
}
|
|
4153
|
+
getInitialComponentData() {
|
|
4154
|
+
return {
|
|
4155
|
+
asset: AssetElement.get(this._asset)
|
|
4156
|
+
};
|
|
4157
|
+
}
|
|
4158
|
+
/**
|
|
4159
|
+
* Gets the underlying PlayCanvas splat component.
|
|
4160
|
+
* @returns The splat component.
|
|
4161
|
+
*/
|
|
4162
|
+
get component() {
|
|
4163
|
+
return super.component;
|
|
4164
|
+
}
|
|
4165
|
+
/**
|
|
4166
|
+
* Sets id of the `pc-asset` to use for the splat.
|
|
4167
|
+
* @param value - The asset ID.
|
|
4168
|
+
*/
|
|
4169
|
+
set asset(value) {
|
|
4170
|
+
this._asset = value;
|
|
4171
|
+
const asset = AssetElement.get(value);
|
|
4172
|
+
if (this.component && asset) {
|
|
4173
|
+
this.component.asset = asset;
|
|
4174
|
+
}
|
|
4175
|
+
}
|
|
4176
|
+
/**
|
|
4177
|
+
* Gets the id of the `pc-asset` to use for the splat.
|
|
4178
|
+
* @returns The asset ID.
|
|
4179
|
+
*/
|
|
4180
|
+
get asset() {
|
|
4181
|
+
return this._asset;
|
|
4182
|
+
}
|
|
4183
|
+
static get observedAttributes() {
|
|
4184
|
+
return [...super.observedAttributes, 'asset'];
|
|
4185
|
+
}
|
|
4186
|
+
attributeChangedCallback(name, _oldValue, newValue) {
|
|
4187
|
+
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
4188
|
+
switch (name) {
|
|
4189
|
+
case 'asset':
|
|
4190
|
+
this.asset = newValue;
|
|
4191
|
+
break;
|
|
4192
|
+
}
|
|
4193
|
+
}
|
|
4194
|
+
}
|
|
4195
|
+
customElements.define('pc-splat', SplatComponentElement);
|
|
4196
|
+
|
|
3858
4197
|
/**
|
|
3859
4198
|
* The ModelElement interface provides properties and methods for manipulating
|
|
3860
4199
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-model/ | `<pc-model>`} elements.
|
|
@@ -3900,8 +4239,8 @@ class ModelElement extends AsyncElement {
|
|
|
3900
4239
|
async _loadModel() {
|
|
3901
4240
|
var _a;
|
|
3902
4241
|
this._unloadModel();
|
|
3903
|
-
const appElement = await ((_a = this.closestApp) === null || _a ===
|
|
3904
|
-
const app = appElement === null || appElement ===
|
|
4242
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
4243
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
3905
4244
|
const asset = AssetElement.get(this._asset);
|
|
3906
4245
|
if (!asset) {
|
|
3907
4246
|
return;
|
|
@@ -3918,7 +4257,7 @@ class ModelElement extends AsyncElement {
|
|
|
3918
4257
|
}
|
|
3919
4258
|
_unloadModel() {
|
|
3920
4259
|
var _a;
|
|
3921
|
-
(_a = this._entity) === null || _a ===
|
|
4260
|
+
(_a = this._entity) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
3922
4261
|
this._entity = null;
|
|
3923
4262
|
}
|
|
3924
4263
|
/**
|
|
@@ -3991,7 +4330,7 @@ class SceneElement extends AsyncElement {
|
|
|
3991
4330
|
}
|
|
3992
4331
|
async connectedCallback() {
|
|
3993
4332
|
var _a;
|
|
3994
|
-
await ((_a = this.closestApp) === null || _a ===
|
|
4333
|
+
await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
3995
4334
|
this.scene = this.closestApp.app.scene;
|
|
3996
4335
|
this.updateSceneSettings();
|
|
3997
4336
|
this._onReady();
|
|
@@ -4187,8 +4526,8 @@ class SkyElement extends AsyncElement {
|
|
|
4187
4526
|
}
|
|
4188
4527
|
async _loadSkybox() {
|
|
4189
4528
|
var _a;
|
|
4190
|
-
const appElement = await ((_a = this.closestApp) === null || _a ===
|
|
4191
|
-
const app = appElement === null || appElement ===
|
|
4529
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
4530
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
4192
4531
|
if (!app) {
|
|
4193
4532
|
return;
|
|
4194
4533
|
}
|
|
@@ -4211,10 +4550,10 @@ class SkyElement extends AsyncElement {
|
|
|
4211
4550
|
var _a, _b;
|
|
4212
4551
|
if (!this._scene)
|
|
4213
4552
|
return;
|
|
4214
|
-
(_a = this._scene.skybox) === null || _a ===
|
|
4553
|
+
(_a = this._scene.skybox) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
4215
4554
|
// @ts-ignore
|
|
4216
4555
|
this._scene.skybox = null;
|
|
4217
|
-
(_b = this._scene.envAtlas) === null || _b ===
|
|
4556
|
+
(_b = this._scene.envAtlas) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
4218
4557
|
// @ts-ignore
|
|
4219
4558
|
this._scene.envAtlas = null;
|
|
4220
4559
|
this._scene = null;
|
|
@@ -4403,6 +4742,7 @@ exports.ListenerComponentElement = ListenerComponentElement;
|
|
|
4403
4742
|
exports.MaterialElement = MaterialElement;
|
|
4404
4743
|
exports.ModelElement = ModelElement;
|
|
4405
4744
|
exports.ModuleElement = ModuleElement;
|
|
4745
|
+
exports.ParticleSystemComponentElement = ParticleSystemComponentElement;
|
|
4406
4746
|
exports.RenderComponentElement = RenderComponentElement;
|
|
4407
4747
|
exports.RigidBodyComponentElement = RigidBodyComponentElement;
|
|
4408
4748
|
exports.SceneElement = SceneElement;
|