Error for GLTF file: Failed to produce vertex buffer from mesh set

Hi!

I have problems with a file I want to export from Blender to Defold - I only want to export selected objects, so a car without wheels (as wheels I want to animate and have them separately, I don’t know why car models don’t have it by default separated :sweat_smile:):

image

But it also happens, when I select everything regarding this particular car:

Is it because the meshes for this car are only a part of the whole blender file? (there are different cars and different groups of cars in here)

(It’s from a paid asset pack, so I can send the exported file on DM for investigation)

I’m using this preset to export:

And in Editor I have:

image

Could you help me solving the issue?

Have you checked your model in e.g. glTF Sample Viewer to see if it outputs anything?

You could also install gltf validatorto check the file:

Our code isn’t telling exactly what it expected differently, but it’s good to read the code anyway to get a feel for what it expects:

2 Likes

Thank you! :heart: It’s good to know in the future! :smiley:

The model is though properly imported to gltf sample viewer:

Validator says it’s valid:

image

{
"uri": "Muscle_03.glb",
"mimeType": "model/gltf-binary",
"validatorVersion": "2.0.0-dev.3.8",
"validatedAt": "2024-05-11T09:29:17.994Z",
"issues": {
    "numErrors": 0,
    "numWarnings": 0,
    "numInfos": 15,
    "numHints": 0,
    "messages": [
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/0/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/0/primitives/0/attributes/TEXCOORD_1"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/1/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/2/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/2/primitives/0/attributes/TEXCOORD_1"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/3/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/3/primitives/0/attributes/TEXCOORD_1"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/4/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/5/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/6/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/7/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/8/primitives/0/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/8/primitives/0/attributes/TEXCOORD_1"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/8/primitives/1/attributes/TEXCOORD_0"
        },
        {
            "code": "UNUSED_OBJECT",
            "message": "This object may be unused.",
            "severity": 2,
            "pointer": "/meshes/8/primitives/1/attributes/TEXCOORD_1"
        }
    ],
    "truncated": false
},
"info": {
    "version": "2.0",
    "generator": "Khronos glTF Blender I/O v4.0.44",
    "extensionsUsed": [
        "KHR_materials_specular",
        "KHR_materials_ior"
    ],
    "resources": [
        {
            "pointer": "/buffers/0",
            "mimeType": "application/gltf-buffer",
            "storage": "glb",
            "byteLength": 745604
        }
    ],
    "animationCount": 0,
    "materialCount": 1,
    "hasMorphTargets": false,
    "hasSkins": false,
    "hasTextures": false,
    "hasDefaultScene": true,
    "drawCallCount": 10,
    "totalVertexCount": 16824,
    "totalTriangleCount": 8680,
    "maxUVs": 2,
    "maxInfluences": 0,
    "maxAttributes": 5
}
}

After @Pawel’s post I decided to check all my 3D projects and the problem exists. It appeared in Defold 1.8.0. It seems to only show up if the model has a second UV set.

I made an issue - IDE: Model with second UV is not rendered · Issue #8907 · defold/defold · GitHub

5 Likes