$darkmode
Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
postprocess_presets.h
Go to the documentation of this file.
1 
6 #ifndef POSTPROCESS_PRESETS_H
7 #define POSTPROCESS_PRESETS_H
8 
9 #include "postprocess.h"
10 
11 #define BANDING_COMMON_BASE \
12  .active_effects = (unsigned int)POSTFX_EXPOSURE | \
13  (unsigned int)POSTFX_BANDING | \
14  (unsigned int)POSTFX_FXAA, \
15  .vignette = {.intensity = DEFAULT_VIGNETTE_INTENSITY, \
16  .smoothness = DEFAULT_VIGNETTE_SMOOTHNESS, \
17  .roundness = DEFAULT_VIGNETTE_ROUNDNESS}, \
18  .grain = {.intensity = DEFAULT_GRAIN_INTENSITY, \
19  .intensity_shadows = 1.0F, \
20  .intensity_midtones = 1.0F, \
21  .intensity_highlights = 1.0F, \
22  .shadows_max = 0.09F, \
23  .highlights_min = 0.5F, \
24  .texel_size = 1.0F}, \
25  .exposure = {.exposure = DEFAULT_EXPOSURE}, \
26  .chrom_abbr = {.strength = DEFAULT_CHROM_ABBR_STRENGTH}, \
27  .white_balance = {.temperature = DEFAULT_WB_TEMP, \
28  .tint = DEFAULT_WB_TINT}, \
29  .tonemapper = {.slope = DEFAULT_FILMIC_SLOPE, \
30  .toe = DEFAULT_FILMIC_TOE, \
31  .shoulder = DEFAULT_FILMIC_SHOULDER, \
32  .black_clip = DEFAULT_FILMIC_BLACK_CLIP, \
33  .white_clip = DEFAULT_FILMIC_WHITE_CLIP}, \
34  .bloom = {.intensity = 0.0F, \
35  .threshold = 1.0F, \
36  .soft_threshold = 0.5F, \
37  .radius = 1.0F}, \
38  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE, \
39  .focal_range = DEFAULT_DOF_FOCAL_RANGE, \
40  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE, \
41  .anamorphic_ratio = 1.0F}, \
42  .fxaa = {.subpix = DEFAULT_FXAA_SUBPIX, \
43  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD, \
44  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN}
45 
48  .active_effects = (unsigned int)POSTFX_EXPOSURE,
49  .vignette = {.intensity = DEFAULT_VIGNETTE_INTENSITY,
50  .smoothness = DEFAULT_VIGNETTE_SMOOTHNESS,
51  .roundness = DEFAULT_VIGNETTE_ROUNDNESS},
52  .grain = {.intensity = DEFAULT_GRAIN_INTENSITY,
53  .intensity_shadows = 1.0F,
54  .intensity_midtones = 1.0F,
55  .intensity_highlights = 1.0F,
56  .shadows_max = 0.09F,
57  .highlights_min = 0.5F,
58  .texel_size = 1.0F},
59  .exposure = {.exposure = DEFAULT_EXPOSURE},
60  .chrom_abbr = {.strength = DEFAULT_CHROM_ABBR_STRENGTH},
61  .white_balance = {.temperature = DEFAULT_WB_TEMP, .tint = DEFAULT_WB_TINT},
62  .color_grading = {.saturation = 1.0F,
63  .contrast = 1.0F,
64  .gamma = 1.0F,
65  .gain = 1.0F,
66  .offset = 0.0F},
67  .tonemapper = {.slope = DEFAULT_FILMIC_SLOPE,
68  .toe = DEFAULT_FILMIC_TOE,
69  .shoulder = DEFAULT_FILMIC_SHOULDER,
70  .black_clip = DEFAULT_FILMIC_BLACK_CLIP,
71  .white_clip = DEFAULT_FILMIC_WHITE_CLIP},
72  .bloom = {.intensity = 0.0F,
73  .threshold = 1.0F,
74  .soft_threshold = 0.5F,
75  .radius = 1.0F},
76  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE,
77  .focal_range = DEFAULT_DOF_FOCAL_RANGE,
78  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE,
79  .anamorphic_ratio = 1.0F},
80  .fxaa = {.subpix = DEFAULT_FXAA_SUBPIX,
81  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD,
82  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN},
83  .banding = {
84  .mode = BANDING_MODE_LINEAR,
85  .levels = DEFAULT_BANDING_LEVELS,
86  .dither_strength = 0.0F,
87  .perceptual_gamma = 1.0F,
90 
94  (unsigned int)POSTFX_VIGNETTE | (unsigned int)POSTFX_GRAIN |
95  (unsigned int)POSTFX_EXPOSURE | (unsigned int)POSTFX_COLOR_GRADING,
96  .vignette = {.intensity = 0.3F, .smoothness = 0.5F, .roundness = 1.0F},
97  .grain = {.intensity = 0.02F,
98  .intensity_shadows = 1.0F,
99  .intensity_midtones = 1.0F,
100  .intensity_highlights = 1.0F,
101  .shadows_max = 0.09F,
102  .highlights_min = 0.5F,
103  .texel_size = 1.0F},
104  .exposure = {.exposure = DEFAULT_EXPOSURE},
105  .chrom_abbr = {.strength = 0.01F},
106  .white_balance = {.temperature = DEFAULT_WB_TEMP, .tint = DEFAULT_WB_TINT},
107  .color_grading = {.saturation = 1.0F,
108  .contrast = 1.0F,
109  .gamma = 1.0F,
110  .gain = 1.0F,
111  .offset = 0.0F},
112  .tonemapper = {.slope = DEFAULT_FILMIC_SLOPE,
113  .toe = DEFAULT_FILMIC_TOE,
114  .shoulder = DEFAULT_FILMIC_SHOULDER,
115  .black_clip = DEFAULT_FILMIC_BLACK_CLIP,
116  .white_clip = DEFAULT_FILMIC_WHITE_CLIP},
117  .bloom = {.intensity = 0.02F,
118  .threshold = 1.0F,
119  .soft_threshold = 0.5F,
120  .radius = 1.0F},
121  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE,
122  .focal_range = DEFAULT_DOF_FOCAL_RANGE,
123  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE,
124  .anamorphic_ratio = 1.0F},
125  .fxaa = {.subpix = DEFAULT_FXAA_SUBPIX,
126  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD,
127  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN},
128  .banding = {
129  .mode = BANDING_MODE_LINEAR,
130  .levels = DEFAULT_BANDING_LEVELS,
131  .dither_strength = 0.0F,
132  .perceptual_gamma = 1.0F,
135 
138  .active_effects =
139  (unsigned int)POSTFX_VIGNETTE | (unsigned int)POSTFX_GRAIN |
140  (unsigned int)POSTFX_AUTO_EXPOSURE | (unsigned int)POSTFX_BLOOM |
141  (unsigned int)POSTFX_DOF | (unsigned int)POSTFX_COLOR_GRADING |
142  (unsigned int)POSTFX_MOTION_BLUR,
143  .vignette = {.intensity = 0.5F, .smoothness = 0.6F, .roundness = 0.5F},
144  .grain = {.intensity = 0.03F,
145  .intensity_shadows = 1.2F,
146  .intensity_midtones = 1.0F,
147  .intensity_highlights = 0.8F,
148  .shadows_max = 0.09F,
149  .highlights_min = 0.5F,
150  .texel_size = 1.0F},
151  .exposure = {.exposure = 1.2F},
152  .chrom_abbr = {.strength = 0.015F},
153  .white_balance = {.temperature = 6500.0F, .tint = -0.05F},
154  .color_grading = {.saturation = 1.0F,
155  .contrast = 1.0F,
156  .gamma = 1.0F,
157  .gain = 1.0F,
158  .offset = 0.0F},
159  .tonemapper = {.slope = DEFAULT_FILMIC_SLOPE,
160  .toe = DEFAULT_FILMIC_TOE,
161  .shoulder = DEFAULT_FILMIC_SHOULDER,
162  .black_clip = DEFAULT_FILMIC_BLACK_CLIP,
163  .white_clip = DEFAULT_FILMIC_WHITE_CLIP},
164  .bloom = {.intensity = 0.04F,
165  .threshold = 1.0F,
166  .soft_threshold = 0.5F,
167  .radius = 1.0F},
168  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE,
169  .focal_range = DEFAULT_DOF_FOCAL_RANGE,
170  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE,
171  .anamorphic_ratio = 1.0F},
172  .fxaa = {.subpix = DEFAULT_FXAA_SUBPIX,
173  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD,
174  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN},
175  .banding = {
176  .mode = BANDING_MODE_LINEAR,
177  .levels = DEFAULT_BANDING_LEVELS,
178  .dither_strength = 0.0F,
179  .perceptual_gamma = 1.0F,
182 
185  .active_effects =
186  (unsigned int)POSTFX_VIGNETTE | (unsigned int)POSTFX_GRAIN |
187  (unsigned int)POSTFX_CHROM_ABBR | (unsigned int)POSTFX_EXPOSURE |
188  (unsigned int)POSTFX_COLOR_GRADING,
189  .vignette = {.intensity = 0.7F, .smoothness = 0.8F, .roundness = 1.0F},
190  .grain = {.intensity = 0.06F,
191  .intensity_shadows = 1.5F,
192  .intensity_midtones = 1.0F,
193  .intensity_highlights = 0.5F,
194  .shadows_max = 0.15F,
195  .highlights_min = 0.6F,
196  .texel_size = 1.5F},
197  .exposure = {.exposure = 0.9F},
198  .chrom_abbr = {.strength = 0.02F},
199  .white_balance = {.temperature = 5500.0F, .tint = 0.05F},
200  .color_grading = {.saturation = 0.8F,
201  .contrast = 1.0F,
202  .gamma = 1.0F,
203  .gain = 1.0F,
204  .offset = 0.0F},
205  .tonemapper = {.slope = DEFAULT_FILMIC_SLOPE,
206  .toe = DEFAULT_FILMIC_TOE,
207  .shoulder = DEFAULT_FILMIC_SHOULDER,
208  .black_clip = DEFAULT_FILMIC_BLACK_CLIP,
209  .white_clip = DEFAULT_FILMIC_WHITE_CLIP},
210  .bloom = {.intensity = 0.0F,
211  .threshold = 1.0F,
212  .soft_threshold = 0.5F,
213  .radius = 1.0F},
214  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE,
215  .focal_range = DEFAULT_DOF_FOCAL_RANGE,
216  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE,
217  .anamorphic_ratio = 1.0F},
218  .fxaa = {.subpix = DEFAULT_FXAA_SUBPIX,
219  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD,
220  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN},
221  .banding = {
222  .mode = BANDING_MODE_LINEAR,
223  .levels = DEFAULT_BANDING_LEVELS,
224  .dither_strength = 0.0F,
225  .perceptual_gamma = 1.0F,
228 
231  .active_effects =
232  (unsigned int)POSTFX_COLOR_GRADING | (unsigned int)POSTFX_BLOOM,
233  .vignette = {.intensity = DEFAULT_VIGNETTE_INTENSITY,
234  .smoothness = DEFAULT_VIGNETTE_SMOOTHNESS,
235  .roundness = DEFAULT_VIGNETTE_ROUNDNESS},
236  .grain = {.intensity = DEFAULT_GRAIN_INTENSITY,
237  .intensity_shadows = 1.0F,
238  .intensity_midtones = 1.0F,
239  .intensity_highlights = 1.0F,
240  .shadows_max = 0.09F,
241  .highlights_min = 0.5F,
242  .texel_size = 1.0F},
243  .exposure = {.exposure = DEFAULT_EXPOSURE},
244  .chrom_abbr = {.strength = DEFAULT_CHROM_ABBR_STRENGTH},
245  .white_balance = {.temperature = 7500.0F, .tint = 0.2F},
246  .color_grading = {.saturation = 0.5F,
247  .contrast = 1.2F,
248  .gamma = 0.9F,
249  .gain = 1.1F,
250  .offset = 0.02F},
251  .tonemapper = {.slope = DEFAULT_FILMIC_SLOPE,
252  .toe = DEFAULT_FILMIC_TOE,
253  .shoulder = DEFAULT_FILMIC_SHOULDER,
254  .black_clip = DEFAULT_FILMIC_BLACK_CLIP,
255  .white_clip = DEFAULT_FILMIC_WHITE_CLIP},
256  .bloom = {.intensity = 0.2F,
257  .threshold = 0.8F,
258  .soft_threshold = 0.5F,
259  .radius = 1.0F},
260  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE,
261  .focal_range = DEFAULT_DOF_FOCAL_RANGE,
262  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE,
263  .anamorphic_ratio = 1.0F},
264  .fxaa = {.subpix = DEFAULT_FXAA_SUBPIX,
265  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD,
266  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN},
267  .banding = {
268  .mode = BANDING_MODE_LINEAR,
269  .levels = DEFAULT_BANDING_LEVELS,
270  .dither_strength = 0.0F,
271  .perceptual_gamma = 1.0F,
274 
277  .active_effects = (unsigned int)POSTFX_COLOR_GRADING,
278  .vignette = {.intensity = DEFAULT_VIGNETTE_INTENSITY,
279  .smoothness = DEFAULT_VIGNETTE_SMOOTHNESS,
280  .roundness = DEFAULT_VIGNETTE_ROUNDNESS},
281  .grain = {.intensity = DEFAULT_GRAIN_INTENSITY,
282  .intensity_shadows = 1.0F,
283  .intensity_midtones = 1.0F,
284  .intensity_highlights = 1.0F,
285  .shadows_max = 0.09F,
286  .highlights_min = 0.5F,
287  .texel_size = 1.0F},
288  .exposure = {.exposure = DEFAULT_EXPOSURE},
289  .chrom_abbr = {.strength = DEFAULT_CHROM_ABBR_STRENGTH},
290  .white_balance = {.temperature = DEFAULT_WB_TEMP, .tint = DEFAULT_WB_TINT},
291  .color_grading = {.saturation = 0.0F,
292  .contrast = 1.5F,
293  .gamma = 1.0F,
294  .gain = 1.0F,
295  .offset = 0.0F},
296  .tonemapper = {.slope = DEFAULT_FILMIC_SLOPE,
297  .toe = DEFAULT_FILMIC_TOE,
298  .shoulder = DEFAULT_FILMIC_SHOULDER,
299  .black_clip = DEFAULT_FILMIC_BLACK_CLIP,
300  .white_clip = DEFAULT_FILMIC_WHITE_CLIP},
301  .bloom = {.intensity = 0.0F,
302  .threshold = 1.0F,
303  .soft_threshold = 0.5F,
304  .radius = 1.0F},
305  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE,
306  .focal_range = DEFAULT_DOF_FOCAL_RANGE,
307  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE,
308  .anamorphic_ratio = 1.0F},
309  .fxaa = {.subpix = DEFAULT_FXAA_SUBPIX,
310  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD,
311  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN},
312  .banding = {
313  .mode = BANDING_MODE_LINEAR,
314  .levels = DEFAULT_BANDING_LEVELS,
315  .dither_strength = 0.0F,
316  .perceptual_gamma = 1.0F,
319 
323  .color_grading = {.saturation = 1.5F,
324  .contrast = 1.5F,
325  .gamma = 1.0F,
326  .gain = 1.0F,
327  .offset = 0.0F},
328  .banding = {.mode = BANDING_MODE_LINEAR,
329  .levels = 4.0F,
330  .dither_strength = 0.0F,
331  .perceptual_gamma = 1.0F,
332  .channel_levels = {4.0F, 4.0F, 4.0F}}};
333 
337  .color_grading = {.saturation = 0.5F,
338  .contrast = 1.3F,
339  .gamma = 1.1F,
340  .gain = 1.0F,
341  .offset = 0.0F},
342  .banding = {.mode = BANDING_MODE_DITHERED,
343  .levels = 8.0F,
344  .dither_strength = 1.5F,
345  .perceptual_gamma = 1.0F,
346  .channel_levels = {8.0F, 8.0F, 8.0F}}};
347 
351  .color_grading = {.saturation = 1.0F,
352  .contrast = 1.0F,
353  .gamma = 1.0F,
354  .gain = 1.0F,
355  .offset = 0.0F},
356  .banding = {.mode = BANDING_MODE_PERCEPTUAL,
357  .levels = 12.0F,
358  .dither_strength = 0.0F,
359  .perceptual_gamma = 2.2F,
360  .channel_levels = {12.0F, 12.0F, 12.0F}}};
361 
365  .color_grading = {.saturation = 1.0F,
366  .contrast = 1.0F,
367  .gamma = 1.0F,
368  .gain = 1.0F,
369  .offset = 0.0F},
370  .banding = {.mode = BANDING_MODE_CHANNEL,
371  .levels = 256.0F,
372  .dither_strength = 0.0F,
373  .perceptual_gamma = 1.0F,
374  .channel_levels = {8.0F, 8.0F, 4.0F}}};
375 
379  .color_grading = {.saturation = 1.0F,
380  .contrast = 1.0F,
381  .gamma = 1.0F,
382  .gain = 1.0F,
383  .offset = 0.0F},
384  .banding = {.mode = BANDING_MODE_LUMINANCE,
385  .levels = 6.0F,
386  .dither_strength = 0.0F,
387  .perceptual_gamma = 1.0F,
388  .channel_levels = {0.1F, 0.4F, 0.9F}}};
389 
398  .active_effects =
399  (unsigned int)POSTFX_VIGNETTE | (unsigned int)POSTFX_GRAIN |
400  (unsigned int)POSTFX_EXPOSURE | (unsigned int)POSTFX_BLOOM |
401  (unsigned int)POSTFX_COLOR_GRADING | (unsigned int)POSTFX_CHROM_ABBR |
402  (unsigned int)POSTFX_FXAA | (unsigned int)POSTFX_FOG,
403  /* Vignette: Subtle oval, soft falloff */
404  .vignette = {.intensity = 0.45F, .smoothness = 0.7F, .roundness = 0.6F},
405  /* Grain: Film-like noise, heavier in shadows */
406  .grain = {.intensity = 0.25F,
407  .intensity_shadows = 1.3F,
408  .intensity_midtones = 1.0F,
409  .intensity_highlights = 0.4F,
410  .shadows_max = 0.15F,
411  .highlights_min = 0.55F,
412  .texel_size = 2.0F},
413  /* Exposure: Slightly moody/underexposed */
414  .exposure = {.exposure = 0.85F},
415  /* Chromatic Aberration: Barely visible, organic feel */
416  .chrom_abbr = {.strength = 0.003F}, /* White Balance: Colder teal push */
417  .white_balance = {.temperature = 4050.0F, .tint = -0.04F},
418  /* Color Grading: Noir look with pronounced milky shadows (Lift) */
419  .color_grading = {.saturation = 0.88F,
420  .contrast = 1.20F,
421  .gamma = 1.05F,
422  .gain = 1.0F,
423  .offset = 0.0F,
424  .lift = 0.045F},
425  /* Tonemapper: Filmic with lifted toe, compressed shoulder */
426  .tonemapper = {.slope = 0.88F,
427  .toe = 0.18F,
428  .shoulder = 0.45F,
429  .black_clip = 0.0F,
430  .white_clip = 0.01F},
431  /* Bloom: Atmospheric glow (Soft & Dynamic) */
432  .bloom = {.intensity = 0.09F,
433  .threshold = 0.80F,
434  .soft_threshold = 0.55F,
435  .radius = 2.4F},
436  /* DoF: Disabled (fog handles depth attenuation) */
437  .dof = {.focal_distance = DEFAULT_DOF_FOCAL_DISTANCE,
438  .focal_range = DEFAULT_DOF_FOCAL_RANGE,
439  .bokeh_scale = DEFAULT_DOF_BOKEH_SCALE,
440  .anamorphic_ratio = 1.0F},
441  /* FXAA: Low sub-pixel to keep grain sharp */
442  .fxaa = {.subpix = 0.45F,
443  .edge_threshold = DEFAULT_FXAA_EDGE_THRESHOLD,
444  .edge_threshold_min = DEFAULT_FXAA_EDGE_THRESHOLD_MIN},
445  .banding = {.mode = BANDING_MODE_LINEAR,
446  .levels = DEFAULT_BANDING_LEVELS,
447  .dither_strength = 0.0F,
448  .perceptual_gamma = 1.0F,
449  .channel_levels = {DEFAULT_BANDING_LEVELS,
452  /* Fog: More visible deep cold haze */
453  .fog = {.density = 0.022F,
454  .start = 3.5F,
455  .height_falloff = 0.018F,
456  .color = {0.10F, 0.16F, 0.22F}}};
457 
466  .active_effects =
467  (unsigned int)POSTFX_VIGNETTE | (unsigned int)POSTFX_GRAIN |
468  (unsigned int)POSTFX_AUTO_EXPOSURE | (unsigned int)POSTFX_BLOOM |
469  (unsigned int)POSTFX_COLOR_GRADING | (unsigned int)POSTFX_FXAA |
470  (unsigned int)POSTFX_DOF | (unsigned int)POSTFX_LUT3D,
471  /* Vignette: Subtle and natural */
472  .vignette = {.intensity = 0.35F, .smoothness = 0.65F, .roundness = 0.8F},
473  /* Grain: Extremely fine, organic 35mm feel */
474  .grain = {.intensity = 0.018F,
475  .intensity_shadows = 1.1F,
476  .intensity_midtones = 1.0F,
477  .intensity_highlights = 0.5F,
478  .shadows_max = 0.1F,
479  .highlights_min = 0.55F,
480  .texel_size = 1.2F},
481  /* Exposure: Calibrated for middle gray (18%) */
482  .exposure = {.exposure = 1.0F},
483  /* White Balance: Neutral D65 daylight */
484  .white_balance = {.temperature = 6500.0F, .tint = 0.0F},
485  /* Color Grading: Vibrant but natural, lifted shadows */
486  .color_grading = {.saturation = 1.04F,
487  .contrast = 1.02F,
488  .gamma = 1.0F,
489  .gain = 1.0F,
490  .offset = 0.0F,
491  .lift = 0.015F},
492  /* Tonemapper: S-Cinetone inspired soft roll-off */
493  .tonemapper = {.slope = 0.92F,
494  .toe = 0.12F,
495  .shoulder = 0.38F,
496  .black_clip = 0.0F,
497  .white_clip = 0.005F},
498  /* Bloom: Subtle highlight diffusion */
499  .bloom = {.intensity = 0.035F,
500  .threshold = 0.85F,
501  .soft_threshold = 0.5F,
502  .radius = 1.8F},
503  /* Depth of Field: Simulating 35/50mm f/1.8 on FF (with 2.0x Anamorphic) */
504  .dof = {.focal_distance = 16.0F,
505  .focal_range = 4.0F,
506  .bokeh_scale = 12.0F,
507  .anamorphic_ratio = 2.0F},
508  .fxaa = {.subpix = 0.75F,
509  .edge_threshold = 0.125F,
510  .edge_threshold_min = 0.0625F},
511  .banding = {.mode = BANDING_MODE_LINEAR,
512  .levels = 256.0F,
513  .dither_strength = 0.0F,
514  .perceptual_gamma = 1.0F,
515  .channel_levels = {256.0F, 256.0F, 256.0F}},
516  .fog = {.density = 0.0F,
517  .start = 10.0F,
518  .height_falloff = 0.1F,
519  .color = {0.5F, 0.6F, 0.7F}},
520  /* 3D LUT (Gamut Mapping) */
521  .lut3d = {.intensity = 1.0F, .texture = 0, .size = 0}};
522 
523 #endif /* POSTPROCESS_PRESETS_H */
High-level post-processing pipeline and effects.
@ POSTFX_AUTO_EXPOSURE
Definition: postprocess.h:90
@ POSTFX_MOTION_BLUR
Definition: postprocess.h:94
@ POSTFX_COLOR_GRADING
Definition: postprocess.h:86
@ POSTFX_GRAIN
Definition: postprocess.h:82
@ POSTFX_FXAA
Definition: postprocess.h:97
@ POSTFX_DOF
Definition: postprocess.h:88
@ POSTFX_BLOOM
Definition: postprocess.h:85
@ POSTFX_LUT3D
Definition: postprocess.h:106
@ POSTFX_EXPOSURE
Definition: postprocess.h:83
@ POSTFX_FOG
Definition: postprocess.h:104
@ POSTFX_VIGNETTE
Definition: postprocess.h:81
@ POSTFX_CHROM_ABBR
Definition: postprocess.h:84
#define DEFAULT_FILMIC_SHOULDER
Definition: postprocess.h:72
@ BANDING_MODE_DITHERED
Definition: postprocess.h:206
@ BANDING_MODE_LINEAR
Definition: postprocess.h:205
@ BANDING_MODE_PERCEPTUAL
Definition: postprocess.h:207
@ BANDING_MODE_LUMINANCE
Definition: postprocess.h:209
@ BANDING_MODE_CHANNEL
Definition: postprocess.h:208
#define DEFAULT_VIGNETTE_SMOOTHNESS
Definition: postprocess.h:29
#define DEFAULT_FILMIC_SLOPE
Definition: postprocess.h:70
#define DEFAULT_FILMIC_BLACK_CLIP
Definition: postprocess.h:73
#define DEFAULT_DOF_BOKEH_SCALE
Definition: postprocess.h:50
#define DEFAULT_FXAA_EDGE_THRESHOLD
Definition: postprocess.h:44
#define DEFAULT_VIGNETTE_INTENSITY
Definition: postprocess.h:28
#define DEFAULT_CHROM_ABBR_STRENGTH
Definition: postprocess.h:36
#define DEFAULT_GRAIN_INTENSITY
Definition: postprocess.h:31
#define DEFAULT_DOF_FOCAL_RANGE
Definition: postprocess.h:49
#define DEFAULT_VIGNETTE_ROUNDNESS
Definition: postprocess.h:30
#define DEFAULT_DOF_FOCAL_DISTANCE
Definition: postprocess.h:48
#define DEFAULT_FXAA_EDGE_THRESHOLD_MIN
Definition: postprocess.h:45
#define DEFAULT_BANDING_LEVELS
Definition: postprocess.h:55
#define DEFAULT_EXPOSURE
Definition: postprocess.h:35
#define DEFAULT_FXAA_SUBPIX
Definition: postprocess.h:43
#define DEFAULT_WB_TINT
Definition: postprocess.h:67
#define DEFAULT_FILMIC_WHITE_CLIP
Definition: postprocess.h:74
#define DEFAULT_WB_TEMP
Definition: postprocess.h:66
#define DEFAULT_FILMIC_TOE
Definition: postprocess.h:71
static const PostProcessPreset PRESET_VINTAGE
Warm, grainy look.
Definition: postprocess_presets.h:184
#define BANDING_COMMON_BASE
Definition: postprocess_presets.h:11
static const PostProcessPreset PRESET_BLUEPRINT
Art style: Blueprint / Hologram.
Definition: postprocess_presets.h:377
static const PostProcessPreset PRESET_MATRIX
Cool, green-tinted look.
Definition: postprocess_presets.h:230
static const PostProcessPreset PRESET_DEFAULT
Default balanced settings.
Definition: postprocess_presets.h:47
static const PostProcessPreset PRESET_ANALOG
Art style: Perceptual (Analog-like).
Definition: postprocess_presets.h:349
static const PostProcessPreset PRESET_POSTERIZED
Art style: Posterized.
Definition: postprocess_presets.h:321
static const PostProcessPreset PRESET_CINEMATIC
Rich, high-contrast look.
Definition: postprocess_presets.h:137
static const PostProcessPreset PRESET_CHANNEL_GFX
Art style: Channel (VGA/CGA-like).
Definition: postprocess_presets.h:363
static const PostProcessPreset PRESET_SUBTLE
Subtle adjustments.
Definition: postprocess_presets.h:92
static const PostProcessPreset PRESET_BW_CONTRAST
High-contrast B&W.
Definition: postprocess_presets.h:276
static const PostProcessPreset PRESET_NORDIC_NOIR
Nordic Noir: Foggy neon-lit night with teal-orange split toning.
Definition: postprocess_presets.h:397
static const PostProcessPreset PRESET_SONY_A7SIII
Sony Alpha 7S III: Professional cinematic look (S-Cinetone/S-Log3 style).
Definition: postprocess_presets.h:465
static const PostProcessPreset PRESET_RETRO
Art style: Retro Computing (Dithered).
Definition: postprocess_presets.h:335
Snapshot of every configurable parameter in the pipeline.
Definition: postprocess.h:556
unsigned int active_effects
Definition: postprocess.h:557