Process the network for the given number of samples.
- Parameters
-
| num_samples | Number of samples/frames to process |
Subclasses implement their specific processing logic:
- Update internal state (physics, relationships, etc.)
- Process individual nodes
- Apply inter-node interactions
- Aggregate outputs if needed
Called by NodeGraphManager during token processing.
Implements MayaFlux::Nodes::Network::NodeNetwork.
Definition at line 85 of file ParticleNetwork.cpp.
86{
88
90 return;
91 }
92
94
95 for (unsigned int frame = 0; frame < num_samples; ++frame) {
99
102 }
103
106 }
107
110 }
111
113
115 "ParticleNetwork processed {} frames, {} particles",
117}
#define MF_TRACE(comp, ctx,...)
bool is_enabled() const
Check if network is enabled.
@ INDEPENDENT
No connections, nodes process independently.
void ensure_initialized()
Ensure initialize() is called exactly once.
void handle_bounds()
Handle boundary conditions.
std::vector< ParticleNode > m_particles
void apply_attraction_force()
Apply attraction point force.
void apply_drag()
Apply drag forces.
void apply_gravity()
Apply gravity to all particles.
void integrate(float dt)
Integrate forces → velocities → positions.
void apply_interaction_forces()
Apply interaction forces based on topology.
bool m_has_attraction_point
void update_point_nodes()
Update PointNode states from physics.
void clear_forces()
Clear accumulated forces.
void update_mapped_parameters()
Update mapped parameters before physics step.
@ NodeProcessing
Node graph processing (Nodes::NodeGraphManager)
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.
References apply_attraction_force(), apply_drag(), apply_gravity(), apply_interaction_forces(), clear_forces(), MayaFlux::Nodes::Network::NodeNetwork::ensure_initialized(), handle_bounds(), MayaFlux::Nodes::Network::NodeNetwork::INDEPENDENT, integrate(), MayaFlux::Nodes::Network::NodeNetwork::is_enabled(), m_has_attraction_point, m_particles, m_timestep, MayaFlux::Nodes::Network::NodeNetwork::m_topology, MF_TRACE, MayaFlux::Journal::NodeProcessing, MayaFlux::Journal::Nodes, update_mapped_parameters(), and update_point_nodes().