I currently have a model that I try to load on a IOS device that fails to load some textures (this is not the issue at hand!). When delving into wgs.js I noticed that having a texture that fails to load is considered accepted as the other request that complete call the nextRequest function and the failing textures return null and just gets passed over. However in the case where all textures that are currently requested fail to load the function nextRequest(); nevers gets called as its absent from the simpleError function. My suggestion is to add that to the simpleError function as the model itself seems to perfectly work without textures loaded.
So:
var simpleError = function simpleError(e) {
_requestsInProgress--;
exports.logger.error("Texture load error", e);
callback(null);
};
Could become the following to fix the issue:
var simpleError = function simpleError(e) {
_requestsInProgress--;
exports.logger.error("Texture load error", e);
callback(null);
nextRequest();
};