### Godot version

4.2 beta 4

### System information

Godot v4.2.beta4 - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4070 Ti (NVIDIA; 31.0.15.4584) - AMD Ryzen 9 5900X 12-Core Processor (24 Threads)

### Issue description

I am not sure what is going on to be honest, I tried to figure out for several hours hoping that I could open a more clear issue. But I managed to figure out it is a bug by running the same project in two different version of GoDot.

In the project I attached, make sure you do not have Steam open, run the project, click create a lobby then click start game.

![image](https://github.com/godotengine/godot/assets/73620153/028c81fd-60d9-43f7-bd91-8a677cd88e73)

The same project will have two different behaviors: 

* 4.2beta3: 
It will load the scene in around 2 seconds, then holding "Tab" will show the scoreboard, pressing console will open the console, pressing it again will close it, game is clearly active no matter the state of UI, or the input, you can orbit the camera around the player.

* 4.2beta4: It will simply freeze black no matter how long you wait, the multiplayer lobby UI is hidden and screen will stay black until you either hold "Tab" to open the scoreboard, or press "`" to open the console. If you press any of those inputs, the game scene will appear, but the it will render just as long as you hold 'Tab' or as long as the console should be active (between two console presses). The game seems to be running behind, that is why I used "render" here.

This behavior is very strange, there are no errors or warning displayed in output, and I think it should really be looked into. I feel that something was broken badly in this beta 4.

### Steps to reproduce

In the project I attached, make sure you do not have Steam open, run the project, click create a lobby then click start game.

![image](https://github.com/godotengine/godot/assets/73620153/028c81fd-60d9-43f7-bd91-8a677cd88e73)

The same project will have two different behaviors: 

* 4.2beta3 (CORRECT BEHAVIOR): 
It will load the scene in around 2 seconds, then holding "Tab" will show the scoreboard, pressing console will open the console, pressing it again will close it, game is clearly active no matter the state of UI, or the input, you can orbit the camera around the player.

* 4.2beta4 (WRONG BEHAVIOR): 
It will simply freeze black no matter how long you wait, the multiplayer lobby UI is hidden and screen will stay black until you either hold "Tab" to open the scoreboard, or press "`" to open the console. If you press any of those inputs, the game scene will appear, but it will render just as long as you hold 'Tab' or as long as the console should be active (between two console presses). besides this, it stays frozen.

### Minimal reproduction project

[Project.zip](https://github.com/godotengine/godot/files/13223077/Project.zip)


_Production edit: Confirmed to be a regression from https://github.com/godotengine/godot/pull/83649_
Viewport *viewport = viewport_owner.get_or_null(p_viewport);
	ERR_FAIL_NULL(viewport);
	if (viewport->msaa_3d == p_msaa) {
		return;
	}
	viewport->msaa_3d = p_msaa;
	_configure_3d_render_buffers(viewport);
}
void RendererViewport::viewport_set_use_hdr_2d(RID p_viewport, bool p_use_hdr_2d) {
	Viewport *viewport = viewport_owner.get_or_null(p_viewport);
	ERR_FAIL_NULL(viewport);
	if (viewport->use_hdr_2d == p_use_hdr_2d) {
		return;
	}
	viewport->use_hdr_2d = p_use_hdr_2d;
	RSG::texture_storage->render_target_set_use_hdr(viewport->render_target, p_use_hdr_2d);
}
void RendererViewport::viewport_set_screen_space_aa(RID p_viewport, RS::ViewportScreenSpaceAA p_mode) {
	Viewport *viewport = viewport_owner.get_or_null(p_viewport);
	ERR_FAIL_NULL(viewport);
	if (viewport->screen_space_aa == p_mode) {
		return;
	}
	viewport->screen_space_aa = p_mode;
	_configure_3d_render_buffers(viewport);
}
void RendererViewport::viewport_set_use_taa(RID p_viewport, bool p_use_taa) {