diff options
author | 2015-10-10 17:02:51 +0200 | |
---|---|---|
committer | 2015-10-10 17:02:51 +0200 | |
commit | 534cd86c17b10643deb65d9d5c8ab4df3ae011fb (patch) | |
tree | 9e202858d90c3337bf3ab143452e312e6d38fa8d /hlsl | |
parent | 81c15decf84ed406812e1078191d1aa553abbc98 (diff) |
Bloom Overdrive
- added experimental bloom overdrive effect and options, this effect
allows to overdrive pure colors like red, green and blue to become more
brighter
- added lcd.ini to parse_standard_inis()
Diffstat (limited to 'hlsl')
-rw-r--r-- | hlsl/bloom.fx | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/hlsl/bloom.fx b/hlsl/bloom.fx index 0b3a230bf5b..0bd981ae0e7 100644 --- a/hlsl/bloom.fx +++ b/hlsl/bloom.fx @@ -240,6 +240,8 @@ uniform float4 Level0123Weight; uniform float4 Level4567Weight; uniform float3 Level89AWeight; +uniform float3 OverdriveWeight; + float3 GetNoiseFactor(float3 n, float random) { // smaller n become more noisy @@ -284,6 +286,15 @@ float4 ps_main(PS_INPUT Input) : COLOR texel9 + texelA); + float3 bloomOverdrive = max(0.0f, texel0 + bloom - 1.0f) * OverdriveWeight; + + bloom.r += bloomOverdrive.g * 0.5f; + bloom.r += bloomOverdrive.b * 0.5f; + bloom.g += bloomOverdrive.r * 0.5f; + bloom.g += bloomOverdrive.b * 0.5f; + bloom.b += bloomOverdrive.r * 0.5f; + bloom.b += bloomOverdrive.g * 0.5f; + float2 NoiseCoord = Input.TexCoord01.xy; float3 NoiseFactor = GetNoiseFactor(bloom, random(NoiseCoord)); @@ -291,7 +302,7 @@ float4 ps_main(PS_INPUT Input) : COLOR } //----------------------------------------------------------------------------- -// Downsample Effect +// Bloom Effect //----------------------------------------------------------------------------- technique TestTechnique |