Unravel Engine C++ Reference
Loading...
Searching...
No Matches
tonemapping_component.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
base/basetypes.hpp
>
4
#include <
engine/ecs/components/basic_component.h
>
5
#include <
engine/rendering/pipeline/passes/tonemapping_pass.h
>
6
7
namespace
unravel
8
{
9
10
class
tonemapping_component
:
public
component_crtp
<tonemapping_component>
11
{
12
public
:
14
bool
enabled
=
true
;
15
17
tonemapping_pass::settings
settings
{};
18
20
static
void
merge_into
(
tonemapping_pass::settings
& result,
21
const
tonemapping_pass::settings
& from,
22
float
contribution
,
23
bool
is_first)
24
{
25
if
(is_first)
26
{
27
result = from;
28
return
;
29
}
30
result.
exposure
= std::lerp(result.
exposure
, from.
exposure
,
contribution
);
31
if
(
contribution
>= 0.5f)
32
{
33
result.
method
= from.
method
;
34
}
35
}
36
};
37
38
}
// namespace unravel
basic_component.h
unravel::tonemapping_component
Definition
tonemapping_component.h:11
unravel::tonemapping_component::merge_into
static void merge_into(tonemapping_pass::settings &result, const tonemapping_pass::settings &from, float contribution, bool is_first)
Merges this component's settings into result. For first contribution, copies; otherwise lerps.
Definition
tonemapping_component.h:20
unravel::tonemapping_component::enabled
bool enabled
Whether tonemapping is enabled.
Definition
tonemapping_component.h:14
basetypes.hpp
unravel
Definition
crash.cpp:21
unravel::component_crtp
CRTP (Curiously Recurring Template Pattern) base structure for components.
Definition
basic_component.h:91
unravel::settings
Definition
settings.h:21
unravel::tonemapping_pass::settings
Definition
tonemapping_pass.h:34
unravel::tonemapping_pass::settings::method
tonemapping_method method
Definition
tonemapping_pass.h:36
unravel::tonemapping_pass::settings::exposure
float exposure
Definition
tonemapping_pass.h:35
tonemapping_pass.h
contribution
float contribution
Definition
volume_resolver.cpp:26
engine
engine
rendering
ecs
components
tonemapping_component.h
Generated by
1.12.0