### Godot version

v4.2.beta4.official [93cdacbb0], 4.1.2.stable

### System information

Godot v4.2.beta4 - Android 10 - Vulkan (Mobile)

### Issue description

This happens only when trying to run it on Android 10 using the mobile renderer.

It fails on Samsung Galaxy S9+ (Android 10).
It works on Nokia 5.4 (Android 12).

The surface tool doesn't seem generate mesh at least not visible one. It also fails to generate collision mesh as a character will fall through it.

I included an example code. 

### Steps to reproduce

Export the attached reproduction project (remember to set the renderer to mobile) and install it on an Android phone. The phone I tested is Samsung Galaxy S9+ with Android 10.


### Minimal reproduction project

[SurfaceToolBug.zip](https://github.com/godotengine/godot/files/13237789/SurfaceToolBug.zip)

uint32_t device_id;
		uint32_t driver_version;
		uint8_t uuid[VK_UUID_SIZE];
		uint8_t driver_abi;
	};
	struct PipelineCache {
		String file_path;
		PipelineCacheHeader header = {};
		size_t current_size = 0;
		LocalVector<uint8_t> buffer;
		VkPipelineCache cache_object = VK_NULL_HANDLE;
	};
	PipelineCache pipelines_cache;
	WorkerThreadPool::TaskID pipelines_cache_save_task = WorkerThreadPool::INVALID_TASK_ID;
	void _load_pipeline_cache();
	void _update_pipeline_cache(bool p_closing = false);
	static void _save_pipeline_cache(void *p_data);
	struct ComputePipeline {
		RID shader;
		Vector<uint32_t> set_formats;
		VkPipelineLayout pipeline_layout = VK_NULL_HANDLE; 
		VkPipeline pipeline = VK_NULL_HANDLE;
		uint32_t push_constant_size = 0;
		uint32_t push_constant_stages_mask = 0;
		uint32_t local_group_size[3] = { 0, 0, 0 };
	};
	RID_Owner<ComputePipeline, true> compute_pipeline_owner;