Jump to content

Skyrim LE Shadow Optimization


z929669

Recommended Posts

This guy on Nexus has done an awful lot of work and research on the topic of shadows and the best balance between detail and draw distance:

https://www.nexusmods.com/skyrim/mods/7638/?tab=1&navtag=http%3A%2F%2Fwww.nexusmods.com%2Fskyrim%2Fajax%2Fmoddescription%2F%3Fid%3D7638%26preview%3D&pUp=1

 

Ive used his tweaks today and i have to say Im impressed.  It is worth pointing out that until I read all of his work (and the posts and his replies to them) on Nexus that I thought the detail of my shadows was directly linked to the shadowmap resolution and more importantly the shadowdrawdistance variable.

 

What I didnt know was that FOV is another variable and increasing FOV decreases the detail of shadows but it does so only once, by halfing their detail, at a certain point for both your FOV and drawdistance setting.  I proved this to myself today by standing by a tree, setting draw distance to 3000 to get nice detailed shadows and then increased FOV by increments of 5 from 70 until i saw the shadows go blocky at about 85.

 

Anyhow have a read of his stuff.  my setting are here if you are remotely interested.  I run FOV 80 as 75(the vanilla default) makes me a little motion sick.

 

[Display]

iBlurDeferredShadowMask=3

fInteriorShadowDistance=3000.0000

fShadowDistance=3400

iShadowMapResolutionSecondary=4096

iShadowMapResolutionPrimary=4096

iShadowSplitCount=2

iMaxAnisotropy=0 ;Anisotropic Filtering - set this to zero, as it should be controlled via the graphics driver.

fLeafAnimDampenDistEnd=4600.0000

fLeafAnimDampenDistStart=3600.0000

fTreesMidLODSwitchDist=1e+007

fGamma=1.0000

fDecalLOD2=1500.0000

fDecalLOD1=1000.0000

fSpecularLODStartFade=800

fShadowLODStartFade=200.0000

fLightLODStartFade=1800

iTexMipMapMinimum=0

iTexMipMapSkip=0

iWaterMultiSamples=0

iMultiSample=4 ;Antialiasing - keep the value set by the Skyrim Launcher for now

iShadowMode=4

bTreesReceiveShadows=1 ;Enables shadows rendering on trees (insignificant performance impact)

bDrawLandShadows=0 ;Enables shadows rendering on land (insignificant performance impact)

bFull Screen=1

iSize H=1200

iSize W=1920

fMeshLODFadePercentDefault=1.2000

fMeshLODFadeBoundDefault=256.0000

fMeshLODLevel2FadeTreeDistance=2048.0000

fMeshLODLevel1FadeTreeDistance=2844.0000

fMeshLODLevel2FadeDist=1e+007

fMeshLODLevel1FadeDist=1e+007

iScreenShotIndex=2

bShadowMaskZPrepass=0

bMainZPrepass=0

iMaxSkinDecalsPerFrame=25

iMaxDecalsPerFrame=100

bFloatPointRenderTarget=0 ;Set to 'one' if using deferred shader rendering ENB lighting (NOT supported by STEP).

sD3DDevice="NVIDIA GeForce GTX 670"

bFXAAEnabled=0

iShadowMapResolution=8192

fShadowBiasScale=0.3500

iShadowMaskQuarter=4

iAdapter=0

iPresentInterval=0 ;disable vsync! - vsync should be handled in enblocal.ini (see ENBoost mod instructions)

 

Matt

Edited by Heliadhel
Link to comment
Share on other sites

  • 1 month later...

Ive used his tweaks today and i have to say Im impressed.  It is worth pointing out that until I read all of his work (and the posts and his replies to them) on Nexus that I thought the detail of my shadows was directly linked to the shadowmap resolution and more importantly the shadowdrawdistance variable.

 

What I didnt know was that FOV is another variable and increasing FOV decreases the detail of shadows but it does so only once, by halfing their detail, at a certain point for both your FOV and drawdistance setting.  I proved this to myself today by standing by a tree, setting draw distance to 3000 to get nice detailed shadows and then increased FOV by increments of 5 from 70 until i saw the shadows go blocky at about 85.

Yep, that's the shadow lod bug he explains and shows on a youtube video. Doubleyou claimed he doesn't have the bug with his ini settings with farther draw distance, I didn't test that though.

 

Be aware though that using ENB shadows changes things quite dramatically. Turning up ENB shadow settings and reducing resolution in the ini is the way to go. Most ENBs have their shadow settings maxed. I go with 2k since the difference to 1k is a very small fraction of an FPS. Don't bother with primary or secondary resolutions, they seem to change nothing. The only other quality setting worth changing from vanilla (I use high as base) is iBlurDeferredShadowMask. I prefer 4, Jafin uses 5, you need to decide which value is right for you.

Note that shadow distance still effects quality with ENB shadows because Skyrim essentially renders one big shadow. Higher range means a bigger shadow means less quality. I think 6500 is a good balance.

Link to comment
Share on other sites

I use iBlurDeferredShadowMask set at 4. However, if using an ENB, Boris recommends setting it to 1 (see my post below), turning on UseBilateralShadowFilter and then adjusting the ENB shadows to preference. This will get you the best possible shadows (supposedly...have not tested it fully yet).

Link to comment
Share on other sites

  • 5 months later...

Has anyone ever figured out what's causing the shadow stripes/lines on landscape?

d8kk8i31qxad3ae6g.jpg

After some searching, I thought it was bDrawLandShadows in skyrimprefs.ini, but after setting it to 0 nothing changed, anywhere. I am starting to think this setting doesn't do anything.

Link to comment
Share on other sites

@Octopuss  I had that problem.  fShadowBiasScale= (0.3500 or =0.6 or =1.0 ) was my culprit.  =0.3500 is what I use.  There are a lot of vids on it with lot of different answers.  But I'm fairly certain it's the fShadowBiasScale

 

Here's a Mod that suppose to raise the "low shadow depth bias" https://www.nexusmods.com/skyrim/mods/9426/?tab=1&navtag=http%3A%2F%2Fwww.nexusmods.com%2Fskyrim%2Fajax%2Fmoddescription%2F%3Fid%3D9426%26preview%3D&pUp=1

Edited by AyleidRuin
Link to comment
Share on other sites

0.35 seems to help a lot. There are still some stripes somewhere, but it's not as bad.

What exactly does this setting do to shadows btw, anyone knows?

There is a pretty nice post in the comments if you follow the link a few replies ago. :)
Link to comment
Share on other sites

Too many links everywhere :( I read the entire thread a few times over the past few days and apparently still missed things :( Ok let's have another go... lol

edit: Oh THAT. I get it. Didn't think to go that "deep".

Edited by Octopuss
Link to comment
Share on other sites

For everyone's perusal, here is the post from the comment thread from user Valorien:

Some clarification of what these codes do; (I'm a game-developer with background as a light-smith for films. I've tested each of these codes individually since this game came out - in order to really know what each code actually does.)

 

[Display]

 

iShadowMapResolution=4096 (Size of ENTIRE memory-pool used for shadow-texture distribution on surfaces)

 

iShadowMapResolutionSecondary=2048 (Size of memory-pool used for secondary shadow LOD-textures on surfaces PAST the "iBlurDeferredShadowMask" range)

 

iShadowMapResolutionPrimary=2048 (Size of memory-pool used for primary shadow LOD-textures on surfaces BEFORE the "iBlurDeferredShadowMask" range)

 

fShadowBiasScale=0.5000 (The ANGLE the Shadow-maps are aligned to surfaces. Anything from 0.3 - 0.6 is recommended)

 

iShadowMaskQuarter=3 (How many Quarters of an object are being visually aligned to the players viewpoint. 3 = 75% standard, 4 is FULL. No need for more because 4 = 100% coverage)

 

iBlurDeferredShadowMask=10 (The amount of blurring added to shadow-edges. 0=Sharpest with ZERO blurring, making shadows very choppy. 5 is standard. I recommend a value of 10 so that shadows seen up-close are still 'soft' around the edges.)

 

fShadowDistance=3500.0000 (Distance of shadow-maps displayed to the player, highly recommended values are; 2000=Low, 3000=Medium, 4000=MAX, but no higher since you lose quality the further away shadows are drawn, and most of the landscape of Skyrim was designed with hills and other surfaces to 'mask' these shadow-transitions.)

 

fInteriorShadowDistance=8000.0000 (This value determines the distance to player that lights are displayed to DRAW shadows, if this value is below 8000, then players will see lights flashing on & off in dungeons and other interiors. Changing this value to smaller numbers does NOT improve shadow-quality, this is strictly a light-draw-distance factor.)

 

iShadowFilter=3 (Recommended value of 3, since 4 causes 'Crash To Desktop' on some machines)

 

fShadowLODStartFade=200.0000 (This is the number that changes the quality of a shadows appearance up-close, the smaller the number, the better the resolution. Tested extensively to be best at 200, since 100 is too short a range and doesn't start drawing for the players point-of-view until 200.)

 

iShadowMode=3 (Recommended value of 3, since 4 is buggy in some areas, particularly around waterfalls which will be either too-bright or too dark)

 

bTreesReceiveShadows=1 (Self-Explanatory)

bDrawLandShadows=1 (Self-Explanatory)

bDrawShadows=1 (Self-Explanatory)

 

bShadowMaskZPrepass=1 (This prepass ensures the active blending of shadows onto textured surfaces and is used to handle the value of 'iShadowMaskQuarter'' with the game-engine. It is not required, but DOES add realism if you have the machine to handle it.)

  • +1 1
Link to comment
Share on other sites

Some of these numbers sound a bit questionable though, like iBlurDeferredShadowMask=10. That must look worse than draw distance of 8000 (in different way).

The explanation is nice though, and I guess it makes sense.

Edited by Octopuss
Link to comment
Share on other sites

Some of these numbers sound a bit questionable though, like iBlurDeferredShadowMask=10. That must look worse than draw distance of 8000 (in different way).

The explanation is nice though, and I guess it makes sense.

Blur != Pixelation. When draw distance is high it's basically stretching your shadows resulting in pixelation, blur looks much cleaner. That being said, I cannot confirm or deny his recommendations just figured I'd share them for the curious as they sound rational.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.