### Godot version

4.0.beta12.official

### System information

macOS 12.3.1 (21E258), Metal GPUFamily Apple 7, Vulkan

### Issue description

I expected particles emitted by a `GPUParticles2D` with `Drawing > Local Coords` set to `not On` to move independently of the rotation of the parent node of the `GPUParticles2D`.

However, this does not appear to be the case and the particles appear to rotate together with the parent node of the emitting `GPUParticles2D`.

https://user-images.githubusercontent.com/3022/212566997-b972cf05-3a74-4eb2-a5bc-d4d4e7c5b14a.mp4

### Steps to reproduce

1. Open the attached project.
2. Check that `Drawing > Local Coords` is set to `Off` on the `GPUParticles2D`.
3. Run the main scene.
4. The particles should not rotate with the parent node. (But they do)

### Minimal reproduction project

[GPUParticle2DRotationalJitter.zip](https://github.com/godotengine/godot/files/10421202/GPUParticle2DRotationalJitter.zip)

frame_params.randomness = p_particles->randomness;
	if (p_particles->use_local_coords) {
		RendererRD::MaterialStorage::store_transform(Transform3D(), frame_params.emission_transform);
	} else {
		RendererRD::MaterialStorage::store_transform(p_particles->emission_transform, frame_params.emission_transform);
	}
	frame_params.cycle = p_particles->cycle_number;
	frame_params.frame = p_particles->frame_counter++;
	frame_params.pad0 = 0;
	frame_params.pad1 = 0;
	frame_params.pad2 = 0;
	{ 
		frame_params.collider_count = 0;
		frame_params.attractor_count = 0;
		frame_params.particle_size = p_particles->collision_base_size;
		RID collision_3d_textures[ParticlesFrameParams::MAX_3D_TEXTURES];
		RID collision_heightmap_texture;
		Transform3D to_particles;
		if (p_particles->use_local_coords) {
			to_particles = p_particles->emission_transform.affine_inverse();
		}
		if (p_particles->has_sdf_collision && RD::get_singleton()->texture_is_valid(p_particles->sdf_collision_texture)) {
			
			Transform2D xform = p_particles->sdf_collision_transform; 
			if (!p_particles->use_local_coords) {
				Transform2D emission;
				emission.columns[0] = Vector2(p_particles->emission_transform.basis.get_column(0).x, p_particles->emission_transform.basis.get_column(0).y);
				emission.columns[1] = Vector2(p_particles->emission_transform.basis.get_column(1).x, p_particles->emission_transform.basis.get_column(1).y);
				emission.set_origin(Vector2(p_particles->emission_transform.origin.x, p_particles->emission_transform.origin.y));
				xform = xform * emission.affine_inverse();