gtlfExporter without embedding textures?

When I export a model with embedded textures it loads fine in windows 3d viewer and elsewhere, but if I don’t embed the textures (embedImages set to false on the exporter) it fails to load… Apparently there is an error… I ran the file through the validator:

"uri": "testgltf33.gltf",
"mimeType": "model/gltf+json",
"validatorVersion": "2.0.0-dev.3.3",
"validatedAt": "2021-02-21T04:29:34.852Z",
"issues": {
    "numErrors": 1,
    "numWarnings": 0,
    "numInfos": 0,
    "numHints": 0,
    "messages": [
            "code": "ONE_OF_MISMATCH",
            "message": "Exactly one of ('bufferView', 'uri') properties must be defined.",
            "severity": 0,
            "pointer": "/images/0"
    "truncated": false
"info": {
    "version": "2.0",
    "generator": "THREE.GLTFExporter",
    "extensionsUsed": [
    "resources": [
            "pointer": "/buffers/0",
            "mimeType": "application/gltf-buffer",
            "storage": "data-uri",
            "byteLength": 4752
            "pointer": "/images/0"
    "animationCount": 0,
    "materialCount": 1,
    "hasMorphTargets": false,
    "hasSkins": false,
    "hasTextures": true,
    "hasDefaultScene": true,
    "drawCallCount": 1,
    "totalVertexCount": 108,
    "totalTriangleCount": 36,
    "maxUVs": 1,
    "maxInfluences": 0,
    "maxAttributes": 4


but I’m not sure what exactly it is saying, and how to fix it…

gltfObject = new THREE.Mesh( gltfGeometry, gltfMaterials );

// Instantiate a exporter
var exporter = new GLTFExporter();

// Parse the input and generate the glTF output
exporter.parse( gltfObject, function ( gltf ) {

	//code that saves the parsed data to the file is here
}, { binary: (structure.formatType=='glb'?true:false), embedImages: structure.embedTextures } );

For more explanation, that is the code I am using to export my gltf and glb files… The only thing that causes the error in the file is when setting the embedImages to false. In the THREE documentation it says that you can set embedImages to false in order to prevent the images from being embedded into the file… but it isn’t working! Is this a bug with the GLTFExporter?

I left a bug report in-case it is a bug.

I’ve responded here: GLTFExporter: Setting embedImages to false will cause the exported file to become invalid. · Issue #21328 · mrdoob/three.js · GitHub

Okay, I’ve provided the jsfiddle that shows the issue. It works fine if it is embedded but it breaks if it isn’t embedded… I need to figure out how to get it to work without embedding the images, so hopefully someone has a solution.

It seems the issue was solved at GitHub.

Seems like this causes problems when using GLTFLoader … I get an error:

three.module.js:42087 Fetch API cannot load file:///C:/path_to_file/texture_0.png. URL scheme “file” is not supported.