summaryrefslogtreecommitdiff
path: root/src/gpu/effect.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/effect.h')
-rw-r--r--src/gpu/effect.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gpu/effect.h b/src/gpu/effect.h
index ee90fa4..488e92e 100644
--- a/src/gpu/effect.h
+++ b/src/gpu/effect.h
@@ -1,4 +1,5 @@
#pragma once
+#include "gpu/gpu.h"
#include <algorithm>
#include <memory>
#include <vector>
@@ -14,6 +15,8 @@ class PostProcessEffect;
class Effect {
public:
+ Effect(WGPUDevice device, WGPUQueue queue)
+ : device_(device), queue_(queue) {}
virtual ~Effect() = default;
virtual void init(MainSequence* demo) {
(void)demo;
@@ -36,10 +39,17 @@ class Effect {
virtual bool is_post_process() const {
return false;
}
+
+ protected:
+ WGPUDevice device_;
+ WGPUQueue queue_;
+ GpuBuffer uniforms_;
};
class PostProcessEffect : public Effect {
public:
+ PostProcessEffect(WGPUDevice device, WGPUQueue queue)
+ : Effect(device, queue) {}
bool is_post_process() const override {
return true;
}