Quantum Phenomena Explorer
7.9.8
Interactive quantum-phenomena Explorer Tutor — source documentation
Loading...
Searching...
No Matches
quantumgraphicspreset.cpp
Go to the documentation of this file.
1
/**
2
* @file quantumgraphicspreset.cpp
3
* @brief Implements the quantumgraphicspreset visualization component used by QPE.
4
* @ingroup qpe_graphics
5
*
6
* Source: @c graphics/renderer/quantumgraphicspreset.cpp. This file is part of Quantum Phenomena Explorer (QPE),
7
* maintained by Officina Turini. See LICENSE_IT.txt / LICENSE.txt for the
8
* QPE freeware source-available terms and THIRD_PARTY_NOTICES.txt for
9
* third-party components.
10
*/
11
12
#include "
quantumgraphicspreset.h
"
13
14
namespace
qpe
{
15
16
QuantumGraphicsPresetValues
QuantumGraphicsPreset::values
(
QuantumGraphicsPresetKind
kind)
17
{
18
QuantumGraphicsPresetValues
preset;
19
20
switch
(kind) {
21
case
QuantumGraphicsPresetKind::Scientific
:
22
// Quantitative reference view: linear transfer, no HDR glow and no
23
// highlight compression beyond the framebuffer's ordinary display.
24
preset.
paletteIndex
= 0;
// Scientific
25
preset.
displayScaleIndex
= 0;
// Linear
26
preset.
exposureEv
= 0.0;
27
preset.
gamma
= 1.0;
28
preset.
postPreviewIndex
= 0;
// Scene
29
preset.
brightThreshold
= 0.72;
30
preset.
brightSoftKnee
= 0.08;
31
preset.
blurSpread
= 2.0;
32
preset.
bloomStrength
= 0.0;
33
preset.
toneMapIndex
= 0;
// Off / Clip
34
break
;
35
36
case
QuantumGraphicsPresetKind::Presentation
:
37
// Readable live-demo view: preserve a mostly linear scene, add only a
38
// restrained highlight halo and use ACES to protect bright cores.
39
preset.
paletteIndex
= 0;
// Scientific
40
preset.
displayScaleIndex
= 0;
// Linear
41
preset.
exposureEv
= 0.25;
42
preset.
gamma
= 1.0;
43
preset.
postPreviewIndex
= 3;
// Bloom
44
preset.
brightThreshold
= 0.72;
45
preset.
brightSoftKnee
= 0.08;
46
preset.
blurSpread
= 2.0;
47
preset.
bloomStrength
= 0.65;
48
preset.
toneMapIndex
= 2;
// ACES Filmic
49
break
;
50
51
case
QuantumGraphicsPresetKind::Cinematic
:
52
default
:
53
// Demonstration / "wow" view: reveal weak structures, broaden the
54
// extracted highlights and use a stronger HDR glow with ACES.
55
preset.
paletteIndex
= 0;
// Scientific
56
preset.
displayScaleIndex
= 1;
// Log (~3 decades)
57
preset.
exposureEv
= -1.0;
58
preset.
gamma
= 1.15;
59
preset.
postPreviewIndex
= 3;
// Bloom
60
preset.
brightThreshold
= 0.62;
61
preset.
brightSoftKnee
= 0.12;
62
preset.
blurSpread
= 3.25;
63
preset.
bloomStrength
= 1.80;
64
preset.
toneMapIndex
= 2;
// ACES Filmic
65
break
;
66
}
67
68
return
preset;
69
}
70
71
const
char
*
QuantumGraphicsPreset::name
(
QuantumGraphicsPresetKind
kind)
72
{
73
switch
(kind) {
74
case
QuantumGraphicsPresetKind::Scientific
:
75
return
"Scientific"
;
76
case
QuantumGraphicsPresetKind::Presentation
:
77
return
"Presentation"
;
78
case
QuantumGraphicsPresetKind::Cinematic
:
79
default
:
80
return
"Cinematic"
;
81
}
82
}
83
84
}
// namespace qpe
qpe::QuantumGraphicsPreset::values
static QuantumGraphicsPresetValues values(QuantumGraphicsPresetKind kind)
Returns values.
Definition
quantumgraphicspreset.cpp:16
qpe::QuantumGraphicsPreset::name
static const char * name(QuantumGraphicsPresetKind kind)
Returns name.
Definition
quantumgraphicspreset.cpp:71
qpe
Definition
mainwindow.h:76
qpe::QuantumGraphicsPresetKind
QuantumGraphicsPresetKind
Enumerates the supported Quantum Graphics Preset Kind values.
Definition
quantumgraphicspreset.h:22
qpe::QuantumGraphicsPresetKind::Scientific
@ Scientific
qpe::QuantumGraphicsPresetKind::Cinematic
@ Cinematic
qpe::QuantumGraphicsPresetKind::Presentation
@ Presentation
quantumgraphicspreset.h
Declares the quantumgraphicspreset visualization component used by QPE.
qpe::QuantumGraphicsPresetValues
Data structure used by the Quantum Graphics Preset Values component.
Definition
quantumgraphicspreset.h:34
qpe::QuantumGraphicsPresetValues::brightSoftKnee
double brightSoftKnee
Definition
quantumgraphicspreset.h:41
qpe::QuantumGraphicsPresetValues::exposureEv
double exposureEv
Definition
quantumgraphicspreset.h:37
qpe::QuantumGraphicsPresetValues::gamma
double gamma
Definition
quantumgraphicspreset.h:38
qpe::QuantumGraphicsPresetValues::bloomStrength
double bloomStrength
Definition
quantumgraphicspreset.h:43
qpe::QuantumGraphicsPresetValues::paletteIndex
int paletteIndex
Definition
quantumgraphicspreset.h:35
qpe::QuantumGraphicsPresetValues::blurSpread
double blurSpread
Definition
quantumgraphicspreset.h:42
qpe::QuantumGraphicsPresetValues::postPreviewIndex
int postPreviewIndex
Definition
quantumgraphicspreset.h:39
qpe::QuantumGraphicsPresetValues::toneMapIndex
int toneMapIndex
Definition
quantumgraphicspreset.h:44
qpe::QuantumGraphicsPresetValues::brightThreshold
double brightThreshold
Definition
quantumgraphicspreset.h:40
qpe::QuantumGraphicsPresetValues::displayScaleIndex
int displayScaleIndex
Definition
quantumgraphicspreset.h:36
graphics
renderer
quantumgraphicspreset.cpp
Generated by
1.12.0