Please use english language
It is currently 24 Jan 2017, 11:08

All times are UTC





Post new topic Reply to topic  [ 8 posts ] 
Author Message
PostPosted: 11 Jan 2017, 12:50 
Offline

Joined: 05 Jan 2016, 08:14
Posts: 17
I've been working on another ENB (Fallout 3, v0.278) and this time I decided to enable APPLYGAMECOLORCORRECTION. When I did, I started seeing hash marks around objects that reflect or emit light. Here are two shots of the moon from Fallout 3, the first is with color correction enabled (note the hashes) and the second is with it disabled (hashes are gone).

Image

Image

Has anyone encountered this before? And if so, how did you fix it (other than disabling color correction)?

I'm using an AMD card and I've never had a problem with it before. Is this something unique to AMD cards? Or maybe its something in an ini file?


Top
 Profile  
 
Tomoko
PostPosted: 11 Jan 2017, 14:54 
Offline
*blah-blah-blah maniac*
User avatar

Joined: 27 Dec 2011, 08:53
Posts: 10850
Location: St.Petersburg
It's not AMD related issue, but have no idea what causing it, how color correction can affect or produce it.

_________________
Core i5-4690K 3.5 GHz, 16 Gb ram, GeForce 650 Ti 2 Gb, X-Fi Xtreme Music, WinXP/Win7
I am INFP, not the brutal, godamnit.


Top
 Profile  
 
PostPosted: 11 Jan 2017, 15:42 
Offline
*blah-blah-blah maniac*
User avatar

Joined: 27 Jan 2012, 13:42
Posts: 1892
Low-res bloom?

_________________
Smoking Torches and Candles
Dark Dungeons for ENB
Particle and Subsurface Scattering Patches for ENB (updated 11/01/2017)
flickr; twitter


Top
 Profile  
 
PostPosted: 11 Jan 2017, 22:52 
Offline

Joined: 05 Jan 2016, 08:14
Posts: 17
Thought that about bloom. I did add a line to preserve ENB bloom and adjusted the existing line accordingly (commented out). But even with ENB bloom disabled it is still there. I have not tried it with a custom bloom shader, though.

Here is what I've tested thus far to try and find the source of the problem:

    1. Updated vid card drivers to latest release (vid card is R9 390 w/ 8GB)
    2. Rolled back vid card drivers to crimson, then pre-crimson
    3. Used unmodified fallout.ini and falloutprefs.ini files
    4. Disabled/enabled compression, x64, fix transparency bugs in enblocal.ini
    5. Commented out all changes made to enbeffect.fx file, one change at a time
    6. Disabled ENB bloom

Regardless of what changes I make as outlined above, the problem persists as long as I have color correction enabled. :?

================

Spent the afternoon checking everything, including the palettes I've made. I'm using HDR in the shader code. Is it that you shouldn't use color correction with HDR?


Top
 Profile  
 
PostPosted: 12 Jan 2017, 07:08 
Offline
*blah-blah-blah maniac*
User avatar

Joined: 27 Jan 2012, 13:42
Posts: 1892
Have you tested whether you can make the issue visible without using AGCC by increasing brightness, modifying gamma etc.?

Also, can you look up the line where original bloom is applied (if there's one, I think there should be - never played FO3)?

_________________
Smoking Torches and Candles
Dark Dungeons for ENB
Particle and Subsurface Scattering Patches for ENB (updated 11/01/2017)
flickr; twitter


Top
 Profile  
 
PostPosted: 12 Jan 2017, 08:51 
Offline

Joined: 05 Jan 2016, 08:14
Posts: 17
@mindflux

Hi! While I don't mean to be tedious in my reply, here's where I'm at with the enbeffect.fx file. When I started putting it together I tried to keep to the 'less is more' philosophy (I'm still learning about shaders). I started with expanding on some work Boris did a few years back when he separated LDR controllers into night and day. I simply added LDR for interior, and then the gui spinners. Here's the code:

Code:
float     ECCBrightness=lerp( lerp(ECCBrightnessNight, ECCBrightnessDay, ENightDayFactor), ECCBrightnessInterior, EInteriorFactor);
float   ECCGamma=lerp( lerp(ECCGammaNight, ECCGammaDay, ENightDayFactor), ECCGammaInterior, EInteriorFactor);
float     ECCSaturation=lerp( lerp(ECCSaturationNight, ECCSaturationDay, ENightDayFactor), ECCSaturationInterior, EInteriorFactor);
float     ECCInBlack=lerp( lerp(ECCInBlackNight, ECCInBlackDay, ENightDayFactor), ECCInBlackInterior, EInteriorFactor);
float     ECCOutBlack=lerp( lerp(ECCOutBlackNight, ECCOutBlackDay, ENightDayFactor), ECCOutBlackInterior, EInteriorFactor);
float     ECCContrast=lerp( lerp(ECCContrastNight, ECCContrastDay, ENightDayFactor), ECCContrastInterior, EInteriorFactor);
float     ECCInWhite=lerp( lerp(ECCInWhiteNight, ECCInWhiteDay, ENightDayFactor), ECCInWhiteInterior, EInteriorFactor);
float     ECCOutWhite=lerp( lerp(ECCOutWhiteNight, ECCOutWhiteDay, ENightDayFactor), ECCOutWhiteInterior, EInteriorFactor);
float     ECCContrastGrayLevel=lerp( lerp(ECCContrastGrayLevelNight, ECCContrastGrayLevelDay, ENightDayFactor), ECCContrastGrayLevelInterior, EInteriorFactor);
float     ECCDesaturateShadows=lerp( lerp(ECCDesaturateShadowsNight, ECCDesaturateShadowsDay, ENightDayFactor), ECCDesaturateShadowsInterior, EInteriorFactor);
float3   ECCChannelMixerR=lerp( lerp(ECCChannelMixerRNight, ECCChannelMixerRDay, ENightDayFactor), ECCChannelMixerRInterior, EInteriorFactor);
float3   ECCChannelMixerG=lerp( lerp(ECCChannelMixerGNight, ECCChannelMixerGDay, ENightDayFactor), ECCChannelMixerGInterior, EInteriorFactor);
float3   ECCChannelMixerB=lerp( lerp(ECCChannelMixerBNight, ECCChannelMixerBDay, ENightDayFactor), ECCChannelMixerBInterior, EInteriorFactor);
float3   ECCColorBalanceHighlights=lerp( lerp(ECCColorBalanceHighlightsNight, ECCColorBalanceHighlightsDay, ENightDayFactor), ECCColorBalanceHighlightsInterior, EInteriorFactor);
float3   ECCColorBalanceShadows=lerp( lerp(ECCColorBalanceShadowsNight, ECCColorBalanceShadowsDay, ENightDayFactor), ECCColorBalanceShadowsInterior, EInteriorFactor);

That was easy enough, so I did the same to the posprocess code and added gui spinners for that as well:

Code:
float newEAdaptationMinV2=lerp( lerp(EAdaptationMinV2Night, EAdaptationMinV2Day, ENightDayFactor), EAdaptationMinV2Interior, EInteriorFactor );
float newEAdaptationMaxV2=lerp( lerp(EAdaptationMaxV2Night, EAdaptationMaxV2Day, ENightDayFactor), EAdaptationMaxV2Interior, EInteriorFactor );
float newEBrightnessV2=lerp( lerp(EBrightnessV2Night, EBrightnessV2Day, ENightDayFactor), EBrightnessV2Interior, EInteriorFactor );
float newEToneMappingOversaturationV2=lerp( lerp(EToneMappingOversaturationV2Night, EToneMappingOversaturationV2Day, ENightDayFactor), EToneMappingOversaturationV2Interior, InteriorFactor );
float newEToneMappingCurveV2=lerp( lerp(EToneMappingCurveV2Night, EToneMappingCurveV2Day, ENightDayFactor), EToneMappingCurveV2Interior, EInteriorFactor );   
float newEColorSaturationV2=lerp( lerp(EColorSaturationV2Night, EColorSaturationV2Day, ENightDayFactor), EColorSaturationV2Interior, EInteriorFactor );
float newEIntensityContrastV2=lerp( lerp(EIntensityContrastV2Night, EIntensityContrastV2Day, ENightDayFactor), EIntensityContrastV2Interior, EInteriorFactor );

Both sets of interpolators are at the top of the pixel shader section (inside the opening bracket and before float4 _oC0=0.0;)

Finally, I added a snippet of code that Prod80 posted (Filmic HDR). That was placed between postprocess and enbpalette code. Added the spinners, and everything was fine, worked like a charm.

Then I decided to activate color correction and the moon turned into a Belgian waffle - as did interior lights, and items that reflect light.

Since you mentioned not messing with Fallout 3 or New Vegas, the bloom code is the same for Skyrim (which I also play - perfect time to thank you for your Skyrim patches!).

As for bloom. JawZ put up a bit of code (http://enbseries.enbdev.com/forum/viewtopic.php?) that allows the use of ENB bloom when color correction is enabled. Brilliant bit of code, and it works like a charm. But that's not the problem.

I thought as you and removed the code for ENB bloom since color correction was enabled. Problem is still there. I also removed the adjusted enbeffect ini file to see if it was a gamma problem. Not only was the moon still a waffle, it started dripping syrup (the hash/waffle effect was very clear).

So, I'm starting to think that color correction just doesn't play well with modifications to the base shader code. Why? I dunno. I'm still new to shaders and it took me a while to get this far. :D And, given how old the game is I doubt Boris is inclined to jump on this with the intent to work it out.

And that's where I'm at. Thanks for the suggestions! If you want, I can zip up the complete shader file and post it. Maybe I'm missing something (a bit of code)?


Top
 Profile  
 
PostPosted: 12 Jan 2017, 10:48 
Offline
*blah-blah-blah maniac*
User avatar

Joined: 27 Dec 2011, 08:53
Posts: 10850
Location: St.Petersburg
Shout in the dark: dithering is enabled somewhere or offsets for reading several samples? In later shaders effect.txt for example. Or code there for sharpening. I can't believe that color manipulations can do this problem. Did you tried updated recently color correction code of enbeffect.fx, are you sure?

_________________
Core i5-4690K 3.5 GHz, 16 Gb ram, GeForce 650 Ti 2 Gb, X-Fi Xtreme Music, WinXP/Win7
I am INFP, not the brutal, godamnit.


Top
 Profile  
 
PostPosted: 13 Jan 2017, 03:47 
Offline

Joined: 05 Jan 2016, 08:14
Posts: 17
I figured it out. I took copies of the shader file and ran a comparison in N++. Turns out the problem started with the fella fingering the keyboard (me). Dyslexia and lack of sleep is a bitch. :oops:

Specifically, it was in samplers section. I reduced each sampler to a single line and rolled right over the fact that _s0 min/magfilter is set to point and not linear.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group