LOD doesn't seem to be doing anything?

Hi, i’ve tried applying LOD to my glb model the model itself is 1 huge mesh with buildings and land in it all merged into a single mesh with multiple materials (not sure if this is important or not)
anyways after applying lod the quality doesn’t seem to be affected?
here is how im applying it:

var lod;
lod = new THREE.LOD();
loaderGB.load('/map/mass.glb', function (land) {  
    landmass = land.scene;
       landanimate = land;

                    land.scene.traverse( function ( child ) {
                            if ( child.isMesh ) {
                              child.material.metalness = 0.2;
                                child.castShadow = true;
                                child.receiveShadow = true;
                                child.frustumCulled = false;
                        } );
    land.scene.scale.set(9, 9, 9);
    land.scene.position.set(27, -5, 145);
     land.scene.rotation.y = 3.4;
        lod.addLevel(land.scene, 5);
 } );

the model is also compressed with DRACO if that is relevant…

THREE.LOD does not automatically simplify your model. It’s not a geometry modifier.

You have to define each level with a mesh (the simplified or tessellated version of your base mesh) and distance like demonstrated in the official example: three.js webgl - level of detail

thank you for the reply is there any examples where a model is used that i can take a look at or code snippets im struggling to find any on google thank you

If you want to have 3 levels of detail, you’ll probably want to make 3 models, or else a single model with 3x versions of each mesh in it. You’d add each of the three models to your LOD system with different distances.

Simplification (to create each level of detail) is better done in other tools like Blender or gltfpack.

1 Like

LOD - Three.js Tutorials (sbcode.net)