### Godot version

4.1.dev

### System information

Linux Vulkan mobile renderer

### Issue description

In my game I'm using alternatives to create variations of tiles. Because these can't be achieved by changing built-in properties, I'm doing this by attaching a shader with different parameters that will change something in the tile's rendering. However, these differences don't show up in the selection pane at the bottom. Neither in the TileMap editor nor the TileSet editor. This makes it difficult to pick the right one :smile: 

![image](https://github.com/godotengine/godot/assets/43048142/f4b9ffc8-1de2-4693-8fcb-2adcc6f62705)

They do show up in the TileMap editor in the scene view itself, as well as in the game, just not in this preview pane.

### Steps to reproduce

- Create a 2D scene with a TileMap
- Create a TileSet resource and add it
- Add a texture, define a tile
- Create alternatives of this tile, have them use a material with different shaders, or the same shader with different parameters

"Tiles" picker will show them all the same.

### Minimal reproduction project

I am not sure this is necessary as this issue is not specific to any project. If it's desirable I'm happy to create one, though.
int alternative_id = tile_set_atlas_source->get_alternative_tile_id(atlas_coords, j);
				TileData *tile_data = tile_set_atlas_source->get_tile_data(atlas_coords, alternative_id);
				bool transposed = tile_data->get_transpose();
				
				Vector2i offset_pos;
				if (transposed) {
					offset_pos = (current_pos + Vector2(texture_region_size.y, texture_region_size.x) / 2 + tile_data->get_texture_origin());
					y_increment = MAX(y_increment, texture_region_size.x);
				} else {
					offset_pos = (current_pos + texture_region_size / 2 + tile_data->get_texture_origin());
					y_increment = MAX(y_increment, texture_region_size.y);
				}
				
				TileMap::draw_tile(alternatives_draw->get_canvas_item(), offset_pos, tile_set, source_id, atlas_coords, alternative_id);
				
				current_pos.x += transposed ? texture_region_size.y : texture_region_size.x;
			}
			if (alternatives_count > 1) {
				current_pos.y += y_increment;
			}
		}
	}
}
void TileAtlasView::_draw_background_left() {
	background_left->draw_texture_rect(theme_cache.checkerboard, Rect2(Vector2(), background_left->get_size()), true);
}
void TileAtlasView::_draw_background_right() {
	background_right->draw_texture_rect(theme_cache.checkerboard, Rect2(Vector2(), background_right->get_size()), true);
}
void TileAtlasView::set_atlas_source(TileSet *p_tile_set, TileSetAtlasSource *p_tile_set_atlas_source, int p_source_id) {