72 using batch_map_t = std::unordered_map<Key, batch_group_t<Key>>;
79 return batch_collector_detail::static_mesh_batching_enabled();
84 batch_collector_detail::static_mesh_batching_enabled() =
enabled;
94 void collect_renderable(const Key& key, const
batch_instance& instance);
95 void collect_renderable(const Key& key, const
math::mat4& world_transform);
97 auto get_prepared_batches() const -> const
batch_list_t&;
100 auto get_batch_count() const ->
size_t;
101 auto get_instance_count() const ->
size_t;
102 auto has_batches() const ->
bool;
103 void set_max_instances_per_batch(uint32_t max_instances);
104 void set_profiling_enabled(
bool enabled);
110 uint32_t max_instances_per_batch_ = 1024;
111 bool profiling_enabled_ = true;
115 void calculate_camera_distances(const
math::vec3& camera_pos);
116 void update_statistics();
117 auto get_or_create_batch_group(const Key& key) ->
batch_group_t<Key>&;