### 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.
const Item::CommandPolygon *polygon = static_cast<const Item::CommandPolygon *>(c);
				PolygonBuffers *pb = polygon_buffers.polygons.getptr(polygon->polygon.polygon_id);
				ERR_CONTINUE(!pb);
				
				{
					static const PipelineVariant variant[RS::PRIMITIVE_MAX] = { PIPELINE_VARIANT_ATTRIBUTE_POINTS, PIPELINE_VARIANT_ATTRIBUTE_LINES, PIPELINE_VARIANT_ATTRIBUTE_LINES_STRIP, PIPELINE_VARIANT_ATTRIBUTE_TRIANGLES, PIPELINE_VARIANT_ATTRIBUTE_TRIANGLE_STRIP };
					ERR_CONTINUE(polygon->primitive < 0 || polygon->primitive >= RS::PRIMITIVE_MAX);
					RID pipeline = pipeline_variants->variants[light_mode][variant[polygon->primitive]].get_render_pipeline(pb->vertex_format_id, p_framebuffer_format);
					RD::get_singleton()->draw_list_bind_render_pipeline(p_draw_list, pipeline);
				}
				if (polygon->primitive == RS::PRIMITIVE_LINES) {
					
					
				}
				
				_bind_canvas_texture(p_draw_list, polygon->texture, current_filter, current_repeat, last_texture, push_constant, texpixel_size);
				Color color = base_color;
				if (use_linear_colors) {
					color = color.srgb_to_linear();
				}
				push_constant.modulation[0] = color.r;
				push_constant.modulation[1] = color.g;
				push_constant.modulation[2] = color.b;
				push_constant.modulation[3] = color.a;
				for (int j = 0; j < 4; j++) {
					push_constant.src_rect[j] = 0;
					push_constant.dst_rect[j] = 0;
					push_constant.ninepatch_margins[j] = 0;
				}
				RD::get_singleton()->draw_list_set_push_constant(p_draw_list, &push_constant, sizeof(PushConstant));