implemented extended postfx
This commit is contained in:
45
src/extras/postfx.h
Normal file
45
src/extras/postfx.h
Normal file
@@ -0,0 +1,45 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef EXTENDED_COLOURFILTER
|
||||
|
||||
class CPostFX
|
||||
{
|
||||
public:
|
||||
enum {
|
||||
POSTFX_OFF,
|
||||
POSTFX_SIMPLE,
|
||||
POSTFX_NORMAL,
|
||||
POSTFX_MOBILE
|
||||
};
|
||||
static RwRaster *pFrontBuffer;
|
||||
static RwRaster *pBackBuffer;
|
||||
static bool bJustInitialised;
|
||||
static int EffectSwitch;
|
||||
static bool BlurOn; // or use CMblur for that?
|
||||
static bool MotionBlurOn; // or use CMblur for that?
|
||||
static float Intensity;
|
||||
|
||||
// smooth blur color
|
||||
enum { NUMAVERAGE = 20 };
|
||||
static int PrevRed[NUMAVERAGE], AvgRed;
|
||||
static int PrevGreen[NUMAVERAGE], AvgGreen;
|
||||
static int PrevBlue[NUMAVERAGE], AvgBlue;
|
||||
static int PrevAlpha[NUMAVERAGE], AvgAlpha;
|
||||
static int Next;
|
||||
static int NumValues;
|
||||
|
||||
static void InitOnce(void);
|
||||
static void Open(RwCamera *cam);
|
||||
static void Close(void);
|
||||
static void RenderOverlayBlur(RwCamera *cam, int32 r, int32 g, int32 b, int32 a);
|
||||
static void RenderOverlaySniper(RwCamera *cam, int32 r, int32 g, int32 b, int32 a);
|
||||
static void RenderOverlayShader(RwCamera *cam, int32 r, int32 g, int32 b, int32 a);
|
||||
static void RenderMotionBlur(RwCamera *cam, uint32 blur);
|
||||
static void Render(RwCamera *cam, uint32 red, uint32 green, uint32 blue, uint32 blur, int32 type, uint32 bluralpha);
|
||||
static void SmoothColor(uint32 red, uint32 green, uint32 blue, uint32 alpha);
|
||||
static bool NeedBackBuffer(void);
|
||||
static bool NeedFrontBuffer(int32 type);
|
||||
static bool UseBlurColours(void) { return EffectSwitch != POSTFX_SIMPLE; }
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user