### Godot version

v4.0.beta.custom_build [291add339]

### System information

Windows 10, Forward+, NVIDIA GeForce GTX 1050 Ti (31.0.15.1694)

### Issue description

I was testing if #69669 was solved by #70418, which it seemed to be. However, I got a wall of errors at the same time.

In the minimal reproduction project below in this Issue, I get errors when instantiating many of the same `GPUParticle2D` scene. In my earlier Godot 4 build (v4.0.beta.custom_build [2a04b18d3]) I did not get any errors (but got the occasional artifact as was my original issue in #69669).

I suspect the PR #70418 solved the artifact, but possibly introduced new bugs. However, I have not specifically built Godot with, and without the PR in question.

I believe this is the start and end of the errors - after which they repeat.
![wall_of_errors](https://user-images.githubusercontent.com/10490534/209046500-9813150c-d6e4-4a11-8e62-79d370d07009.png)

### Steps to reproduce

- Create a GPUParticle2D scene
- Instantiate the scene several times
- Observe the debugger get flooded with errors

### Minimal reproduction project

This project only instantiates default GPUParticle2D scenes with a default particle material.
[GPU_Particle_Creation_Bug.zip](https://github.com/godotengine/godot/files/10283416/GPU_Particle_Creation_Bug.zip)

RD::get_singleton()->draw_command_begin_label("Shadow Render");
	for (uint32_t i = 0; i < scene_state.shadow_passes.size(); i++) {
		SceneState::ShadowPass &shadow_pass = scene_state.shadow_passes[i];
		RenderListParameters render_list_parameters(render_list[RENDER_LIST_SECONDARY].elements.ptr() + shadow_pass.element_from, render_list[RENDER_LIST_SECONDARY].element_info.ptr() + shadow_pass.element_from, shadow_pass.element_count, shadow_pass.flip_cull, shadow_pass.pass_mode, 0, true, false, shadow_pass.rp_uniform_set, false, Vector2(), shadow_pass.lod_distance_multiplier, shadow_pass.screen_mesh_lod_threshold, 1, shadow_pass.element_from, RD::BARRIER_MASK_NO_BARRIER);
		_render_list_with_threads(&render_list_parameters, shadow_pass.framebuffer, RD::INITIAL_ACTION_DROP, RD::FINAL_ACTION_DISCARD, shadow_pass.initial_depth_action, shadow_pass.final_depth_action, Vector<Color>(), 1.0, 0, shadow_pass.rect);
	}
	if (p_barrier != RD::BARRIER_MASK_NO_BARRIER) {
		RD::get_singleton()->barrier(RD::BARRIER_MASK_RASTER, p_barrier);
	}
	RD::get_singleton()->draw_command_end_label();
}
void RenderForwardClustered::_render_particle_collider_heightfield(RID p_fb, const Transform3D &p_cam_transform, const Projection &p_cam_projection, const PagedArray<RenderGeometryInstance *> &p_instances) {
	RENDER_TIMESTAMP("Setup GPUParticlesCollisionHeightField3D");
	RD::get_singleton()->draw_command_begin_label("Render Collider Heightfield");
	RenderSceneDataRD scene_data;
	scene_data.cam_projection = p_cam_projection;
	scene_data.cam_transform = p_cam_transform;
	scene_data.view_projection[0] = p_cam_projection;
	scene_data.z_near = 0.0;
	scene_data.z_far = p_cam_projection.get_z_far();
	scene_data.dual_paraboloid_side = 0;
	scene_data.opaque_prepass_threshold = 0.0;
	scene_data.time = time;
	scene_data.time_step = time_step;
	RenderDataRD render_data;
	render_data.scene_data = &scene_data;
	render_data.cluster_size = 1;