pub struct ShadowAgent { /* private fields */ }Expand description
The agent responsible for shadow map rendering (LaneKind::Shadow).
Holds only its own strategy state — every other dependency
(GraphicsDevice, GpuCache, RenderWorld, FrameContext) is
fetched from EngineContext::services per frame.
Trait Implementations§
Source§impl Agent for ShadowAgent
impl Agent for ShadowAgent
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 execution_timing(&self) -> ExecutionTiming
fn execution_timing(&self) -> ExecutionTiming
Declares WHEN and HOW this agent should execute within the frame pipeline. Read more
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.
§fn deck_writes(&self) -> Vec<TypeId>
fn deck_writes(&self) -> Vec<TypeId>
Auto Trait Implementations§
impl Freeze for ShadowAgent
impl !RefUnwindSafe for ShadowAgent
impl Send for ShadowAgent
impl Sync for ShadowAgent
impl Unpin for ShadowAgent
impl UnsafeUnpin for ShadowAgent
impl !UnwindSafe for ShadowAgent
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