extends CollisionShape3D func _ready(): var tank = get_node("tank") var handle = get_node("handle") var release_lever = get_node("release lever") var valve_assembly = get_node("valve assembly") var meshes: Array[Mesh] = [tank, handle, release_lever, valve_assembly] var final_mesh = ArrayMesh.new() var mesh_tool = MeshDataTool.new() for mesh in meshes: for surface in mesh.get_surface_count(): mesh_tool.create_from_surface(mesh, surface) mesh_tool.commit_to_surface(final_mesh, surface) self.shape.Data = final_mesh.create_convex_shape()