summaryrefslogtreecommitdiff
path: root/src/gpu/demo_effects.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/demo_effects.h')
-rw-r--r--src/gpu/demo_effects.h44
1 files changed, 2 insertions, 42 deletions
diff --git a/src/gpu/demo_effects.h b/src/gpu/demo_effects.h
index 1bd6020..ff7e017 100644
--- a/src/gpu/demo_effects.h
+++ b/src/gpu/demo_effects.h
@@ -13,6 +13,8 @@
#include "gpu/effects/rotating_cube_effect.h"
#include "gpu/effects/shaders.h"
#include "gpu/effects/theme_modulation_effect.h" // ThemeModulationEffect with full definition
+#include "gpu/effects/hybrid_3d_effect.h"
+#include "gpu/effects/flash_cube_effect.h"
#include "gpu/gpu.h"
#include "gpu/texture_manager.h"
#include "gpu/uniform_helper.h"
@@ -49,7 +51,6 @@ class ParticlesEffect : public Effect {
ComputePass compute_pass_;
RenderPass render_pass_;
GpuBuffer particles_buffer_;
- UniformBuffer<CommonPostProcessUniforms> uniforms_;
};
class PassthroughEffect : public PostProcessEffect {
@@ -58,7 +59,6 @@ class PassthroughEffect : public PostProcessEffect {
void update_bind_group(WGPUTextureView input_view) override;
private:
- UniformBuffer<CommonPostProcessUniforms> uniforms_;
};
class MovingEllipseEffect : public Effect {
@@ -83,7 +83,6 @@ class ParticleSprayEffect : public Effect {
ComputePass compute_pass_;
RenderPass render_pass_;
GpuBuffer particles_buffer_;
- UniformBuffer<CommonPostProcessUniforms> uniforms_;
};
// Parameters for GaussianBlurEffect (set at construction time)
@@ -106,7 +105,6 @@ class GaussianBlurEffect : public PostProcessEffect {
private:
GaussianBlurParams params_;
- UniformBuffer<CommonPostProcessUniforms> uniforms_;
UniformBuffer<GaussianBlurParams> params_buffer_;
};
@@ -118,7 +116,6 @@ class SolarizeEffect : public PostProcessEffect {
void update_bind_group(WGPUTextureView input_view) override;
private:
- UniformBuffer<CommonPostProcessUniforms> uniforms_;
};
// Parameters for VignetteEffect
@@ -137,7 +134,6 @@ class VignetteEffect : public PostProcessEffect {
private:
VignetteParams params_;
- UniformBuffer<CommonPostProcessUniforms> uniforms_;
UniformBuffer<VignetteParams> params_buffer_;
};
@@ -160,26 +156,9 @@ class ChromaAberrationEffect : public PostProcessEffect {
private:
ChromaAberrationParams params_;
- UniformBuffer<CommonPostProcessUniforms> uniforms_;
UniformBuffer<ChromaAberrationParams> params_buffer_;
};
-class Hybrid3DEffect : public Effect {
- public:
- Hybrid3DEffect(const GpuContext& ctx);
- void init(MainSequence* demo) override;
- void render(WGPURenderPassEncoder pass, float time, float beat,
- float intensity, float aspect_ratio) override;
-
- private:
- Renderer3D renderer_;
- TextureManager texture_manager_;
- Scene scene_;
- Camera camera_;
- int width_ = 1280;
- int height_ = 720;
-};
-
// Parameters for DistortEffect
struct DistortParams {
float strength = 0.01f; // Default distortion strength
@@ -197,27 +176,8 @@ class DistortEffect : public PostProcessEffect {
private:
DistortParams params_;
- UniformBuffer<CommonPostProcessUniforms> common_uniforms_;
UniformBuffer<DistortParams> params_buffer_;
};
-class FlashCubeEffect : public Effect {
- public:
- FlashCubeEffect(const GpuContext& ctx);
- void init(MainSequence* demo) override;
- void resize(int width, int height) override;
- void render(WGPURenderPassEncoder pass, float time, float beat,
- float intensity, float aspect_ratio) override;
-
- private:
- Renderer3D renderer_;
- TextureManager texture_manager_;
- Scene scene_;
- Camera camera_;
- int width_ = 1280;
- int height_ = 720;
- float last_beat_;
- float flash_intensity_;
-};
// ThemeModulationEffect now defined in gpu/effects/theme_modulation_effect.h
// (included above) FadeEffect now defined in gpu/effects/fade_effect.h