From 2309fc50fe822a9c9ebd3013c3837cc47fb128aa Mon Sep 17 00:00:00 2001 From: skal Date: Tue, 10 Mar 2026 22:50:17 +0100 Subject: fix(particles): release compute and render pass encoders Missing wgpuComputePassEncoderRelease/wgpuRenderPassEncoderRelease caused per-frame leaks and command buffer corruption in wgpu-native. handoff(Gemini): particles encoder leak fixed, 2 lines added to render() Co-Authored-By: Claude Sonnet 4.6 --- src/effects/particles_effect.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/effects') diff --git a/src/effects/particles_effect.cc b/src/effects/particles_effect.cc index fc37a88..35caa1c 100644 --- a/src/effects/particles_effect.cc +++ b/src/effects/particles_effect.cc @@ -73,6 +73,7 @@ void Particles::render(WGPUCommandEncoder encoder, wgpuComputePassEncoderDispatchWorkgroups( compute, compute_pass_.workgroup_size_x, 1, 1); wgpuComputePassEncoderEnd(compute); + wgpuComputePassEncoderRelease(compute); // Run render pass (draw particles to output) WGPUTextureView output_view = nodes.get_view(output_nodes_[0]); @@ -91,4 +92,5 @@ void Particles::render(WGPUCommandEncoder encoder, wgpuRenderPassEncoderDraw(pass, render_pass_.vertex_count, render_pass_.instance_count, 0, 0); wgpuRenderPassEncoderEnd(pass); + wgpuRenderPassEncoderRelease(pass); } -- cgit v1.2.3