blob: 3aa618b991768a42db267f173f72abcc95a45b73 (
plain)
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
|
#include "scenefx/types/fx/blur_data.h"
struct blur_data blur_data_get_default(void) {
return (struct blur_data) {
.radius = 5,
.num_passes = 3,
.noise = 0.02,
.brightness = 0.9,
.contrast = 0.9,
.saturation = 1.1,
};
}
bool blur_data_should_parameters_blur_effects(struct blur_data *blur_data) {
return blur_data->brightness != 1.0f
|| blur_data->saturation != 1.0f
|| blur_data->contrast != 1.0f
|| blur_data->noise > 0.0f;
}
bool blur_data_cmp(struct blur_data *a, struct blur_data *b) {
return a->radius == b->radius &&
a->num_passes && b->num_passes &&
a->noise == b->noise &&
a->brightness == b->brightness &&
a->contrast == b->contrast &&
a->saturation == b->saturation;
}
int blur_data_calc_size(struct blur_data *blur_data) {
return pow(2, blur_data->num_passes + 1) * blur_data->radius;
}
|