-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathold_xscreen.h
66 lines (42 loc) · 1.57 KB
/
old_xscreen.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/**
* This file belongs to the 'xlab' game engine.
* Copyright 2009 xfacter
* Copyright 2016 wickles
* This work is licensed under the LGPLv3
* subject to all terms as reproduced in the included LICENSE file.
*/
#pragma once
#include "xconfig.h"
#ifdef __cplusplus
extern "C" {
#endif
#define X_SCREEN_MULTIPLY (0)
#define X_SCREEN_ADD (1)
#define X_SCREEN_SUBTRACT (2)
#define X_SCREEN_REVERSE_SUBTRACT (3)
/* WHOWHOAHAOWHA ! flatmush FS effects dont seem to work with double display lists! whats up ? */
/* extremely slow, real-time use not recommended. very fun to use though! see ops above */
//void xScreenModify(int op, u8 red, u8 green, u8 blue);
/* move these to xbuffer.h? */
/* works, but could be optimized. possibly render draw buffer at smaller size for quicker rendering */
/* note: resets tex filter to no filter */
void xScreenRadialBlur(int num, float scale_inc, float rot_inc, float alpha_start);
void xScreenSimpleBlur(float alpha);
void xScreenGaussianBlur(float radius);
/* some kind of motion blur would be good */
/* cleanup function for when finished with palettes (created when functions are called for first time) */
void xScreenDestroyPalettes();
void xScreenGrayscale();
void xScreenNight();
void xScreenThermal();
void xScreenInverted();
void xScreenMonochrome(u32 color);
void xScreenDichrome(u32 light, u32 dark);
void xScreenBinary(u32 light, u32 dark, u8 threshold);
void xScreenColorReduce(u8 divisions);
void xScreenColorEnhance();
void xScreenLightEnhance();
void xScreenDepthFog(u32 color, int lowbit);
#ifdef __cplusplus
}
#endif