### Godot version

On top of 4.0 branch. https://github.com/godotengine/godot/commit/fd5dc25240c1537d90b80507683f78bcf574f547

### System information

Mac Mini, Apple Silicon on Firefox

### Issue description

Error message in log.

```
e[1;31mERROR:e[0;91m vkCreateGraphicsPipelines failed with error -3 for shader 'CanvasOcclusionShaderRD:0'.
e[0;90m   at: render_pipeline_create (drivers/vulkan/rendering_device_vulkan.cpp:6394)e[0m
[mvk-error] VK_ERROR_FORMAT_NOT_SUPPORTED: VkFormat VK_FORMAT_R64G64_SFLOAT is not supported for vertex buffers on this device.
```

### Steps to reproduce

Launching my project.

### Minimal reproduction project

I think it happens on all mac projects, but checking now.
vd.format = RD::DATA_FORMAT_R32G32B32A32_SFLOAT;
			vd.offset = 0;
			vd.location = RS::ARRAY_WEIGHTS;
			vd.stride = 0;
			descriptions.write[4] = vd;
			buffers.write[4] = mesh_storage->mesh_get_default_rd_buffer(RendererRD::MeshStorage::DEFAULT_RD_BUFFER_WEIGHTS);
		}
		
		ERR_FAIL_COND_V(base_offset != stride, 0); 
	}
	RD::VertexFormatID vertex_id = RD::get_singleton()->vertex_format_create(descriptions);
	ERR_FAIL_COND_V(vertex_id == RD::INVALID_ID, 0);
	PolygonBuffers pb;
	pb.vertex_buffer = RD::get_singleton()->vertex_buffer_create(polygon_buffer.size(), polygon_buffer);
	for (int i = 0; i < descriptions.size(); i++) {
		if (buffers[i] == RID()) { 
			buffers.write[i] = pb.vertex_buffer;
		}
	}
	pb.vertex_array = RD::get_singleton()->vertex_array_create(p_points.size(), vertex_id, buffers);
	if (p_indices.size()) {
		
		Vector<uint8_t> index_buffer;
		index_buffer.resize(p_indices.size() * sizeof(int32_t));
		{
			uint8_t *w = index_buffer.ptrw();
			memcpy(w, p_indices.ptr(), sizeof(int32_t) * p_indices.size());
		}
		pb.index_buffer = RD::get_singleton()->index_buffer_create(p_indices.size(), RD::INDEX_BUFFER_FORMAT_UINT32, index_buffer);
		pb.indices = RD::get_singleton()->index_array_create(pb.index_buffer, 0, p_indices.size());