From 8d637806befed98142e9ef8d67644594f3a5d6c5 Mon Sep 17 00:00:00 2001 From: Emmett Lalish Date: Wed, 1 Feb 2023 10:06:19 -0800 Subject: [PATCH] set withCredentials for other loaders (#4085) --- packages/model-viewer/src/features/loading.ts | 2 +- packages/model-viewer/src/model-viewer-base.ts | 3 ++- .../model-viewer/src/three-components/TextureUtils.ts | 10 +++++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/packages/model-viewer/src/features/loading.ts b/packages/model-viewer/src/features/loading.ts index af8b333f6a..dcef3fa189 100644 --- a/packages/model-viewer/src/features/loading.ts +++ b/packages/model-viewer/src/features/loading.ts @@ -34,7 +34,7 @@ const DEFAULT_KTX2_TRANSCODER_LOCATION = 'https://www.gstatic.com/basis-universal/versioned/2021-04-15-ba1c3e4/'; const DEFAULT_LOTTIE_LOADER_LOCATION = - 'https://cdn.jsdelivr.net/npm/three@0.148.0/examples/jsm/loaders/LottieLoader.js'; + 'https://cdn.jsdelivr.net/npm/three@0.149.0/examples/jsm/loaders/LottieLoader.js'; const RevealStrategy: {[index: string]: RevealAttributeValue} = { AUTO: 'auto', diff --git a/packages/model-viewer/src/model-viewer-base.ts b/packages/model-viewer/src/model-viewer-base.ts index 7bfd7cbf2a..9db02894b2 100644 --- a/packages/model-viewer/src/model-viewer-base.ts +++ b/packages/model-viewer/src/model-viewer-base.ts @@ -397,7 +397,8 @@ export default class ModelViewerElementBase extends ReactiveElement { } if (changedProperties.has('withCredentials')) { - CachingGLTFLoader.withCredentials = this.withCredentials + CachingGLTFLoader.withCredentials = this.withCredentials; + this[$renderer].textureUtils!.withCredentials = this.withCredentials; } if (changedProperties.has('generateSchema')) { diff --git a/packages/model-viewer/src/three-components/TextureUtils.ts b/packages/model-viewer/src/three-components/TextureUtils.ts index 20a8df90df..c1489c56cf 100644 --- a/packages/model-viewer/src/three-components/TextureUtils.ts +++ b/packages/model-viewer/src/three-components/TextureUtils.ts @@ -13,7 +13,7 @@ * limitations under the License. */ -import {BackSide, BoxGeometry, CubeCamera, CubeTexture, EquirectangularReflectionMapping, EventDispatcher, HalfFloatType, LinearEncoding, Mesh, NoBlending, NoToneMapping, RGBAFormat, Scene, ShaderMaterial, sRGBEncoding, Texture, TextureLoader, Vector3, WebGLCubeRenderTarget, WebGLRenderer} from 'three'; +import {BackSide, BoxGeometry, CubeCamera, CubeTexture, EquirectangularReflectionMapping, EventDispatcher, HalfFloatType, LinearEncoding, Loader, Mesh, NoBlending, NoToneMapping, RGBAFormat, Scene, ShaderMaterial, sRGBEncoding, Texture, TextureLoader, Vector3, WebGLCubeRenderTarget, WebGLRenderer} from 'three'; import {RGBELoader} from 'three/examples/jsm/loaders/RGBELoader.js'; import {deserializeUrl, timePasses} from '../utilities.js'; @@ -35,10 +35,11 @@ const HDR_FILE_RE = /\.hdr(\.js)?$/; export default class TextureUtils extends EventDispatcher { public lottieLoaderUrl = ''; + public withCredentials = false; private _ldrLoader: TextureLoader|null = null; private _hdrLoader: RGBELoader|null = null; - private _lottieLoader = null; + private _lottieLoader: Loader|null = null; private generatedEnvironmentMap: Promise|null = null; private generatedEnvironmentMapAlt: Promise|null = null; @@ -56,6 +57,7 @@ export default class TextureUtils extends EventDispatcher { if (this._ldrLoader == null) { this._ldrLoader = new TextureLoader(); } + this._ldrLoader.withCredentials = this.withCredentials; return this._ldrLoader; } @@ -64,14 +66,16 @@ export default class TextureUtils extends EventDispatcher { this._hdrLoader = new RGBELoader(); this._hdrLoader.setDataType(HalfFloatType); } + this._hdrLoader.withCredentials = this.withCredentials; return this._hdrLoader; } async getLottieLoader(): Promise { if (this._lottieLoader == null) { const {LottieLoader} = await import(this.lottieLoaderUrl); - this._lottieLoader = new LottieLoader(); + this._lottieLoader = new LottieLoader() as Loader; } + this._lottieLoader.withCredentials = this.withCredentials; return this._lottieLoader; }