@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.mjs
CHANGED
|
@@ -13,11 +13,11 @@ class AsyncElement extends HTMLElement {
|
|
|
13
13
|
}
|
|
14
14
|
get closestApp() {
|
|
15
15
|
var _a;
|
|
16
|
-
return (_a = this.parentElement) === null || _a ===
|
|
16
|
+
return (_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.closest('pc-app');
|
|
17
17
|
}
|
|
18
18
|
get closestEntity() {
|
|
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-entity');
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
23
|
* Called when the element is fully initialized and ready.
|
|
@@ -755,7 +755,7 @@ class EntityElement extends AsyncElement {
|
|
|
755
755
|
if (!this.entity)
|
|
756
756
|
return;
|
|
757
757
|
const closestEntity = this.closestEntity;
|
|
758
|
-
if (closestEntity === null || closestEntity ===
|
|
758
|
+
if (closestEntity === null || closestEntity === void 0 ? void 0 : closestEntity.entity) {
|
|
759
759
|
closestEntity.entity.addChild(this.entity);
|
|
760
760
|
}
|
|
761
761
|
else {
|
|
@@ -977,11 +977,187 @@ class EntityElement extends AsyncElement {
|
|
|
977
977
|
}
|
|
978
978
|
hasListeners(type) {
|
|
979
979
|
var _a;
|
|
980
|
-
return Boolean((_a = this._listeners[type]) === null || _a ===
|
|
980
|
+
return Boolean((_a = this._listeners[type]) === null || _a === void 0 ? void 0 : _a.length);
|
|
981
981
|
}
|
|
982
982
|
}
|
|
983
983
|
customElements.define('pc-entity', EntityElement);
|
|
984
984
|
|
|
985
|
+
// This file is part of meshoptimizer library and is distributed under the terms of MIT License.
|
|
986
|
+
// Copyright (C) 2016-2022, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com)
|
|
987
|
+
var MeshoptDecoder = (function() {
|
|
988
|
+
|
|
989
|
+
// Built with clang version 14.0.4
|
|
990
|
+
// Built from meshoptimizer 0.18
|
|
991
|
+
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";
|
|
992
|
+
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";
|
|
993
|
+
|
|
994
|
+
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]);
|
|
995
|
+
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]);
|
|
996
|
+
|
|
997
|
+
if (typeof WebAssembly !== 'object') {
|
|
998
|
+
return {
|
|
999
|
+
supported: false,
|
|
1000
|
+
};
|
|
1001
|
+
}
|
|
1002
|
+
|
|
1003
|
+
var wasm = WebAssembly.validate(detector) ? wasm_simd : wasm_base;
|
|
1004
|
+
|
|
1005
|
+
var instance;
|
|
1006
|
+
|
|
1007
|
+
var ready =
|
|
1008
|
+
WebAssembly.instantiate(unpack(wasm), {})
|
|
1009
|
+
.then(function(result) {
|
|
1010
|
+
instance = result.instance;
|
|
1011
|
+
instance.exports.__wasm_call_ctors();
|
|
1012
|
+
});
|
|
1013
|
+
|
|
1014
|
+
function unpack(data) {
|
|
1015
|
+
var result = new Uint8Array(data.length);
|
|
1016
|
+
for (var i = 0; i < data.length; ++i) {
|
|
1017
|
+
var ch = data.charCodeAt(i);
|
|
1018
|
+
result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
|
|
1019
|
+
}
|
|
1020
|
+
var write = 0;
|
|
1021
|
+
for (var i = 0; i < data.length; ++i) {
|
|
1022
|
+
result[write++] = (result[i] < 60) ? wasmpack[result[i]] : (result[i] - 60) * 64 + result[++i];
|
|
1023
|
+
}
|
|
1024
|
+
return result.buffer.slice(0, write);
|
|
1025
|
+
}
|
|
1026
|
+
|
|
1027
|
+
function decode(fun, target, count, size, source, filter) {
|
|
1028
|
+
var sbrk = instance.exports.sbrk;
|
|
1029
|
+
var count4 = (count + 3) & -4;
|
|
1030
|
+
var tp = sbrk(count4 * size);
|
|
1031
|
+
var sp = sbrk(source.length);
|
|
1032
|
+
var heap = new Uint8Array(instance.exports.memory.buffer);
|
|
1033
|
+
heap.set(source, sp);
|
|
1034
|
+
var res = fun(tp, count, size, sp, source.length);
|
|
1035
|
+
if (res == 0 && filter) {
|
|
1036
|
+
filter(tp, count4, size);
|
|
1037
|
+
}
|
|
1038
|
+
target.set(heap.subarray(tp, tp + count * size));
|
|
1039
|
+
sbrk(tp - sbrk(0));
|
|
1040
|
+
if (res != 0) {
|
|
1041
|
+
throw new Error("Malformed buffer data: " + res);
|
|
1042
|
+
}
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
var filters = {
|
|
1046
|
+
NONE: "",
|
|
1047
|
+
OCTAHEDRAL: "meshopt_decodeFilterOct",
|
|
1048
|
+
QUATERNION: "meshopt_decodeFilterQuat",
|
|
1049
|
+
EXPONENTIAL: "meshopt_decodeFilterExp",
|
|
1050
|
+
};
|
|
1051
|
+
|
|
1052
|
+
var decoders = {
|
|
1053
|
+
ATTRIBUTES: "meshopt_decodeVertexBuffer",
|
|
1054
|
+
TRIANGLES: "meshopt_decodeIndexBuffer",
|
|
1055
|
+
INDICES: "meshopt_decodeIndexSequence",
|
|
1056
|
+
};
|
|
1057
|
+
|
|
1058
|
+
var workers = [];
|
|
1059
|
+
var requestId = 0;
|
|
1060
|
+
|
|
1061
|
+
function createWorker(url) {
|
|
1062
|
+
var worker = {
|
|
1063
|
+
object: new Worker(url),
|
|
1064
|
+
pending: 0,
|
|
1065
|
+
requests: {}
|
|
1066
|
+
};
|
|
1067
|
+
|
|
1068
|
+
worker.object.onmessage = function(event) {
|
|
1069
|
+
var data = event.data;
|
|
1070
|
+
|
|
1071
|
+
worker.pending -= data.count;
|
|
1072
|
+
worker.requests[data.id][data.action](data.value);
|
|
1073
|
+
|
|
1074
|
+
delete worker.requests[data.id];
|
|
1075
|
+
};
|
|
1076
|
+
|
|
1077
|
+
return worker;
|
|
1078
|
+
}
|
|
1079
|
+
|
|
1080
|
+
function initWorkers(count) {
|
|
1081
|
+
var source =
|
|
1082
|
+
"var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(unpack(wasm)) + "]), {})" +
|
|
1083
|
+
".then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });" +
|
|
1084
|
+
"self.onmessage = workerProcess;" +
|
|
1085
|
+
decode.toString() + workerProcess.toString();
|
|
1086
|
+
|
|
1087
|
+
var blob = new Blob([source], {type: 'text/javascript'});
|
|
1088
|
+
var url = URL.createObjectURL(blob);
|
|
1089
|
+
|
|
1090
|
+
for (var i = 0; i < count; ++i) {
|
|
1091
|
+
workers[i] = createWorker(url);
|
|
1092
|
+
}
|
|
1093
|
+
|
|
1094
|
+
URL.revokeObjectURL(url);
|
|
1095
|
+
}
|
|
1096
|
+
|
|
1097
|
+
function decodeWorker(count, size, source, mode, filter) {
|
|
1098
|
+
var worker = workers[0];
|
|
1099
|
+
|
|
1100
|
+
for (var i = 1; i < workers.length; ++i) {
|
|
1101
|
+
if (workers[i].pending < worker.pending) {
|
|
1102
|
+
worker = workers[i];
|
|
1103
|
+
}
|
|
1104
|
+
}
|
|
1105
|
+
|
|
1106
|
+
return new Promise(function (resolve, reject) {
|
|
1107
|
+
var data = new Uint8Array(source);
|
|
1108
|
+
var id = requestId++;
|
|
1109
|
+
|
|
1110
|
+
worker.pending += count;
|
|
1111
|
+
worker.requests[id] = { resolve: resolve, reject: reject };
|
|
1112
|
+
worker.object.postMessage({ id: id, count: count, size: size, source: data, mode: mode, filter: filter }, [ data.buffer ]);
|
|
1113
|
+
});
|
|
1114
|
+
}
|
|
1115
|
+
|
|
1116
|
+
function workerProcess(event) {
|
|
1117
|
+
ready.then(function() {
|
|
1118
|
+
var data = event.data;
|
|
1119
|
+
try {
|
|
1120
|
+
var target = new Uint8Array(data.count * data.size);
|
|
1121
|
+
decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);
|
|
1122
|
+
self.postMessage({ id: data.id, count: data.count, action: "resolve", value: target }, [ target.buffer ]);
|
|
1123
|
+
} catch (error) {
|
|
1124
|
+
self.postMessage({ id: data.id, count: data.count, action: "reject", value: error });
|
|
1125
|
+
}
|
|
1126
|
+
});
|
|
1127
|
+
}
|
|
1128
|
+
|
|
1129
|
+
return {
|
|
1130
|
+
ready: ready,
|
|
1131
|
+
supported: true,
|
|
1132
|
+
useWorkers: function(count) {
|
|
1133
|
+
initWorkers(count);
|
|
1134
|
+
},
|
|
1135
|
+
decodeVertexBuffer: function(target, count, size, source, filter) {
|
|
1136
|
+
decode(instance.exports.meshopt_decodeVertexBuffer, target, count, size, source, instance.exports[filters[filter]]);
|
|
1137
|
+
},
|
|
1138
|
+
decodeIndexBuffer: function(target, count, size, source) {
|
|
1139
|
+
decode(instance.exports.meshopt_decodeIndexBuffer, target, count, size, source);
|
|
1140
|
+
},
|
|
1141
|
+
decodeIndexSequence: function(target, count, size, source) {
|
|
1142
|
+
decode(instance.exports.meshopt_decodeIndexSequence, target, count, size, source);
|
|
1143
|
+
},
|
|
1144
|
+
decodeGltfBuffer: function(target, count, size, source, mode, filter) {
|
|
1145
|
+
decode(instance.exports[decoders[mode]], target, count, size, source, instance.exports[filters[filter]]);
|
|
1146
|
+
},
|
|
1147
|
+
decodeGltfBufferAsync: function(count, size, source, mode, filter) {
|
|
1148
|
+
if (workers.length > 0) {
|
|
1149
|
+
return decodeWorker(count, size, source, decoders[mode], filters[filter]);
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1152
|
+
return ready.then(function() {
|
|
1153
|
+
var target = new Uint8Array(count * size);
|
|
1154
|
+
decode(instance.exports[decoders[mode]], target, count, size, source, instance.exports[filters[filter]]);
|
|
1155
|
+
return target;
|
|
1156
|
+
});
|
|
1157
|
+
}
|
|
1158
|
+
};
|
|
1159
|
+
})();
|
|
1160
|
+
|
|
985
1161
|
const extToType = new Map([
|
|
986
1162
|
['bin', 'binary'],
|
|
987
1163
|
['css', 'css'],
|
|
@@ -1001,6 +1177,27 @@ const extToType = new Map([
|
|
|
1001
1177
|
['vert', 'shader'],
|
|
1002
1178
|
['webp', 'texture']
|
|
1003
1179
|
]);
|
|
1180
|
+
// provide buffer view callback so we can handle models compressed with MeshOptimizer
|
|
1181
|
+
// https://github.com/zeux/meshoptimizer
|
|
1182
|
+
const processBufferView = (gltfBuffer, buffers, continuation) => {
|
|
1183
|
+
if (gltfBuffer.extensions && gltfBuffer.extensions.EXT_meshopt_compression) {
|
|
1184
|
+
const extensionDef = gltfBuffer.extensions.EXT_meshopt_compression;
|
|
1185
|
+
Promise.all([MeshoptDecoder.ready, buffers[extensionDef.buffer]]).then((promiseResult) => {
|
|
1186
|
+
const buffer = promiseResult[1];
|
|
1187
|
+
const byteOffset = extensionDef.byteOffset || 0;
|
|
1188
|
+
const byteLength = extensionDef.byteLength || 0;
|
|
1189
|
+
const count = extensionDef.count;
|
|
1190
|
+
const stride = extensionDef.byteStride;
|
|
1191
|
+
const result = new Uint8Array(count * stride);
|
|
1192
|
+
const source = new Uint8Array(buffer.buffer, buffer.byteOffset + byteOffset, byteLength);
|
|
1193
|
+
MeshoptDecoder.decodeGltfBuffer(result, count, stride, source, extensionDef.mode, extensionDef.filter);
|
|
1194
|
+
continuation(null, result);
|
|
1195
|
+
});
|
|
1196
|
+
}
|
|
1197
|
+
else {
|
|
1198
|
+
continuation(null, null);
|
|
1199
|
+
}
|
|
1200
|
+
};
|
|
1004
1201
|
/**
|
|
1005
1202
|
* The AssetElement interface provides properties and methods for manipulating
|
|
1006
1203
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-asset/ | `<pc-asset>`} elements.
|
|
@@ -1027,13 +1224,23 @@ class AssetElement extends HTMLElement {
|
|
|
1027
1224
|
// If no type is specified, try to infer it from the file extension.
|
|
1028
1225
|
if (!type) {
|
|
1029
1226
|
const ext = src.split('.').pop();
|
|
1030
|
-
type = (_a = extToType.get(ext || '')) !== null && _a !==
|
|
1227
|
+
type = (_a = extToType.get(ext || '')) !== null && _a !== void 0 ? _a : null;
|
|
1031
1228
|
}
|
|
1032
1229
|
if (!type) {
|
|
1033
1230
|
console.warn(`Unsupported asset type: ${src}`);
|
|
1034
1231
|
return;
|
|
1035
1232
|
}
|
|
1036
|
-
|
|
1233
|
+
if (type === 'container') {
|
|
1234
|
+
this.asset = new Asset(id, type, { url: src }, undefined, {
|
|
1235
|
+
// @ts-ignore TODO no definition in pc
|
|
1236
|
+
bufferView: {
|
|
1237
|
+
processAsync: processBufferView.bind(this)
|
|
1238
|
+
}
|
|
1239
|
+
});
|
|
1240
|
+
}
|
|
1241
|
+
else {
|
|
1242
|
+
this.asset = new Asset(id, type, { url: src });
|
|
1243
|
+
}
|
|
1037
1244
|
this.asset.preload = !this._lazy;
|
|
1038
1245
|
}
|
|
1039
1246
|
destroyAsset() {
|
|
@@ -1061,7 +1268,7 @@ class AssetElement extends HTMLElement {
|
|
|
1061
1268
|
}
|
|
1062
1269
|
static get(id) {
|
|
1063
1270
|
const assetElement = document.querySelector(`pc-asset[id="${id}"]`);
|
|
1064
|
-
return assetElement === null || assetElement ===
|
|
1271
|
+
return assetElement === null || assetElement === void 0 ? void 0 : assetElement.asset;
|
|
1065
1272
|
}
|
|
1066
1273
|
static get observedAttributes() {
|
|
1067
1274
|
return ['lazy'];
|
|
@@ -1108,7 +1315,7 @@ class ComponentElement extends AsyncElement {
|
|
|
1108
1315
|
initComponent() { }
|
|
1109
1316
|
async connectedCallback() {
|
|
1110
1317
|
var _a;
|
|
1111
|
-
await ((_a = this.closestApp) === null || _a ===
|
|
1318
|
+
await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
1112
1319
|
await this.addComponent();
|
|
1113
1320
|
this.initComponent();
|
|
1114
1321
|
this._onReady();
|
|
@@ -1239,7 +1446,7 @@ class CameraComponentElement extends ComponentElement {
|
|
|
1239
1446
|
}
|
|
1240
1447
|
get xrAvailable() {
|
|
1241
1448
|
var _a;
|
|
1242
|
-
const xrManager = (_a = this.component) === null || _a ===
|
|
1449
|
+
const xrManager = (_a = this.component) === null || _a === void 0 ? void 0 : _a.system.app.xr;
|
|
1243
1450
|
return xrManager && xrManager.supported && xrManager.isAvailable(XRTYPE_VR);
|
|
1244
1451
|
}
|
|
1245
1452
|
/**
|
|
@@ -1570,7 +1777,7 @@ class CameraComponentElement extends ComponentElement {
|
|
|
1570
1777
|
var _a;
|
|
1571
1778
|
this._tonemap = value;
|
|
1572
1779
|
if (this.component) {
|
|
1573
|
-
this.component.toneMapping = (_a = tonemaps.get(value)) !== null && _a !==
|
|
1780
|
+
this.component.toneMapping = (_a = tonemaps.get(value)) !== null && _a !== void 0 ? _a : TONEMAP_NONE;
|
|
1574
1781
|
}
|
|
1575
1782
|
}
|
|
1576
1783
|
/**
|
|
@@ -2106,64 +2313,6 @@ class ElementComponentElement extends ComponentElement {
|
|
|
2106
2313
|
}
|
|
2107
2314
|
customElements.define('pc-element', ElementComponentElement);
|
|
2108
2315
|
|
|
2109
|
-
/**
|
|
2110
|
-
* The SplatComponentElement interface provides properties and methods for manipulating
|
|
2111
|
-
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-splat/ | `<pc-splat>`} elements.
|
|
2112
|
-
* The SplatComponentElement interface also inherits the properties and methods of the
|
|
2113
|
-
* {@link HTMLElement} interface.
|
|
2114
|
-
*
|
|
2115
|
-
* @category Components
|
|
2116
|
-
*/
|
|
2117
|
-
class SplatComponentElement extends ComponentElement {
|
|
2118
|
-
/** @ignore */
|
|
2119
|
-
constructor() {
|
|
2120
|
-
super('gsplat');
|
|
2121
|
-
this._asset = '';
|
|
2122
|
-
}
|
|
2123
|
-
getInitialComponentData() {
|
|
2124
|
-
return {
|
|
2125
|
-
asset: AssetElement.get(this._asset)
|
|
2126
|
-
};
|
|
2127
|
-
}
|
|
2128
|
-
/**
|
|
2129
|
-
* Gets the underlying PlayCanvas splat component.
|
|
2130
|
-
* @returns The splat component.
|
|
2131
|
-
*/
|
|
2132
|
-
get component() {
|
|
2133
|
-
return super.component;
|
|
2134
|
-
}
|
|
2135
|
-
/**
|
|
2136
|
-
* Sets id of the `pc-asset` to use for the splat.
|
|
2137
|
-
* @param value - The asset ID.
|
|
2138
|
-
*/
|
|
2139
|
-
set asset(value) {
|
|
2140
|
-
this._asset = value;
|
|
2141
|
-
const asset = AssetElement.get(value);
|
|
2142
|
-
if (this.component && asset) {
|
|
2143
|
-
this.component.asset = asset;
|
|
2144
|
-
}
|
|
2145
|
-
}
|
|
2146
|
-
/**
|
|
2147
|
-
* Gets the id of the `pc-asset` to use for the splat.
|
|
2148
|
-
* @returns The asset ID.
|
|
2149
|
-
*/
|
|
2150
|
-
get asset() {
|
|
2151
|
-
return this._asset;
|
|
2152
|
-
}
|
|
2153
|
-
static get observedAttributes() {
|
|
2154
|
-
return [...super.observedAttributes, 'asset'];
|
|
2155
|
-
}
|
|
2156
|
-
attributeChangedCallback(name, _oldValue, newValue) {
|
|
2157
|
-
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
2158
|
-
switch (name) {
|
|
2159
|
-
case 'asset':
|
|
2160
|
-
this.asset = newValue;
|
|
2161
|
-
break;
|
|
2162
|
-
}
|
|
2163
|
-
}
|
|
2164
|
-
}
|
|
2165
|
-
customElements.define('pc-splat', SplatComponentElement);
|
|
2166
|
-
|
|
2167
2316
|
const shadowTypes = new Map([
|
|
2168
2317
|
['pcf1-16f', SHADOW_PCF1_16F],
|
|
2169
2318
|
['pcf1-32f', SHADOW_PCF1_32F],
|
|
@@ -2432,7 +2581,7 @@ class LightComponentElement extends ComponentElement {
|
|
|
2432
2581
|
var _a;
|
|
2433
2582
|
this._shadowType = value;
|
|
2434
2583
|
if (this.component) {
|
|
2435
|
-
this.component.shadowType = (_a = shadowTypes.get(value)) !== null && _a !==
|
|
2584
|
+
this.component.shadowType = (_a = shadowTypes.get(value)) !== null && _a !== void 0 ? _a : SHADOW_PCF3_32F;
|
|
2436
2585
|
}
|
|
2437
2586
|
}
|
|
2438
2587
|
/**
|
|
@@ -2549,6 +2698,138 @@ class LightComponentElement extends ComponentElement {
|
|
|
2549
2698
|
}
|
|
2550
2699
|
customElements.define('pc-light', LightComponentElement);
|
|
2551
2700
|
|
|
2701
|
+
/**
|
|
2702
|
+
* The ParticleSystemComponentElement interface provides properties and methods for manipulating
|
|
2703
|
+
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-particles/ | `<pc-particles>`} elements.
|
|
2704
|
+
* The ParticleSystemComponentElement interface also inherits the properties and methods of the
|
|
2705
|
+
* {@link HTMLElement} interface.
|
|
2706
|
+
*
|
|
2707
|
+
* @category Components
|
|
2708
|
+
*/
|
|
2709
|
+
class ParticleSystemComponentElement extends ComponentElement {
|
|
2710
|
+
/** @ignore */
|
|
2711
|
+
constructor() {
|
|
2712
|
+
super('particlesystem');
|
|
2713
|
+
this._asset = '';
|
|
2714
|
+
}
|
|
2715
|
+
getInitialComponentData() {
|
|
2716
|
+
var _a;
|
|
2717
|
+
const asset = AssetElement.get(this._asset);
|
|
2718
|
+
if (!asset) {
|
|
2719
|
+
return {};
|
|
2720
|
+
}
|
|
2721
|
+
if (asset.resource.colorMapAsset) {
|
|
2722
|
+
const id = asset.resource.colorMapAsset;
|
|
2723
|
+
const colorMapAsset = (_a = AssetElement.get(id)) === null || _a === void 0 ? void 0 : _a.id;
|
|
2724
|
+
if (colorMapAsset) {
|
|
2725
|
+
asset.resource.colorMapAsset = colorMapAsset;
|
|
2726
|
+
}
|
|
2727
|
+
}
|
|
2728
|
+
return asset.resource;
|
|
2729
|
+
}
|
|
2730
|
+
/**
|
|
2731
|
+
* Gets the underlying PlayCanvas particle system component.
|
|
2732
|
+
* @returns The particle system component.
|
|
2733
|
+
*/
|
|
2734
|
+
get component() {
|
|
2735
|
+
return super.component;
|
|
2736
|
+
}
|
|
2737
|
+
applyConfig(resource) {
|
|
2738
|
+
if (!this.component) {
|
|
2739
|
+
return;
|
|
2740
|
+
}
|
|
2741
|
+
// Set all the config properties on the component
|
|
2742
|
+
for (const key in resource) {
|
|
2743
|
+
if (resource.hasOwnProperty(key)) {
|
|
2744
|
+
this.component[key] = resource[key];
|
|
2745
|
+
}
|
|
2746
|
+
}
|
|
2747
|
+
}
|
|
2748
|
+
async _loadAsset() {
|
|
2749
|
+
var _a;
|
|
2750
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
2751
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
2752
|
+
const asset = AssetElement.get(this._asset);
|
|
2753
|
+
if (!asset) {
|
|
2754
|
+
return;
|
|
2755
|
+
}
|
|
2756
|
+
if (asset.loaded) {
|
|
2757
|
+
this.applyConfig(asset.resource);
|
|
2758
|
+
}
|
|
2759
|
+
else {
|
|
2760
|
+
asset.once('load', () => {
|
|
2761
|
+
this.applyConfig(asset.resource);
|
|
2762
|
+
});
|
|
2763
|
+
app.assets.load(asset);
|
|
2764
|
+
}
|
|
2765
|
+
}
|
|
2766
|
+
/**
|
|
2767
|
+
* Sets the id of the `pc-asset` to use for the model.
|
|
2768
|
+
* @param value - The asset ID.
|
|
2769
|
+
*/
|
|
2770
|
+
set asset(value) {
|
|
2771
|
+
this._asset = value;
|
|
2772
|
+
if (this.isConnected) {
|
|
2773
|
+
this._loadAsset();
|
|
2774
|
+
}
|
|
2775
|
+
}
|
|
2776
|
+
/**
|
|
2777
|
+
* Gets the id of the `pc-asset` to use for the model.
|
|
2778
|
+
* @returns The asset ID.
|
|
2779
|
+
*/
|
|
2780
|
+
get asset() {
|
|
2781
|
+
return this._asset;
|
|
2782
|
+
}
|
|
2783
|
+
// Control methods
|
|
2784
|
+
/**
|
|
2785
|
+
* Starts playing the particle system
|
|
2786
|
+
*/
|
|
2787
|
+
play() {
|
|
2788
|
+
if (this.component) {
|
|
2789
|
+
this.component.play();
|
|
2790
|
+
}
|
|
2791
|
+
}
|
|
2792
|
+
/**
|
|
2793
|
+
* Pauses the particle system
|
|
2794
|
+
*/
|
|
2795
|
+
pause() {
|
|
2796
|
+
if (this.component) {
|
|
2797
|
+
this.component.pause();
|
|
2798
|
+
}
|
|
2799
|
+
}
|
|
2800
|
+
/**
|
|
2801
|
+
* Resets the particle system
|
|
2802
|
+
*/
|
|
2803
|
+
reset() {
|
|
2804
|
+
if (this.component) {
|
|
2805
|
+
this.component.reset();
|
|
2806
|
+
}
|
|
2807
|
+
}
|
|
2808
|
+
/**
|
|
2809
|
+
* Stops the particle system
|
|
2810
|
+
*/
|
|
2811
|
+
stop() {
|
|
2812
|
+
if (this.component) {
|
|
2813
|
+
this.component.stop();
|
|
2814
|
+
}
|
|
2815
|
+
}
|
|
2816
|
+
static get observedAttributes() {
|
|
2817
|
+
return [
|
|
2818
|
+
...super.observedAttributes,
|
|
2819
|
+
'asset'
|
|
2820
|
+
];
|
|
2821
|
+
}
|
|
2822
|
+
attributeChangedCallback(name, _oldValue, newValue) {
|
|
2823
|
+
super.attributeChangedCallback(name, _oldValue, newValue);
|
|
2824
|
+
switch (name) {
|
|
2825
|
+
case 'asset':
|
|
2826
|
+
this.asset = newValue;
|
|
2827
|
+
break;
|
|
2828
|
+
}
|
|
2829
|
+
}
|
|
2830
|
+
}
|
|
2831
|
+
customElements.define('pc-particles', ParticleSystemComponentElement);
|
|
2832
|
+
|
|
2552
2833
|
/**
|
|
2553
2834
|
* The MaterialElement interface provides properties and methods for manipulating
|
|
2554
2835
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-material/ | `<pc-material>`} elements.
|
|
@@ -2639,7 +2920,7 @@ class MaterialElement extends HTMLElement {
|
|
|
2639
2920
|
}
|
|
2640
2921
|
static get(id) {
|
|
2641
2922
|
const materialElement = document.querySelector(`pc-material[id="${id}"]`);
|
|
2642
|
-
return materialElement === null || materialElement ===
|
|
2923
|
+
return materialElement === null || materialElement === void 0 ? void 0 : materialElement.material;
|
|
2643
2924
|
}
|
|
2644
2925
|
static get observedAttributes() {
|
|
2645
2926
|
return ['diffuse', 'diffuse-map', 'metalness-map', 'normal-map', 'roughness-map'];
|
|
@@ -3319,7 +3600,7 @@ class ScriptComponentElement extends ComponentElement {
|
|
|
3319
3600
|
disconnectedCallback() {
|
|
3320
3601
|
var _a;
|
|
3321
3602
|
this.observer.disconnect();
|
|
3322
|
-
(_a = super.disconnectedCallback) === null || _a ===
|
|
3603
|
+
(_a = super.disconnectedCallback) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
3323
3604
|
}
|
|
3324
3605
|
/**
|
|
3325
3606
|
* Gets the underlying PlayCanvas script component.
|
|
@@ -3634,7 +3915,7 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3634
3915
|
}
|
|
3635
3916
|
async connectedCallback() {
|
|
3636
3917
|
var _a;
|
|
3637
|
-
await ((_a = this.soundElement) === null || _a ===
|
|
3918
|
+
await ((_a = this.soundElement) === null || _a === void 0 ? void 0 : _a.ready());
|
|
3638
3919
|
const options = {
|
|
3639
3920
|
autoPlay: this._autoPlay,
|
|
3640
3921
|
loop: this._loop,
|
|
@@ -3648,7 +3929,6 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3648
3929
|
}
|
|
3649
3930
|
this.soundSlot = this.soundElement.component.addSlot(this._name, options);
|
|
3650
3931
|
this.asset = this._asset;
|
|
3651
|
-
this.soundSlot.play();
|
|
3652
3932
|
this._onReady();
|
|
3653
3933
|
}
|
|
3654
3934
|
disconnectedCallback() {
|
|
@@ -3670,7 +3950,7 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3670
3950
|
var _a;
|
|
3671
3951
|
this._asset = value;
|
|
3672
3952
|
if (this.soundSlot) {
|
|
3673
|
-
const id = (_a = AssetElement.get(value)) === null || _a ===
|
|
3953
|
+
const id = (_a = AssetElement.get(value)) === null || _a === void 0 ? void 0 : _a.id;
|
|
3674
3954
|
if (id) {
|
|
3675
3955
|
this.soundSlot.asset = id;
|
|
3676
3956
|
}
|
|
@@ -3820,13 +4100,16 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3820
4100
|
return this._volume;
|
|
3821
4101
|
}
|
|
3822
4102
|
static get observedAttributes() {
|
|
3823
|
-
return ['asset', '
|
|
4103
|
+
return ['asset', 'auto-play', 'duration', 'loop', 'name', 'overlap', 'pitch', 'start-time', 'volume'];
|
|
3824
4104
|
}
|
|
3825
4105
|
attributeChangedCallback(name, _oldValue, newValue) {
|
|
3826
4106
|
switch (name) {
|
|
3827
4107
|
case 'asset':
|
|
3828
4108
|
this.asset = newValue;
|
|
3829
4109
|
break;
|
|
4110
|
+
case 'auto-play':
|
|
4111
|
+
this.autoPlay = this.hasAttribute('auto-play');
|
|
4112
|
+
break;
|
|
3830
4113
|
case 'duration':
|
|
3831
4114
|
this.duration = parseFloat(newValue);
|
|
3832
4115
|
break;
|
|
@@ -3842,7 +4125,7 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3842
4125
|
case 'pitch':
|
|
3843
4126
|
this.pitch = parseFloat(newValue);
|
|
3844
4127
|
break;
|
|
3845
|
-
case '
|
|
4128
|
+
case 'start-time':
|
|
3846
4129
|
this.startTime = parseFloat(newValue);
|
|
3847
4130
|
break;
|
|
3848
4131
|
case 'volume':
|
|
@@ -3853,6 +4136,64 @@ class SoundSlotElement extends AsyncElement {
|
|
|
3853
4136
|
}
|
|
3854
4137
|
customElements.define('pc-sound', SoundSlotElement);
|
|
3855
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
|
+
|
|
3856
4197
|
/**
|
|
3857
4198
|
* The ModelElement interface provides properties and methods for manipulating
|
|
3858
4199
|
* {@link https://developer.playcanvas.com/user-manual/engine/web-components/tags/pc-model/ | `<pc-model>`} elements.
|
|
@@ -3898,8 +4239,8 @@ class ModelElement extends AsyncElement {
|
|
|
3898
4239
|
async _loadModel() {
|
|
3899
4240
|
var _a;
|
|
3900
4241
|
this._unloadModel();
|
|
3901
|
-
const appElement = await ((_a = this.closestApp) === null || _a ===
|
|
3902
|
-
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;
|
|
3903
4244
|
const asset = AssetElement.get(this._asset);
|
|
3904
4245
|
if (!asset) {
|
|
3905
4246
|
return;
|
|
@@ -3916,7 +4257,7 @@ class ModelElement extends AsyncElement {
|
|
|
3916
4257
|
}
|
|
3917
4258
|
_unloadModel() {
|
|
3918
4259
|
var _a;
|
|
3919
|
-
(_a = this._entity) === null || _a ===
|
|
4260
|
+
(_a = this._entity) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
3920
4261
|
this._entity = null;
|
|
3921
4262
|
}
|
|
3922
4263
|
/**
|
|
@@ -3989,7 +4330,7 @@ class SceneElement extends AsyncElement {
|
|
|
3989
4330
|
}
|
|
3990
4331
|
async connectedCallback() {
|
|
3991
4332
|
var _a;
|
|
3992
|
-
await ((_a = this.closestApp) === null || _a ===
|
|
4333
|
+
await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
3993
4334
|
this.scene = this.closestApp.app.scene;
|
|
3994
4335
|
this.updateSceneSettings();
|
|
3995
4336
|
this._onReady();
|
|
@@ -4182,11 +4523,12 @@ class SkyElement extends AsyncElement {
|
|
|
4182
4523
|
this._scene.sky.node.setLocalScale(this._scale);
|
|
4183
4524
|
this._scene.sky.center = this._center;
|
|
4184
4525
|
this._scene.skyboxIntensity = this._intensity;
|
|
4526
|
+
this._scene.skyboxMip = this._level;
|
|
4185
4527
|
}
|
|
4186
4528
|
async _loadSkybox() {
|
|
4187
4529
|
var _a;
|
|
4188
|
-
const appElement = await ((_a = this.closestApp) === null || _a ===
|
|
4189
|
-
const app = appElement === null || appElement ===
|
|
4530
|
+
const appElement = await ((_a = this.closestApp) === null || _a === void 0 ? void 0 : _a.ready());
|
|
4531
|
+
const app = appElement === null || appElement === void 0 ? void 0 : appElement.app;
|
|
4190
4532
|
if (!app) {
|
|
4191
4533
|
return;
|
|
4192
4534
|
}
|
|
@@ -4209,10 +4551,10 @@ class SkyElement extends AsyncElement {
|
|
|
4209
4551
|
var _a, _b;
|
|
4210
4552
|
if (!this._scene)
|
|
4211
4553
|
return;
|
|
4212
|
-
(_a = this._scene.skybox) === null || _a ===
|
|
4554
|
+
(_a = this._scene.skybox) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
4213
4555
|
// @ts-ignore
|
|
4214
4556
|
this._scene.skybox = null;
|
|
4215
|
-
(_b = this._scene.envAtlas) === null || _b ===
|
|
4557
|
+
(_b = this._scene.envAtlas) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
4216
4558
|
// @ts-ignore
|
|
4217
4559
|
this._scene.envAtlas = null;
|
|
4218
4560
|
this._scene = null;
|
|
@@ -4388,5 +4730,5 @@ class SkyElement extends AsyncElement {
|
|
|
4388
4730
|
}
|
|
4389
4731
|
customElements.define('pc-sky', SkyElement);
|
|
4390
4732
|
|
|
4391
|
-
export { AppElement, AssetElement, AsyncElement, CameraComponentElement, CollisionComponentElement, ComponentElement, ElementComponentElement, EntityElement, LightComponentElement, ListenerComponentElement, MaterialElement, ModelElement, ModuleElement, RenderComponentElement, RigidBodyComponentElement, SceneElement, ScreenComponentElement, ScriptComponentElement, ScriptElement, SkyElement, SoundComponentElement, SoundSlotElement, SplatComponentElement };
|
|
4733
|
+
export { AppElement, AssetElement, AsyncElement, CameraComponentElement, CollisionComponentElement, ComponentElement, ElementComponentElement, EntityElement, LightComponentElement, ListenerComponentElement, MaterialElement, ModelElement, ModuleElement, ParticleSystemComponentElement, RenderComponentElement, RigidBodyComponentElement, SceneElement, ScreenComponentElement, ScriptComponentElement, ScriptElement, SkyElement, SoundComponentElement, SoundSlotElement, SplatComponentElement };
|
|
4392
4734
|
//# sourceMappingURL=pwc.mjs.map
|