Please use english language
It is currently 24 Oct 2017, 04:11

All times are UTC





Post new topic Reply to topic  [ 213 posts ]  Go to page 1, 2, 3, 4, 5 ... 22  Next
Author Message
PostPosted: 04 Nov 2016, 00:35 
Offline
*sensei*
User avatar

Joined: 30 Jan 2012, 13:18
Posts: 464
Advanced Depth of Field for TES Skyrim: Special Edition - with SSAO

Hey there!
Need some slight Depth of Field for gameplay, or are you the screenarcher who tortures the videocard with 4K,5K resolutions and need some nifty bokeh shapes to emphasise your perfect shot you've been setting up for half an hour? Say no more! This Depth of Field shader can do all that. Even though the size and feature set might be a tiny bit intimidating at first, you'll see that it's actually easy to get used to and even if you just want a bit blur in your scene, you can use conservative settings and get what you want without sacrificing a lot of FPS.
The newest update now also contains a port of the popular "MXAO" SSAO shader, as long as ENBSeries for SSE doesn't have its own AO.


Highly recommended video to get started with this shader plugin, thanks to tapioks:


FEATURES

  • Autofocus for gameplay
  • Manual focus for perfect shots when automated focus detection doesn't really cut it
  • Tilt Shift for some cool and alternative scenes
  • Chromatic aberration, also featuring a new innovative algorithm for no performance cost
  • Numerous shape controls for easy recreation of any bokeh shape seen in movies of photographs
  • Bokeh shape preview overlay so you can directly see how one arbitrary control affects your bokeh
  • Smoothing of bokeh shape, improved over regular gaussian blur
  • On-the-fly option to render in a lower resolution, making even wide and high quality blur easy on hardware and framerate
  • Optional switch to make perceived blur width coherent on different resolutions, so users of your ENB have the same experience as you do
  • Screen-Space Ambient Obscurance as a placeholder for the ENBSeries SSAO that may or may not be implemented into SSE ENB in the future.


DOWNLOAD

2.1f - 19.03.16
1.51- 22.12.16
1.5- 22.12.16
1.41- 17.12.16
1.4 - 17.12.16
1.3b - 3.12.16
1.2 - 13.11.16
1.1 - 4.11.16
1.0 - 3.11.16


CHANGELOG

2.1f: add SSAO, add second post blur variant (bokeh blur second instance instead of gaussian), add sharpening (matso code), various code improvements (read: I don't remember what I did but it surely had its purpose), improve inline documentation
1.51: fix bug with chroma order 1, 5 and 6 using derivative chromatic aberration
1.5: add new chromatic aberration mode that should perform almost as well as old one at no fps cost (shape chroma mode now switches between the 2 modes, the color shifts are now controlled by shape chroma order), fix bug with Tilt Shift, added bokeh flicker reducer (timothy lottes, crytek mixed), modify shape preview for higher performance and better compatibility with future updates, code cleanups
1.41: fixed bug with preview window, modified functionality to enable it with GUI.
1.4: fix bug with tilt shift + postblur, add preview window for bokeh shape, add second mask mode, add option to make blur width independt from screen size (FHD -> DSR no longer changes perceived blur width), add autofocus smoothing (correct-ish, recursive function can never be fixed fully), changed functionality of fADOF_InfiniteFocus, various code restructures and improvements to improve performance, modify default file for plug&play gameplay config instead of crazy test values
1.3: add tilt shift
1.2: readd shape weight, add shape chroma with a different algorithm, modify bokeh blur algorithm for higher performance
1.1: readd various features of ReShade equivalent, add UI vars
1.0: initial release

UI VARS DOCUMENTATION

  • FocusMode 0 (gp65cj042/McFly modified) Parameters (hidden for FocusMode 1)
    • Autofocus (Enable Autofocus == 1)
      • Enable Autofocus: Enables automated focus detection by taking the depth of Autofocus sample center into consideration.
      • Autofocus sample center: The Autofocus checks the depth at this point to determine what you're looking at to blur everything what you're not looking at.
      • Autofocus sample count: Amount of additional points around the sample center for a more coherent focus depth detection. Just like 1 pixel is not very meaningful for the average color onscreen, autofocus needs to take more samples than 1.
      • Autofocus sample radius: The distance of the additional samples around the sample center.
      Example:
      Image
    • Manual focus (Enable Autofocus == 0)
      • Manual focus depth: the distance of the focus plane. 0.0 equals camera, 1.0 equals sky. Lower values move focused area closer to player.
    • (both manual & auto)
      • Near blur curve: curve of blur of near blur area (area closer to camera than focus).
      • Far blur curve: curve of blur of far blur area (area behind focus plane).
      • Near blur mult: multiplier of blur of near blur area (area closer to camera than focus).
      • Far blur mult: multiplier of blur of far blur area (area behind focus plane).
      • Infinite depth distance: Parameter to make DoF effects cut off early. Everything larger than that is considered as "infinitely far away", hence not triggering any autofocus or anything. If set to 1.0 (no effect), DoF will react to focus changes from a mountain to the sky (which in real life have no effect on your eye). Setting it to 0.1 or lower and using autofocus, your image will be not blurred except you're very close to an object. Good for gameplay.
  • FocusMode 1 (Tilt Shift) Parameters (hidden for FocusMode 0)
    • Tilt Shift Axis Position: Position of TS axis (blur increases perpendiculary to axis).
    • Tilt Shift Focus Width: Size of the area around the axis with no blur.
    • Tilt Shift Axis Rotation: Rotation of TS axis. 0 deg means horizontal axis, 90 deg means vertical (axis pos will move axis left/right then).
    • Tilt Shift Blur Curve: Curve of TS blur.
  • Bokeh Blur & Shape Parameters
    • Bokeh Intensity: The intensity of the bokeh effect. with 1.0, the DoF looks like gaussian. Note that higher values make DoF more temporally unstable (flickering for low AA-ed areas)
    • Enable Bokeh shape preview window: This shows a small window on the bottom right corner of your screen that directly shows how your bokeh shape looks like.
    • Bokeh shape max size: The overall blur intensity control of the DoF. If bADOF_BlurDependingOnPixelSize == 1 in fx file, this parameter directly maps to the maximum blur radius in pixels the DoF will produce for areas completely out of focus.
    • Bokeh shape vertices: Amount of vertices of the DoF shape (5 => Pentagon, 6 => Hexagon and so on).
    • Bokeh shape quality: Amount of samples for the bokeh shape, higher means sharper bokeh shape but less performance. Raise until you see no difference between increments.
      Example:
      Image
    • Bokeh shape curvature: Deforms the polygon into circle (curvature == 1) or star shape (curvature == -1).
      Example:
      Image
    • Bokeh shape rotation: Angle of rotation of the bokeh shape.
    • Bokeh shape aspect ratio: This controls the width of the bokeh shape. ratio = 0 deforms bokeh shape to vertical line.
    • Bokeh Shape Weight Parameters (hidden if Shape Weight is disabled)
      • Bokeh shape weight curve: Curve of the bokeh weighting (donut effect). Higher values expand the dark area inside the bokeh shape. Test value in preview window.
      • Bokeh shape weight amount: Amount of the bokeh weighting (donut effect). Higher values make the darkening inside the bokeh shape more intensive. Test value in preview window.
      • Example:
        Image
    • Other Parameters
      • Shape chroma amount: ONLY SHOWS UP IF CA IS ENABLED IN FX FILE! Amount of color shift of the bokeh shape caused by chromatic aberration (color effect on the outside of the bokeh shape).
      • Blur render res mult: Scale of the bokeh blur. 0.5 means the bokeh blur is rendered in half the X Y resolution, which means only 1/4 of the fullres pixels are processed. Works exactly like ENB AO control "SizeScale". HUGE performance benefit.
      • Gaussian postblur width: Blur width of the small-scale gaussian blur after the main bokeh blur to make the shape a bit sharper and hide undersampling artifacts.


SCREENSHOTS

Image
Image
Image
Image
Image


Last edited by Marty McFly on 18 Mar 2017, 23:37, edited 34 times in total.

Top
 Profile  
 
Tomoko
PostPosted: 04 Nov 2016, 08:44 
Offline
*blah-blah-blah maniac*
User avatar

Joined: 31 Mar 2012, 15:06
Posts: 1425
Location: France
Thank you Marty.
Works neat.
Will wait for Boris to enable DNI separation in order to use this at its fullest.
For now, I'll try adding a prepass sharpening in it, I wonder if this shader works as a prepass, the same way it worked in DX9 version.

_________________
Obsidian 900D, AX1500i, Eisbaer 420, i7 6850K@4.425 Ghz, MSI X99 Raider, SLI 2x1080Ti 11G VRAM, 32G RAM@3371, 950 Pro M2, 10 Tb HDDs, W10 Pro 64
Image
K ENB Pure Light SE
K ENB Pure Light
Kountervibe ENB
Kinematic ENB


Top
 Profile  
 
PostPosted: 04 Nov 2016, 09:27 
Offline
*master*
User avatar

Joined: 08 Nov 2012, 15:24
Posts: 130
Wow, this is great! I'm looking forward to seeing where you go with this.

I actually ported over Light DoF's poisson blur from ReShade for my F4 ENB, but I didn't think to post it seperately. It has a particularly interesting appearance in F4/SSE because of how the noise samples interact with the temporal filter. But it doesn't really match this.

_________________
Try my mods! | Resonant ENB for Dragon's Dogma | IAXE2 for Fallout 4 | Luminous ENB for Skyrim SE


Top
 Profile  
 
PostPosted: 04 Nov 2016, 12:51 
Offline
*sensei*
User avatar

Joined: 30 Jan 2012, 13:18
Posts: 464
I'll make this modular with own vertex shader and stuff like that so a simple #include should make it work for everyone in every preset. Currently looking for ways to improve performance as the ReShade variant could render to lower res target and save performance, now we render to fullscreen and read from RGBA16F instead of RGBA8 which is slower.


Top
 Profile  
 
PostPosted: 04 Nov 2016, 16:47 
Offline
*blah-blah-blah maniac*
User avatar

Joined: 27 Dec 2011, 08:53
Posts: 11385
Location: St.Petersburg
Post screenshots to first message, users frequently bypass topics without pictures.

_________________
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: 04 Nov 2016, 18:46 
Offline
*sensei*
User avatar

Joined: 30 Jan 2012, 13:18
Posts: 464
I will, thread is under construction. Hadn't much time yesterday to make a proper thread. But thanks for the heads up :)


Top
 Profile  
 
PostPosted: 04 Nov 2016, 19:05 
Offline
*sensei*
User avatar

Joined: 27 Dec 2011, 21:33
Posts: 327
Location: Poland, Gdańsk
Thank You Marty!

Image

Image

Image

Image

Image

Image

PS: Pro Tip - use the curve value of "1.0" rather than "4.0", we're dealing with HDR here :)

_________________
OS: Windows 10
CPU: Intel Core i7 3770 @4.2GHz
RAM: DDR3 24GB 1333 MHz
GPU: GeForce GTX 980TI MSI Gaming 6GB
Sound Card: X-FI Titanium HD
Mobo: Asrock Z77 EXTREME4
Monitor: M340CLZ 34" 3440x1440 100HZ AMD FREE Sync Curved Monitor


Top
 Profile  
 
PostPosted: 04 Nov 2016, 19:38 
Offline
*sensei*
User avatar

Joined: 30 Jan 2012, 13:18
Posts: 464
Erhm, how did you make circular DOF, I haven't copied that feature over in the build? Or did you just swiftly do that yourself? Also, on Skyrim a high curve is needed but that's why this param is there, so one can tweak it how (s)he needs it.


Top
 Profile  
 
PostPosted: 04 Nov 2016, 19:47 
Offline
*sensei*
User avatar

Joined: 27 Dec 2011, 21:33
Posts: 327
Location: Poland, Gdańsk
Marty McFly wrote:
Erhm, how did you make circular DOF, I haven't copied that feature over in the build? Or did you just swiftly do that yourself? Also, on Skyrim a high curve is needed but that's why this param is there, so one can tweak it how (s)he needs it.


I've set the vertex count to 18 :P

_________________
OS: Windows 10
CPU: Intel Core i7 3770 @4.2GHz
RAM: DDR3 24GB 1333 MHz
GPU: GeForce GTX 980TI MSI Gaming 6GB
Sound Card: X-FI Titanium HD
Mobo: Asrock Z77 EXTREME4
Monitor: M340CLZ 34" 3440x1440 100HZ AMD FREE Sync Curved Monitor


Top
 Profile  
 
PostPosted: 04 Nov 2016, 20:05 
Offline
*sensei*
User avatar

Joined: 30 Jan 2012, 13:18
Posts: 464
Oh. Well, that works indeed. But not very performance efficient as more vertices mean also more densely accumulated samples. 6-7 vertices for circular look best.
@Topic: I did some math: maximum quality of 25 means 1950 samples for hexagonal bokeh. As I can keep 60fps with that setting and 0.5 render resolution mult this means, I have with 1950 samples a higher performance than GP DOF with quality 9 = 270 samples.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 213 posts ]  Go to page 1, 2, 3, 4, 5 ... 22  Next

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