How to make 3d object with variable models?

Godot Version

4.3

Question

I need to make an object that changes its model based on a trigger

You can assign different meshes to a MeshInstance3D by changing it’s .mesh resource.

func _on_trigger() -> void:
    my_mesh_instance.mesh = load("res://new_mesh.obj")