MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ PopulationSpawnProcessor()

MayaFlux::Buffers::PopulationSpawnProcessor::PopulationSpawnProcessor ( const PopulationConfig config,
std::shared_ptr< Nodes::Network::GpuFieldOperator particle_op 
)

Definition at line 157 of file PopulationProcessor.cpp.

161 { FieldBinding { .name = "vertices", .binding = 0, .field = {} },
162 FieldBinding { .name = "cell_start", .binding = 1, .field = "hash_cell_start" },
163 FieldBinding { .name = "cell_count", .binding = 2, .field = "hash_cell_count" },
164 FieldBinding { .name = "particle_index", .binding = 3, .field = "hash_particle_index" },
165 FieldBinding { .name = "alive", .binding = 4, .field = "mutation_alive" },
166 FieldBinding { .name = "cluster_id", .binding = 5, .field = "hash_cluster_id" },
167 FieldBinding { .name = "spawn_cursor", .binding = 6, .field = "mutation_spawn_cursor" } },
168 build_population_spawn_spec())
169 , m_params {
170 .grid = make_grid_push_constants(config.hash),
171 .spawn_density_threshold = particle_op->get_field_config().spawn_density_threshold,
172 }
173 , m_particle_op(std::move(particle_op))
174 , m_built_revision(m_particle_op->revision())
175{
176}
NetworkStateFieldProcessor(std::vector< FieldBinding > bindings, const Portal::Graphics::ShaderSpec &spec)
Construct from a generated ShaderSpec.
std::shared_ptr< Nodes::Network::GpuFieldOperator > m_particle_op
GridPushConstants make_grid_push_constants(const SpatialHashConfig &c)
Populate a GridPushConstants from grid config.

References MayaFlux::Buffers::NetworkStateFieldProcessor::FieldBinding::name.