function afterLoad(result) {
            if (self._disposed) {
                return;
            }

            parentNode.add(result.rootNode);
            if (opts.autoPlayAnimation) {
                result.clips.forEach(function (clip) {
                    timeline.addClip(clip);
                });
            }
            resolve(result);
        }
Load a [glTF](https://github.com/KhronosGroup/glTF) format model.
You can convert FBX/DAE/OBJ format models to [glTF](https://github.com/KhronosGroup/glTF) with [fbx2gltf](https://github.com/pissang/claygl#fbx-to-gltf20-converter) python script,
or simply using the [Clay Viewer](https://github.com/pissang/clay-viewer) client application.
@param {string} url
@param {Object} opts
@param {string|clay.Shader} [opts.shader='clay.standard'] 'basic'|'lambert'|'standard'.
@param {boolean} [opts.waitTextureLoaded=false] If add to scene util textures are all loaded.
@param {boolean} [opts.autoPlayAnimation=true] If autoplay the animation of model.
@param {boolean} [opts.upAxis='y'] Change model to y up if upAxis is 'z'
@param {boolean} [opts.textureFlipY=false]
@param {boolean} [opts.textureConvertToPOT=false] If convert texture to power-of-two
@param {string} [opts.textureRootPath] Root path of texture. Default to be relative with glTF file.
@param {clay.Node} [parentNode] Parent node that model will be mounted. Default to be scene
@return {Promise}