summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/windows/winmain.h
diff options
context:
space:
mode:
author Westley M. Martinez <anikom15@gmail.com>2016-12-16 12:35:58 -0800
committer Westley M. Martinez <anikom15@gmail.com>2016-12-29 14:57:28 -0800
commit0b6f935443d2fa048a9b2f9db8b00cf6cb8e7078 (patch)
tree25f40a0e82b5142c3249aae70fbba1a05bcb00c1 /src/osd/windows/winmain.h
parent1fafe7706cbfcfc6e39c23c3c713fbb102557cbe (diff)
Implement new phosphor shader.
hlsl/phosphor.fx: Make changes to the pixel shader. New uniforms: Mode, Tau, Beta, Gamma. Remove Phosphor. Mode selects the mode for phosphor simulation: off (no decay), exponential, inverse power. Tau is the time constant for exp. decay. Beta and Gamma are constants for inv-pow. src/osd/modules/render/d3d/d3dhlsl.cpp: Provide uniforms and add sliders for new options. src/osd/modules/render/d3d/d3dhlsl.h: (BP) Provide new options. src/osd/windows/winmain.cpp: (BP) Provide new options. src/osd/windows/winmain.h: (BP) Provide new options.
Diffstat (limited to 'src/osd/windows/winmain.h')
-rw-r--r--src/osd/windows/winmain.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/osd/windows/winmain.h b/src/osd/windows/winmain.h
index 1c40a346d34..b939b115b83 100644
--- a/src/osd/windows/winmain.h
+++ b/src/osd/windows/winmain.h
@@ -68,7 +68,10 @@
#define WINOPTION_SCALE "scale"
#define WINOPTION_POWER "power"
#define WINOPTION_FLOOR "floor"
-#define WINOPTION_PHOSPHOR "phosphor_life"
+#define WINOPTION_PHOSPHOR_MODE "phosphor_mode"
+#define WINOPTION_PHOSPHOR_TAU "phosphor_tau"
+#define WINOPTION_PHOSPHOR_BETA "phosphor_beta"
+#define WINOPTION_PHOSPHOR_GAMMA "phosphor_gamma"
#define WINOPTION_SATURATION "saturation"
#define WINOPTION_YIQ_ENABLE "yiq_enable"
#define WINOPTION_YIQ_JITTER "yiq_jitter"
@@ -197,7 +200,10 @@ public:
const char *screen_scale() const { return value(WINOPTION_SCALE); }
const char *screen_power() const { return value(WINOPTION_POWER); }
const char *screen_floor() const { return value(WINOPTION_FLOOR); }
- const char *screen_phosphor() const { return value(WINOPTION_PHOSPHOR); }
+ int screen_phosphor_mode() const { return int_value(WINOPTION_PHOSPHOR_MODE); }
+ const char* screen_phosphor_tau() const { return value(WINOPTION_PHOSPHOR_TAU); }
+ const char* screen_phosphor_beta() const { return value(WINOPTION_PHOSPHOR_BETA); }
+ const char* screen_phosphor_gamma() const { return value(WINOPTION_PHOSPHOR_GAMMA); }
float screen_saturation() const { return float_value(WINOPTION_SATURATION); }
// full screen options