Is my .glb file too big for Three js?

Here is my .glb file:
Arcade Room 74.glb (4.7 MB)

I don’t see any textures lost when running this model through the glTF Transform CLI. Be sure to test the model in a viewer first.

What command are you running?
And could you perhaps send the new .glb file?

npm install --global @gltf-transform/cli

gltf-transform optimize Arcade.glb ~/Desktop/Arcade_opt.glb --no-simplify --texture-size 1024 --texture-compress webp

Arcade_opt.glb (4.5 MB)

Well that saves me .2 MB, I won’t lie I was hoping for a lot more… But I guess that is the best I can get.

If you have any other ideas for lowering the file size, I am all ears.

the problem is your model, you are using separate textures for everything, a little coin that i don’t even see in the scene has its own texturemap, everything has. if this had a texture atlas the glb would be a few hundred kilobytes. but there are 98 materials, and im guessing almost as many textures. 2-4mb is a miracle, but it will run painfully slow anyway so i wouldn’t bother to use that model on the web.

I’d suggest pulling this up in https://gltf.report/ and looking through the metadata section. I think this scene could easily be <1 MB, but it’s not something I can automate. For example – there’s a text geometry in there that is 50,000 vertices, and this entire scene should easily fit in under 10,000 vertices if optimized. Putting all the text into a small shared texture atlas would dramatically lower the vertex count.

If you’re handy in Blender, all of this can be fixed there, but it’s not something that glTF Transform can do a lot for at the moment. A tool like https://uvpackmaster.com/ would help to reduce the textures – that can also be done manually in Blender, but takes more time.