45 std::map<
int, std::shared_ptr<T>>& media,
46 std::vector<int>
const& material_ids_of_this_medium,
47 CreateMedium&& create_medium)
49 if (media.find(
id) != end(media))
52 "Multiple media were specified for the same material id '{:d}'. "
53 "Keep in mind, that if no material id is specified, it is assumed "
54 "to be 0 by default.",
58 if (
id == material_ids_of_this_medium[0])
60 media[id] = create_medium(
id);
64 media[id] = media[material_ids_of_this_medium[0]];