diff options
Diffstat (limited to 'src/gpu/demo_effects.h')
| -rw-r--r-- | src/gpu/demo_effects.h | 37 |
1 files changed, 15 insertions, 22 deletions
diff --git a/src/gpu/demo_effects.h b/src/gpu/demo_effects.h index 4b96ba7..cddd04b 100644 --- a/src/gpu/demo_effects.h +++ b/src/gpu/demo_effects.h @@ -23,7 +23,7 @@ struct Particle { class HeptagonEffect : public Effect { public: - HeptagonEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + HeptagonEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; @@ -33,7 +33,7 @@ class HeptagonEffect : public Effect { class ParticlesEffect : public Effect { public: - ParticlesEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + ParticlesEffect(const GpuContext& ctx); void compute(WGPUCommandEncoder encoder, float time, float beat, float intensity, float aspect_ratio) override; void render(WGPURenderPassEncoder pass, float time, float beat, @@ -47,15 +47,13 @@ class ParticlesEffect : public Effect { class PassthroughEffect : public PostProcessEffect { public: - PassthroughEffect(WGPUDevice device, WGPUQueue queue, - WGPUTextureFormat format); + PassthroughEffect(const GpuContext& ctx); void update_bind_group(WGPUTextureView input_view) override; }; class MovingEllipseEffect : public Effect { public: - MovingEllipseEffect(WGPUDevice device, WGPUQueue queue, - WGPUTextureFormat format); + MovingEllipseEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; @@ -65,8 +63,7 @@ class MovingEllipseEffect : public Effect { class ParticleSprayEffect : public Effect { public: - ParticleSprayEffect(WGPUDevice device, WGPUQueue queue, - WGPUTextureFormat format); + ParticleSprayEffect(const GpuContext& ctx); void compute(WGPUCommandEncoder encoder, float time, float beat, float intensity, float aspect_ratio) override; void render(WGPURenderPassEncoder pass, float time, float beat, @@ -80,8 +77,7 @@ class ParticleSprayEffect : public Effect { class GaussianBlurEffect : public PostProcessEffect { public: - GaussianBlurEffect(WGPUDevice device, WGPUQueue queue, - WGPUTextureFormat format); + GaussianBlurEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; void update_bind_group(WGPUTextureView input_view) override; @@ -89,7 +85,7 @@ class GaussianBlurEffect : public PostProcessEffect { class SolarizeEffect : public PostProcessEffect { public: - SolarizeEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + SolarizeEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; void update_bind_group(WGPUTextureView input_view) override; @@ -97,7 +93,7 @@ class SolarizeEffect : public PostProcessEffect { class DistortEffect : public PostProcessEffect { public: - DistortEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + DistortEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; void update_bind_group(WGPUTextureView input_view) override; @@ -105,8 +101,7 @@ class DistortEffect : public PostProcessEffect { class ChromaAberrationEffect : public PostProcessEffect { public: - ChromaAberrationEffect(WGPUDevice device, WGPUQueue queue, - WGPUTextureFormat format); + ChromaAberrationEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; void update_bind_group(WGPUTextureView input_view) override; @@ -114,7 +109,7 @@ class ChromaAberrationEffect : public PostProcessEffect { class Hybrid3DEffect : public Effect { public: - Hybrid3DEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + Hybrid3DEffect(const GpuContext& ctx); void init(MainSequence* demo) override; void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; @@ -130,7 +125,7 @@ class Hybrid3DEffect : public Effect { class FlashCubeEffect : public Effect { public: - FlashCubeEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + FlashCubeEffect(const GpuContext& ctx); void init(MainSequence* demo) override; void resize(int width, int height) override; void render(WGPURenderPassEncoder pass, float time, float beat, @@ -149,8 +144,7 @@ class FlashCubeEffect : public Effect { class ThemeModulationEffect : public PostProcessEffect { public: - ThemeModulationEffect(WGPUDevice device, WGPUQueue queue, - WGPUTextureFormat format); + ThemeModulationEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; void update_bind_group(WGPUTextureView input_view) override; @@ -158,7 +152,7 @@ class ThemeModulationEffect : public PostProcessEffect { class FadeEffect : public PostProcessEffect { public: - FadeEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + FadeEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; void update_bind_group(WGPUTextureView input_view) override; @@ -166,7 +160,7 @@ class FadeEffect : public PostProcessEffect { class FlashEffect : public PostProcessEffect { public: - FlashEffect(WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format); + FlashEffect(const GpuContext& ctx); void render(WGPURenderPassEncoder pass, float time, float beat, float intensity, float aspect_ratio) override; void update_bind_group(WGPUTextureView input_view) override; @@ -176,7 +170,6 @@ class FlashEffect : public PostProcessEffect { }; // Auto-generated functions -void LoadTimeline(MainSequence& main_seq, WGPUDevice device, WGPUQueue queue, - WGPUTextureFormat format); +void LoadTimeline(MainSequence& main_seq, const GpuContext& ctx); float GetDemoDuration(); // Returns demo end time in seconds, or -1 if not // specified
\ No newline at end of file |
