|
@@ -243,8 +243,14 @@ THREE.GLTFLoader = ( function () {
|
|
*/
|
|
*/
|
|
function GLTFTextureDDSExtension() {
|
|
function GLTFTextureDDSExtension() {
|
|
|
|
|
|
|
|
+ if (!THREE.DDSLoader) {
|
|
|
|
+
|
|
|
|
+ throw new Error( 'THREE.GLTFLoader: Attempting to load .dds texture without importing THREE.DDSLoader' );
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
this.name = EXTENSIONS.MSFT_TEXTURE_DDS;
|
|
this.name = EXTENSIONS.MSFT_TEXTURE_DDS;
|
|
- this.ddsLoader = new THREE.DDSLoader();
|
|
|
|
|
|
+ this.ddsLoader = new THREE.DDSLoader();
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1817,12 +1823,6 @@ THREE.GLTFLoader = ( function () {
|
|
|
|
|
|
if ( textureExtensions[ EXTENSIONS.MSFT_TEXTURE_DDS ] ) {
|
|
if ( textureExtensions[ EXTENSIONS.MSFT_TEXTURE_DDS ] ) {
|
|
|
|
|
|
- if (!THREE.DDSLoader) {
|
|
|
|
-
|
|
|
|
- throw new Error( 'THREE.GLTFLoader: Attempting to load .dds texture without importing THREE.DDSLoader' );
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
source = json.images[ textureExtensions[ EXTENSIONS.MSFT_TEXTURE_DDS ].source ];
|
|
source = json.images[ textureExtensions[ EXTENSIONS.MSFT_TEXTURE_DDS ].source ];
|
|
|
|
|
|
} else {
|
|
} else {
|
|
@@ -1853,15 +1853,13 @@ THREE.GLTFLoader = ( function () {
|
|
|
|
|
|
// Load Texture resource.
|
|
// Load Texture resource.
|
|
|
|
|
|
- var loader;
|
|
|
|
-
|
|
|
|
- if ( textureExtensions[ EXTENSIONS.MSFT_TEXTURE_DDS ] ) {
|
|
|
|
|
|
+ var loader = THREE.Loader.Handlers.get( sourceURI );
|
|
|
|
|
|
- loader = THREE.Loader.Handlers.get( sourceURI ) || parser.extensions[EXTENSIONS.MSFT_TEXTURE_DDS].ddsLoader
|
|
|
|
-
|
|
|
|
- } else {
|
|
|
|
|
|
+ if ( ! loader ) {
|
|
|
|
|
|
- loader = THREE.Loader.Handlers.get( sourceURI ) || textureLoader;
|
|
|
|
|
|
+ loader = textureExtensions[ EXTENSIONS.MSFT_TEXTURE_DDS ]
|
|
|
|
+ ? parser.extensions[ EXTENSIONS.MSFT_TEXTURE_DDS ].ddsLoader
|
|
|
|
+ : textureLoader;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|