Is there a way to modify GLB files in runtime?

Godot Version



I have some glbs which are imported into my project. It seems possible to use them without creating an inherited scene (I want a workflow that will allow me to refresh those exports without having to re-create the inherited scene in the future). However I can’t set a new material or material override to them. From what I can tell it just fails silently when I try. I am curious why this is completely impossible to do, and is there a way to do this? I try to duplicate the packedScene (with subresources) but it doesn’t seem to work. Any ideas?

If you instance a glTF scene in an existing scene, you can edit child nodes by right-clicking the instanced subscene and enabling Editable Children.

You can also access and modify properties at runtime in a script since an imported glTF scene is a subscene at the end of the day. This is also where Editable Children is useful, as it lets you see the node structure more easily.