diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-07 17:14:37 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-07 17:14:37 +0100 |
| commit | 8c9815a210f457baafec36724d0d26e61bde52e4 (patch) | |
| tree | 2c269243243a7ccc1d580bc90b434013425de448 /src/gpu/effects | |
| parent | bd939acdf750181ef0e1a612b445da4c15077c85 (diff) | |
refactor: Store const GpuContext& in Effect base class
- Changed Effect to store ctx_ reference instead of device_/queue_/format_
- Updated all 19 effect implementations to access ctx_.device/queue/format
- Simplified Effect constructor: ctx_(ctx) vs device_(ctx.device), queue_(ctx.queue), format_(ctx.format)
- All 28 tests pass, all targets build successfully
Diffstat (limited to 'src/gpu/effects')
| -rw-r--r-- | src/gpu/effects/chroma_aberration_effect.cc | 8 | ||||
| -rw-r--r-- | src/gpu/effects/distort_effect.cc | 8 | ||||
| -rw-r--r-- | src/gpu/effects/fade_effect.cc | 8 | ||||
| -rw-r--r-- | src/gpu/effects/flash_cube_effect.cc | 4 | ||||
| -rw-r--r-- | src/gpu/effects/flash_effect.cc | 8 | ||||
| -rw-r--r-- | src/gpu/effects/gaussian_blur_effect.cc | 8 | ||||
| -rw-r--r-- | src/gpu/effects/heptagon_effect.cc | 6 | ||||
| -rw-r--r-- | src/gpu/effects/hybrid_3d_effect.cc | 4 | ||||
| -rw-r--r-- | src/gpu/effects/moving_ellipse_effect.cc | 6 | ||||
| -rw-r--r-- | src/gpu/effects/particle_spray_effect.cc | 10 | ||||
| -rw-r--r-- | src/gpu/effects/particles_effect.cc | 10 | ||||
| -rw-r--r-- | src/gpu/effects/passthrough_effect.cc | 8 | ||||
| -rw-r--r-- | src/gpu/effects/solarize_effect.cc | 8 | ||||
| -rw-r--r-- | src/gpu/effects/theme_modulation_effect.cc | 8 |
14 files changed, 52 insertions, 52 deletions
diff --git a/src/gpu/effects/chroma_aberration_effect.cc b/src/gpu/effects/chroma_aberration_effect.cc index 83c5f2a..dc28ee5 100644 --- a/src/gpu/effects/chroma_aberration_effect.cc +++ b/src/gpu/effects/chroma_aberration_effect.cc @@ -8,9 +8,9 @@ ChromaAberrationEffect::ChromaAberrationEffect(const GpuContext& ctx) : PostProcessEffect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 6, + gpu_create_buffer(ctx_.device, sizeof(float) * 6, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); - pipeline_ = create_post_process_pipeline(device_, format_, + pipeline_ = create_post_process_pipeline(ctx_.device, ctx_.format, chroma_aberration_shader_wgsl); } void ChromaAberrationEffect::render(WGPURenderPassEncoder pass, float t, @@ -18,9 +18,9 @@ void ChromaAberrationEffect::render(WGPURenderPassEncoder pass, float t, struct { float t, b, i, a, w, h; } u = {t, b, i, a, (float)width_, (float)height_}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); PostProcessEffect::render(pass, t, b, i, a); } void ChromaAberrationEffect::update_bind_group(WGPUTextureView v) { - pp_update_bind_group(device_, pipeline_, &bind_group_, v, uniforms_); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, v, uniforms_); } diff --git a/src/gpu/effects/distort_effect.cc b/src/gpu/effects/distort_effect.cc index abaa2e7..3bd4540 100644 --- a/src/gpu/effects/distort_effect.cc +++ b/src/gpu/effects/distort_effect.cc @@ -8,19 +8,19 @@ DistortEffect::DistortEffect(const GpuContext& ctx) : PostProcessEffect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 6, + gpu_create_buffer(ctx_.device, sizeof(float) * 6, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); pipeline_ = - create_post_process_pipeline(device_, format_, distort_shader_wgsl); + create_post_process_pipeline(ctx_.device, ctx_.format, distort_shader_wgsl); } void DistortEffect::render(WGPURenderPassEncoder pass, float t, float b, float i, float a) { struct { float t, b, i, a, w, h; } u = {t, b, i, a, (float)width_, (float)height_}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); PostProcessEffect::render(pass, t, b, i, a); } void DistortEffect::update_bind_group(WGPUTextureView v) { - pp_update_bind_group(device_, pipeline_, &bind_group_, v, uniforms_); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, v, uniforms_); } diff --git a/src/gpu/effects/fade_effect.cc b/src/gpu/effects/fade_effect.cc index dce2360..8aad6b3 100644 --- a/src/gpu/effects/fade_effect.cc +++ b/src/gpu/effects/fade_effect.cc @@ -45,13 +45,13 @@ FadeEffect::FadeEffect(const GpuContext& ctx) } )"; - pipeline_ = create_post_process_pipeline(device_, format_, shader_code); + pipeline_ = create_post_process_pipeline(ctx_.device, ctx_.format, shader_code); uniforms_ = gpu_create_buffer( - device_, 16, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); + ctx_.device, 16, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); } void FadeEffect::update_bind_group(WGPUTextureView input_view) { - pp_update_bind_group(device_, pipeline_, &bind_group_, input_view, uniforms_); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, input_view, uniforms_); } void FadeEffect::render(WGPURenderPassEncoder pass, float time, float beat, @@ -73,7 +73,7 @@ void FadeEffect::render(WGPURenderPassEncoder pass, float time, float beat, } float uniforms[4] = {fade_amount, 0.0f, 0.0f, 0.0f}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, uniforms, sizeof(uniforms)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, uniforms, sizeof(uniforms)); wgpuRenderPassEncoderSetPipeline(pass, pipeline_); wgpuRenderPassEncoderSetBindGroup(pass, 0, bind_group_, 0, nullptr); diff --git a/src/gpu/effects/flash_cube_effect.cc b/src/gpu/effects/flash_cube_effect.cc index 4f58562..8c97d5d 100644 --- a/src/gpu/effects/flash_cube_effect.cc +++ b/src/gpu/effects/flash_cube_effect.cc @@ -22,11 +22,11 @@ void FlashCubeEffect::init(MainSequence* demo) { (void)demo; WGPUTextureFormat format = demo->gpu_ctx.format; - renderer_.init(device_, queue_, format_); + renderer_.init(ctx_.device, ctx_.queue, ctx_.format); renderer_.resize(width_, height_); // Texture Manager - texture_manager_.init(device_, queue_); + texture_manager_.init(ctx_.device, ctx_.queue); // Load Perlin noise texture TextureAsset noise_tex = GetTextureAsset(AssetId::ASSET_NOISE_TEX); diff --git a/src/gpu/effects/flash_effect.cc b/src/gpu/effects/flash_effect.cc index 3dcb48a..217a7bb 100644 --- a/src/gpu/effects/flash_effect.cc +++ b/src/gpu/effects/flash_effect.cc @@ -47,13 +47,13 @@ FlashEffect::FlashEffect(const GpuContext& ctx) } )"; - pipeline_ = create_post_process_pipeline(device_, format_, shader_code); + pipeline_ = create_post_process_pipeline(ctx_.device, ctx_.format, shader_code); uniforms_ = gpu_create_buffer( - device_, 16, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); + ctx_.device, 16, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); } void FlashEffect::update_bind_group(WGPUTextureView input_view) { - pp_update_bind_group(device_, pipeline_, &bind_group_, input_view, uniforms_); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, input_view, uniforms_); } void FlashEffect::render(WGPURenderPassEncoder pass, float time, float beat, @@ -71,7 +71,7 @@ void FlashEffect::render(WGPURenderPassEncoder pass, float time, float beat, flash_intensity_ *= 0.85f; float uniforms[4] = {flash_intensity_, 0.0f, 0.0f, 0.0f}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, uniforms, sizeof(uniforms)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, uniforms, sizeof(uniforms)); wgpuRenderPassEncoderSetPipeline(pass, pipeline_); wgpuRenderPassEncoderSetBindGroup(pass, 0, bind_group_, 0, nullptr); diff --git a/src/gpu/effects/gaussian_blur_effect.cc b/src/gpu/effects/gaussian_blur_effect.cc index 72a93b8..f3a3544 100644 --- a/src/gpu/effects/gaussian_blur_effect.cc +++ b/src/gpu/effects/gaussian_blur_effect.cc @@ -8,19 +8,19 @@ GaussianBlurEffect::GaussianBlurEffect(const GpuContext& ctx) : PostProcessEffect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 6, + gpu_create_buffer(ctx_.device, sizeof(float) * 6, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); pipeline_ = - create_post_process_pipeline(device_, format_, gaussian_blur_shader_wgsl); + create_post_process_pipeline(ctx_.device, ctx_.format, gaussian_blur_shader_wgsl); } void GaussianBlurEffect::render(WGPURenderPassEncoder pass, float t, float b, float i, float a) { struct { float t, b, i, a, w, h; } u = {t, b, i, a, (float)width_, (float)height_}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); PostProcessEffect::render(pass, t, b, i, a); } void GaussianBlurEffect::update_bind_group(WGPUTextureView v) { - pp_update_bind_group(device_, pipeline_, &bind_group_, v, uniforms_); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, v, uniforms_); } diff --git a/src/gpu/effects/heptagon_effect.cc b/src/gpu/effects/heptagon_effect.cc index 024f076..40ff860 100644 --- a/src/gpu/effects/heptagon_effect.cc +++ b/src/gpu/effects/heptagon_effect.cc @@ -8,11 +8,11 @@ HeptagonEffect::HeptagonEffect(const GpuContext& ctx) : Effect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 4, + gpu_create_buffer(ctx_.device, sizeof(float) * 4, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); ResourceBinding bindings[] = {{uniforms_, WGPUBufferBindingType_Uniform}}; pass_ = - gpu_create_render_pass(device_, format_, main_shader_wgsl, bindings, 1); + gpu_create_render_pass(ctx_.device, ctx_.format, main_shader_wgsl, bindings, 1); pass_.vertex_count = 21; } void HeptagonEffect::render(WGPURenderPassEncoder pass, float t, float b, @@ -20,7 +20,7 @@ void HeptagonEffect::render(WGPURenderPassEncoder pass, float t, float b, struct { float p, a, t, d; } u = {i, a, t, 0.0f}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); wgpuRenderPassEncoderSetPipeline(pass, pass_.pipeline); wgpuRenderPassEncoderSetBindGroup(pass, 0, pass_.bind_group, 0, nullptr); wgpuRenderPassEncoderDraw(pass, pass_.vertex_count, 1, 0, 0); diff --git a/src/gpu/effects/hybrid_3d_effect.cc b/src/gpu/effects/hybrid_3d_effect.cc index 6f89bf3..0f31b92 100644 --- a/src/gpu/effects/hybrid_3d_effect.cc +++ b/src/gpu/effects/hybrid_3d_effect.cc @@ -24,11 +24,11 @@ void Hybrid3DEffect::init(MainSequence* demo) { demo->gpu_ctx.format; // Get current format from MainSequence (might be different // than constructor if resized) - renderer_.init(device_, queue_, format_); + renderer_.init(ctx_.device, ctx_.queue, ctx_.format); renderer_.resize(width_, height_); // Texture Manager - texture_manager_.init(device_, queue_); + texture_manager_.init(ctx_.device, ctx_.queue); // Load Noise Asset TextureAsset noise_tex = GetTextureAsset(AssetId::ASSET_NOISE_TEX); diff --git a/src/gpu/effects/moving_ellipse_effect.cc b/src/gpu/effects/moving_ellipse_effect.cc index 1163215..94596df 100644 --- a/src/gpu/effects/moving_ellipse_effect.cc +++ b/src/gpu/effects/moving_ellipse_effect.cc @@ -8,11 +8,11 @@ MovingEllipseEffect::MovingEllipseEffect(const GpuContext& ctx) : Effect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 6, + gpu_create_buffer(ctx_.device, sizeof(float) * 6, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); ResourceBinding bindings[] = {{uniforms_, WGPUBufferBindingType_Uniform}}; pass_ = - gpu_create_render_pass(device_, format_, ellipse_shader_wgsl, bindings, 1); + gpu_create_render_pass(ctx_.device, ctx_.format, ellipse_shader_wgsl, bindings, 1); pass_.vertex_count = 3; } void MovingEllipseEffect::render(WGPURenderPassEncoder pass, float t, float b, @@ -20,7 +20,7 @@ void MovingEllipseEffect::render(WGPURenderPassEncoder pass, float t, float b, struct { float t, b, i, a, w, h; } u = {t, b, i, a, (float)width_, (float)height_}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); wgpuRenderPassEncoderSetPipeline(pass, pass_.pipeline); wgpuRenderPassEncoderSetBindGroup(pass, 0, pass_.bind_group, 0, nullptr); wgpuRenderPassEncoderDraw(pass, 3, 1, 0, 0); diff --git a/src/gpu/effects/particle_spray_effect.cc b/src/gpu/effects/particle_spray_effect.cc index 452017e..8c20065 100644 --- a/src/gpu/effects/particle_spray_effect.cc +++ b/src/gpu/effects/particle_spray_effect.cc @@ -9,24 +9,24 @@ ParticleSprayEffect::ParticleSprayEffect(const GpuContext& ctx) : Effect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 6, + gpu_create_buffer(ctx_.device, sizeof(float) * 6, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); std::vector<Particle> init_p(NUM_PARTICLES); for (Particle& p : init_p) p.pos[3] = 0.0f; particles_buffer_ = gpu_create_buffer( - device_, sizeof(Particle) * NUM_PARTICLES, + ctx_.device, sizeof(Particle) * NUM_PARTICLES, WGPUBufferUsage_Storage | WGPUBufferUsage_Vertex, init_p.data()); ResourceBinding cb[] = {{particles_buffer_, WGPUBufferBindingType_Storage}, {uniforms_, WGPUBufferBindingType_Uniform}}; compute_pass_ = - gpu_create_compute_pass(device_, particle_spray_compute_wgsl, cb, 2); + gpu_create_compute_pass(ctx_.device, particle_spray_compute_wgsl, cb, 2); compute_pass_.workgroup_size_x = (NUM_PARTICLES + 63) / 64; ResourceBinding rb[] = { {particles_buffer_, WGPUBufferBindingType_ReadOnlyStorage}, {uniforms_, WGPUBufferBindingType_Uniform}}; render_pass_ = - gpu_create_render_pass(device_, format_, particle_render_wgsl, rb, 2); + gpu_create_render_pass(ctx_.device, ctx_.format, particle_render_wgsl, rb, 2); render_pass_.vertex_count = 6; render_pass_.instance_count = NUM_PARTICLES; } @@ -35,7 +35,7 @@ void ParticleSprayEffect::compute(WGPUCommandEncoder e, float t, float b, struct { float i, a, t, b, w, h; } u = {i, a, t, b, (float)width_, (float)height_}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); WGPUComputePassEncoder pass = wgpuCommandEncoderBeginComputePass(e, nullptr); wgpuComputePassEncoderSetPipeline(pass, compute_pass_.pipeline); wgpuComputePassEncoderSetBindGroup(pass, 0, compute_pass_.bind_group, 0, diff --git a/src/gpu/effects/particles_effect.cc b/src/gpu/effects/particles_effect.cc index 137150a..d9f8f2a 100644 --- a/src/gpu/effects/particles_effect.cc +++ b/src/gpu/effects/particles_effect.cc @@ -9,22 +9,22 @@ ParticlesEffect::ParticlesEffect(const GpuContext& ctx) : Effect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 4, + gpu_create_buffer(ctx_.device, sizeof(float) * 4, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); std::vector<Particle> init_p(NUM_PARTICLES); particles_buffer_ = gpu_create_buffer( - device_, sizeof(Particle) * NUM_PARTICLES, + ctx_.device, sizeof(Particle) * NUM_PARTICLES, WGPUBufferUsage_Storage | WGPUBufferUsage_Vertex, init_p.data()); ResourceBinding cb[] = {{particles_buffer_, WGPUBufferBindingType_Storage}, {uniforms_, WGPUBufferBindingType_Uniform}}; compute_pass_ = - gpu_create_compute_pass(device_, particle_compute_wgsl, cb, 2); + gpu_create_compute_pass(ctx_.device, particle_compute_wgsl, cb, 2); compute_pass_.workgroup_size_x = (NUM_PARTICLES + 63) / 64; ResourceBinding rb[] = { {particles_buffer_, WGPUBufferBindingType_ReadOnlyStorage}, {uniforms_, WGPUBufferBindingType_Uniform}}; render_pass_ = - gpu_create_render_pass(device_, format_, particle_render_wgsl, rb, 2); + gpu_create_render_pass(ctx_.device, ctx_.format, particle_render_wgsl, rb, 2); render_pass_.vertex_count = 6; render_pass_.instance_count = NUM_PARTICLES; } @@ -33,7 +33,7 @@ void ParticlesEffect::compute(WGPUCommandEncoder e, float t, float b, float i, struct { float p, a, t, d; } u = {i, a, t, 0.0f}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); WGPUComputePassEncoder pass = wgpuCommandEncoderBeginComputePass(e, nullptr); wgpuComputePassEncoderSetPipeline(pass, compute_pass_.pipeline); wgpuComputePassEncoderSetBindGroup(pass, 0, compute_pass_.bind_group, 0, diff --git a/src/gpu/effects/passthrough_effect.cc b/src/gpu/effects/passthrough_effect.cc index 203f912..1aebb28 100644 --- a/src/gpu/effects/passthrough_effect.cc +++ b/src/gpu/effects/passthrough_effect.cc @@ -8,15 +8,15 @@ PassthroughEffect::PassthroughEffect(const GpuContext& ctx) : PostProcessEffect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 6, + gpu_create_buffer(ctx_.device, sizeof(float) * 6, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); pipeline_ = - create_post_process_pipeline(device_, format_, passthrough_shader_wgsl); + create_post_process_pipeline(ctx_.device, ctx_.format, passthrough_shader_wgsl); } void PassthroughEffect::update_bind_group(WGPUTextureView input_view) { struct { float t, b, i, a, w, h; } u = {0, 0, 0, 0, (float)width_, (float)height_}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); - pp_update_bind_group(device_, pipeline_, &bind_group_, input_view, uniforms_); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, input_view, uniforms_); } diff --git a/src/gpu/effects/solarize_effect.cc b/src/gpu/effects/solarize_effect.cc index b6cf6f9..4e9cbda 100644 --- a/src/gpu/effects/solarize_effect.cc +++ b/src/gpu/effects/solarize_effect.cc @@ -8,19 +8,19 @@ SolarizeEffect::SolarizeEffect(const GpuContext& ctx) : PostProcessEffect(ctx) { uniforms_ = - gpu_create_buffer(device_, sizeof(float) * 6, + gpu_create_buffer(ctx_.device, sizeof(float) * 6, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); pipeline_ = - create_post_process_pipeline(device_, format_, solarize_shader_wgsl); + create_post_process_pipeline(ctx_.device, ctx_.format, solarize_shader_wgsl); } void SolarizeEffect::render(WGPURenderPassEncoder pass, float t, float b, float i, float a) { struct { float t, b, i, a, w, h; } u = {t, b, i, a, (float)width_, (float)height_}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, &u, sizeof(u)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, &u, sizeof(u)); PostProcessEffect::render(pass, t, b, i, a); } void SolarizeEffect::update_bind_group(WGPUTextureView v) { - pp_update_bind_group(device_, pipeline_, &bind_group_, v, uniforms_); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, v, uniforms_); } diff --git a/src/gpu/effects/theme_modulation_effect.cc b/src/gpu/effects/theme_modulation_effect.cc index d0d71cb..4b5105d 100644 --- a/src/gpu/effects/theme_modulation_effect.cc +++ b/src/gpu/effects/theme_modulation_effect.cc @@ -47,15 +47,15 @@ ThemeModulationEffect::ThemeModulationEffect(const GpuContext& ctx) } )"; - pipeline_ = create_post_process_pipeline(device_, format_, shader_code); + pipeline_ = create_post_process_pipeline(ctx_.device, ctx_.format, shader_code); // Create uniform buffer (4 floats: brightness + padding) uniforms_ = gpu_create_buffer( - device_, 16, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); + ctx_.device, 16, WGPUBufferUsage_Uniform | WGPUBufferUsage_CopyDst); } void ThemeModulationEffect::update_bind_group(WGPUTextureView input_view) { - pp_update_bind_group(device_, pipeline_, &bind_group_, input_view, uniforms_); + pp_update_bind_group(ctx_.device, pipeline_, &bind_group_, input_view, uniforms_); } void ThemeModulationEffect::render(WGPURenderPassEncoder pass, float time, @@ -80,7 +80,7 @@ void ThemeModulationEffect::render(WGPURenderPassEncoder pass, float time, // Update uniform buffer float uniforms[4] = {theme_brightness, 0.0f, 0.0f, 0.0f}; - wgpuQueueWriteBuffer(queue_, uniforms_.buffer, 0, uniforms, sizeof(uniforms)); + wgpuQueueWriteBuffer(ctx_.queue, uniforms_.buffer, 0, uniforms, sizeof(uniforms)); // Render wgpuRenderPassEncoderSetPipeline(pass, pipeline_); |
