summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/render/bgfx/frameparameter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/modules/render/bgfx/frameparameter.cpp')
-rw-r--r--src/osd/modules/render/bgfx/frameparameter.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/osd/modules/render/bgfx/frameparameter.cpp b/src/osd/modules/render/bgfx/frameparameter.cpp
new file mode 100644
index 00000000000..a354664cfce
--- /dev/null
+++ b/src/osd/modules/render/bgfx/frameparameter.cpp
@@ -0,0 +1,27 @@
+// license:BSD-3-Clause
+// copyright-holders:Ryan Holtz
+//============================================================
+//
+// frameparameter.cpp - Frame-based dynamic shader param
+//
+//============================================================
+
+#include "frameparameter.h"
+
+bgfx_frame_parameter::bgfx_frame_parameter(std::string name, parameter_type type, uint32_t period)
+ : bgfx_parameter(name, type)
+ , m_current_frame(0)
+ , m_period(period)
+{
+}
+
+float bgfx_frame_parameter::value()
+{
+ return float(m_current_frame);
+}
+
+void bgfx_frame_parameter::tick(double /*delta*/)
+{
+ m_current_frame++;
+ m_current_frame %= m_period;
+}