diff --git a/src/loaders/loader.js b/src/loaders/loader.js index bbd1198..b1d9c1d 100644 --- a/src/loaders/loader.js +++ b/src/loaders/loader.js @@ -4,11 +4,13 @@ loader = new Loader(); loader - // parse any json strings into json - .after(Loader.middleware.parsing.json()) - // parse any image objects into textures - .after(textureParser()) + // parse any json strings into objects + .use(Loader.middleware.parsing.json()) + // parse any blob into more usable objects (e.g. Image) + .use(Loader.middleware.parsing.json()) + // parse any Image objects into textures + .use(textureParser()) // parse any spritesheet data into multiple textures - .after(spritesheetParser()) + .use(spritesheetParser()) module.exports = loader; diff --git a/src/loaders/loader.js b/src/loaders/loader.js index bbd1198..b1d9c1d 100644 --- a/src/loaders/loader.js +++ b/src/loaders/loader.js @@ -4,11 +4,13 @@ loader = new Loader(); loader - // parse any json strings into json - .after(Loader.middleware.parsing.json()) - // parse any image objects into textures - .after(textureParser()) + // parse any json strings into objects + .use(Loader.middleware.parsing.json()) + // parse any blob into more usable objects (e.g. Image) + .use(Loader.middleware.parsing.json()) + // parse any Image objects into textures + .use(textureParser()) // parse any spritesheet data into multiple textures - .after(spritesheetParser()) + .use(spritesheetParser()) module.exports = loader; diff --git a/src/loaders/textureParser.js b/src/loaders/textureParser.js index b953c4c..53d034a 100644 --- a/src/loaders/textureParser.js +++ b/src/loaders/textureParser.js @@ -5,25 +5,8 @@ { return function (resource, next) { - // if no data, skip - if (!resource.data) { - next(); - } - - // if loaded with xhr as a blob, we need to transform the blob into an Image object - // TODO: Need an 'affinity' property on the Resource that says 'image' 'binary' 'xml' etc... - if (resource.loadType === Resource.LOAD_TYPE.XHR && resource.xhrType === Resource.XHR_RESPONSE_TYPE.BLOB) { - resource.data = new Image(); - resource.data.src = window.URL.createObjectURL(request.data); - - // cleanup the no longer used blob after the image loads - resource.data.onload = function () { - window.URL.revokeObjectURL(resource.data.src); - } - } - - // if this is an image object - if (resource.data.nodeName && resource.data.nodeName.toLowerCase() === 'img') + // create a new texture if the data is an Image object + if (resource.data && resource.data.nodeName && resource.data.nodeName.toLowerCase() === 'img') { resource.texture = new core.Texture(new core.BaseTexture(resource.data)); }