### Godot version

4.1 b2

### System information

Windows 10, Nvidia GTX 1660Ti, Vulkan

### Issue description

As you can see in the image:

![skeleton_error_41b2](https://github.com/godotengine/godot/assets/33526847/4003c5ef-b97b-4c00-986c-a085e6c285ef)

In the editor I have an imported model, no errors. The model has a skeleton. Moving bones moves the mesh accordingly no errors and nothing seems to be wrong as far as I can tell.

When I play the project without the camera I get no errors.
When I play the project with a Camera3D the project throws 12 errors (see the image above) and the whole project freezes without dispalying anything as you can see in the image it's just a gray window.

This model and import works just fine in 4.0.3, this is also not the only model I have issues with so it's not just this model.

I can't provide a test scene or models because these models are purchased but I hope the fact it works in 4.0.3 and the error could help?

I'll try anything you ask me to do to help to resolve this - hopefully before 4.1 get released.

NOTE: Same error and the following line as in the screenshot appear in the windows Console, no other errors.
NOTE2: This project was initiated from 4.1beta as brand new, nothing else is in as you can see.
NOTE3: I'll need to double check but I had some models working before so it might not be with every model but I'll check later on today.

### Steps to reproduce

Hard to tell, if you have a model with a skeleton give it a try, add the model t othe scene, camera3d and then see if it happens?

### Minimal reproduction project

~~For now check this one from another report: https://github.com/godotengine/godot/issues/77780~~

[TestMeshWithSkinGD.zip](https://github.com/godotengine/godot/files/11851108/TestMeshWithSkinGD.zip)


EDIT:
Related line where the editor takes me to: https://github.com/godotengine/godot/blob/a2575cba48121a9e31c3a550ebd29398a7facf3f/servers/rendering/renderer_rd/storage_rd/mesh_storage.h#L693

**Production team edit:** Added the non-mono MRP (reduced to fit Github's size limit) to the issue.
const String vrs_texture_path = String(GLOBAL_DEF(PropertyInfo(Variant::STRING, "rendering/vrs/texture", PROPERTY_HINT_FILE, "*.bmp,*.png,*.tga,*.webp"), String())).strip_edges();
	if (vrs_mode == 1 && !vrs_texture_path.is_empty()) {
		Ref<Image> vrs_image;
		vrs_image.instantiate();
		Error load_err = ImageLoader::load_image(vrs_texture_path, vrs_image);
		if (load_err) {
			ERR_PRINT("Non-existing or invalid VRS texture at '" + vrs_texture_path + "'.");
		} else {
			Ref<ImageTexture> vrs_texture;
			vrs_texture.instantiate();
			vrs_texture->create_from_image(vrs_image);
			root->set_vrs_texture(vrs_texture);
		}
	}
	int shadowmap_size = GLOBAL_DEF(PropertyInfo(Variant::INT, "rendering/lights_and_shadows/positional_shadow/atlas_size", PROPERTY_HINT_RANGE, "256,16384"), 4096);
	GLOBAL_DEF("rendering/lights_and_shadows/positional_shadow/atlas_size.mobile", 2048);
	bool shadowmap_16_bits = GLOBAL_DEF("rendering/lights_and_shadows/positional_shadow/atlas_16_bits", true);
	int atlas_q0 = GLOBAL_DEF(PropertyInfo(Variant::INT, "rendering/lights_and_shadows/positional_shadow/atlas_quadrant_0_subdiv", PROPERTY_HINT_ENUM, "Disabled,1 Shadow,4 Shadows,16 Shadows,64 Shadows,256 Shadows,1024 Shadows"), 2);
	int atlas_q1 = GLOBAL_DEF(PropertyInfo(Variant::INT, "rendering/lights_and_shadows/positional_shadow/atlas_quadrant_1_subdiv", PROPERTY_HINT_ENUM, "Disabled,1 Shadow,4 Shadows,16 Shadows,64 Shadows,256 Shadows,1024 Shadows"), 2);
	int atlas_q2 = GLOBAL_DEF(PropertyInfo(Variant::INT, "rendering/lights_and_shadows/positional_shadow/atlas_quadrant_2_subdiv", PROPERTY_HINT_ENUM, "Disabled,1 Shadow,4 Shadows,16 Shadows,64 Shadows,256 Shadows,1024 Shadows"), 3);
	int atlas_q3 = GLOBAL_DEF(PropertyInfo(Variant::INT, "rendering/lights_and_shadows/positional_shadow/atlas_quadrant_3_subdiv", PROPERTY_HINT_ENUM, "Disabled,1 Shadow,4 Shadows,16 Shadows,64 Shadows,256 Shadows,1024 Shadows"), 4);
	root->set_positional_shadow_atlas_size(shadowmap_size);
	root->set_positional_shadow_atlas_16_bits(shadowmap_16_bits);
	root->set_positional_shadow_atlas_quadrant_subdiv(0, Viewport::PositionalShadowAtlasQuadrantSubdiv(atlas_q0));
	root->set_positional_shadow_atlas_quadrant_subdiv(1, Viewport::PositionalShadowAtlasQuadrantSubdiv(atlas_q1));
	root->set_positional_shadow_atlas_quadrant_subdiv(2, Viewport::PositionalShadowAtlasQuadrantSubdiv(atlas_q2));
	root->set_positional_shadow_atlas_quadrant_subdiv(3, Viewport::PositionalShadowAtlasQuadrantSubdiv(atlas_q3));
	Viewport::SDFOversize sdf_oversize = Viewport::SDFOversize(int(GLOBAL_DEF(PropertyInfo(Variant::INT, "rendering/2d/sdf/oversize", PROPERTY_HINT_ENUM, "100%,120%,150%,200%"), 1)));
	root->set_sdf_oversize(sdf_oversize);
	Viewport::SDFScale sdf_scale = Viewport::SDFScale(int(GLOBAL_DEF(PropertyInfo(Variant::INT, "rendering/2d/sdf/scale", PROPERTY_HINT_ENUM, "100%,50%,25%"), 1)));