simvx.graphics.renderer.overlay_renderer¶
Overlay rendering: debug lines, text, and particles.
Module Contents¶
Classes¶
Handles rendering of overlays: debug lines, text, and particles. |
Data¶
API¶
- simvx.graphics.renderer.overlay_renderer.__all__¶
[‘OverlayRenderer’]
- simvx.graphics.renderer.overlay_renderer.log¶
‘getLogger(…)’
- class simvx.graphics.renderer.overlay_renderer.OverlayRenderer(renderer: simvx.graphics.renderer.forward.Renderer)¶
Handles rendering of overlays: debug lines, text, and particles.
Initialization
- dispatch_gpu_particles(cmd: Any) None¶
Dispatch compute shaders for GPU particle simulation (outside render pass).
Each
(emitter_id, cfg)submission maps to a persistent per-emitter SSBO owned by :class:ParticleCompute(matches the webGPUParticlePassmodel). Emitters that no longer appear in the scene tree are pruned after the dispatch loop so their GPU resources are released.Once the compute pass exists this runs on every frame, including frames with no submission at all: the prune is what hands a departed emitter’s buffer and pools to the engine’s retire queue, and the frame after the last emitter leaves carries no submission to hang it off. Only the dispatch loop itself is skipped when nothing submitted.
- render_particles(cmd: Any, extent: tuple[int, int]) None¶
Render all submitted particle systems.
- render_debug_lines(cmd: Any, extent: tuple[int, int]) None¶
Render debug wireframe lines if any were submitted.