Skip to content

Comments

fix: poor performance rpi#221

Draft
schell wants to merge 7 commits intomainfrom
fix/poor-performance-rpi
Draft

fix: poor performance rpi#221
schell wants to merge 7 commits intomainfrom
fix/poor-performance-rpi

Conversation

@schell
Copy link
Owner

@schell schell commented Feb 22, 2026

WIP

schell and others added 7 commits February 22, 2026 12:52
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Claude <noreply@anthropic.com>
…loom, MSAA

Co-authored-by: Claude <noreply@anthropic.com>
…ed GPUs

Co-authored-by: Claude <noreply@anthropic.com>
…aw-indirect

When the GPU lacks MULTI_DRAW_INDIRECT support (e.g. RPi5 V3D), the
direct-draw path now tests each primitive's bounding sphere against the
camera frustum and skips off-screen primitives entirely. This avoids
submitting geometry that would be clipped anyway, reducing draw calls
on constrained hardware.

Co-authored-by: Claude <noreply@anthropic.com>
When HDR is disabled (auto-selected for Low GPU profile), the stage
renders directly to the output surface in its native format (e.g.
Rgba8UnormSrgb) instead of Rgba16Float. This halves render-target
bandwidth and eliminates the bloom and tonemapping passes entirely.

New API: Stage::set_hdr(bool) / with_hdr(bool) / get_hdr().

Co-authored-by: Claude <noreply@anthropic.com>
Add Context::with_memory_budget() to set a soft VRAM cap. Stage now
exposes used_gpu_texture_byte_size() and used_gpu_total_byte_size()
which estimate memory across render targets, atlases, bloom, IBL, and
BRDF textures. Warnings are logged when usage exceeds the budget after
atlas image additions.

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant