### Godot version

v4.1.stable.official [970459615]

### System information

Godot v4.1.stable - Windows 10.0.22621 (this is what "copy system info" says, but I'm running Windows 11 Home) - Vulkan (Compatibility) - NVIDIA GeForce RTX 4090 (NVIDIA; 31.0.15.3168) - 12th Gen Intel(R) Core(TM) i7-12700F (20 Threads)

### Issue description

Adding a NoiseTexture3D to a Visual Shader crashes Godot.

### Steps to reproduce

- In a new project, create a "MeshInstance3D"
- Set the mesh to any mesh that has the "Surface Material Overide" property (New BoxMesh for instance)
- In said property, create a "New ShaderMaterial"
- Set the ShaderMaterial's shader to a new shader, with the type: "VisualShader"
- Edit the VisualShader
- Add a Texture3D node
- Set the texture to "New NoiseTexture3D"

Godot then crashes (note, the crash takes place even if you remove the "MeshInstance3D")

### Minimal reproduction project

N/A
_set_texture_data(p_data);
	noise_thread.wait_to_finish();
	if (regen_queued) {
		noise_thread.start(_thread_function, this);
		regen_queued = false;
	}
}
void NoiseTexture3D::_thread_function(void *p_ud) {
	NoiseTexture3D *tex = static_cast<NoiseTexture3D *>(p_ud);
	tex->call_deferred(SNAME("_thread_done"), tex->_generate_texture());
}
void NoiseTexture3D::_queue_update() {
	if (update_queued) {
		return;
	}
	update_queued = true;
	call_deferred(SNAME("_update_texture"));
}
TypedArray<Image> NoiseTexture3D::_generate_texture() {