pub struct PhysicsAgent { /* private fields */ }Expand description
The agent responsible for managing the physics simulation.
Holds only its own strategy state — the PhysicsProvider is fetched
from EngineContext::services per frame.
Trait Implementations§
Source§impl Agent for PhysicsAgent
impl Agent for PhysicsAgent
Source§fn negotiate(&mut self, _request: NegotiationRequest) -> NegotiationResponse
fn negotiate(&mut self, _request: NegotiationRequest) -> NegotiationResponse
Negotiates with the DCC to determine the best execution strategy
given the current global resource constraints and priorities.
Source§fn apply_budget(&mut self, budget: ResourceBudget)
fn apply_budget(&mut self, budget: ResourceBudget)
Applies a resource budget issued by the DCC.
The agent must adjust its internal logic (e.g., LOD, quality settings)
to stay within the allocated limits.
Source§fn on_initialize(&mut self, context: &mut EngineContext<'_>)
fn on_initialize(&mut self, context: &mut EngineContext<'_>)
Called once after the agent is registered with the DCC. Read more
Source§fn execute(&mut self, context: &mut EngineContext<'_>)
fn execute(&mut self, context: &mut EngineContext<'_>)
Called every frame by the engine loop. Read more
Source§fn report_status(&self) -> AgentStatus
fn report_status(&self) -> AgentStatus
Reports the current status and health of the agent.
Source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
Allows mutable downcasting to concrete agent types.
Source§fn execution_timing(&self) -> ExecutionTiming
fn execution_timing(&self) -> ExecutionTiming
Declares WHEN and HOW this agent should execute within the frame pipeline. Read more
§fn deck_writes(&self) -> Vec<TypeId>
fn deck_writes(&self) -> Vec<TypeId>
Auto Trait Implementations§
impl Freeze for PhysicsAgent
impl !RefUnwindSafe for PhysicsAgent
impl Send for PhysicsAgent
impl Sync for PhysicsAgent
impl Unpin for PhysicsAgent
impl UnsafeUnpin for PhysicsAgent
impl !UnwindSafe for PhysicsAgent
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more