summaryrefslogtreecommitdiffstats
path: root/src/renderer/MBlur.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/renderer/MBlur.h')
-rw-r--r--src/renderer/MBlur.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/renderer/MBlur.h b/src/renderer/MBlur.h
new file mode 100644
index 00000000..3dc53082
--- /dev/null
+++ b/src/renderer/MBlur.h
@@ -0,0 +1,39 @@
+#pragma once
+
+enum FxType
+{
+ FXTYPE_WATER1,
+ FXTYPE_WATER2,
+ FXTYPE_BLOOD1,
+ FXTYPE_BLOOD2,
+ FXTYPE_HEATHAZE,
+ FXTYPE_SPLASH1,
+ FXTYPE_SPLASH2,
+ FXTYPE_SPLASH3
+};
+
+class CMBlur
+{
+public:
+ static RwRaster *pFrontBuffer;
+ static bool ms_bJustInitialised;
+ static bool ms_bScaledBlur;
+ static bool BlurOn;
+ static float Drunkness;
+
+ static int32 pBufVertCount;
+
+public:
+ static RwBool MotionBlurOpen(RwCamera *cam);
+ static RwBool MotionBlurClose(void);
+ static void CreateImmediateModeData(RwCamera *cam, RwRect *rect);
+ static void CreateImmediateModeData(RwCamera *cam, RwRect *rect, RwIm2DVertex *verts, RwRGBA color, float u1Off, float v1Off, float u2Off, float v2Off, float z, int fullTexture);
+ static void MotionBlurRender(RwCamera *cam, uint32 red, uint32 green, uint32 blue, uint32 blur, int32 type, uint32 bluralpha);
+ static void OverlayRender(RwCamera *cam, RwRaster *raster, RwRGBA color, int32 type, int32 bluralpha);
+ static void SetDrunkBlur(float drunkness);
+ static void ClearDrunkBlur();
+
+ static bool PosInside(RwRect *rect, float x1, float y1, float x2, float y2);
+ static bool AddRenderFx(RwCamera *cam, RwRect *rect, float z, FxType type);
+ static void OverlayRenderFx(RwCamera *cam, RwRaster *frontBuf);
+};