I have left my memory allocation at 8mb for now. I will try some screenshots just to see if anyone can suggest some improvements.
If there is no objection, I will post the commands that are available from STEP (pretty much cut and pasted from there). There may be some Skyrim references still, and if there are inaccuracies, it wasn't me.
This section of the INI allows extension of the ENB functions library via a 'helper' library. This enables compatibility between ENB and other post-processors such as FXAA, SMAA, SweetFX, etc.
Enables/disables the use of the proxy. Unless using a separate post-processor in combination with ENB, this parameter should remain disabled. Enable it whenever using a second processing library is used such as, FXAA injector, SMAA or SweetFX.
For simplicity, if the above parameter is set to true this one should also be set to true; else leave it set to false. This parameter attaches drawing functions to the proxy library. When using a second post-processor, only set this to false if the second .dll is not hooking rendering functions and needs to be injected into the game process (i.e. bug fixes or process memory patchers).
This sets the name or full path to the proxy library that ENBSeries will load (second d3d9.dll file) if both the parameters above are enabled. If the second DLL file is not located in the root Skyrim directory, the full path must be used starting with the drive letter. Neither the name nor full path supports unicode symbols. The second DLL must be renamed if it has the same name as the ENB DLL (d3d9.dll).
These settings affect the overall function of the ENB implementation (e.g., proxy libraries (i.e., 'helper' DLLs, extended lighting effects toggle, etc.).
Used to turn the graphic modifications of ENB on or off. If only using ENBoost features, set this to true to disable the ENB graphic modifications. If using an ENB Preset, set the parameter to false. However this parameter is set, the ENBoost function will only work if SpeedHack is set to true under [PERFORMANCE].
Enables/disables deferred shading rendering which many ENB effects are reliant upon. These include screen space ambient occlusion (SSAO), Image Based Lighting, Reflections, Particle Lights, and Skylighting. This can be disabled for users having performance issues; however, it will affect the look of the ENB preset. This parameter is enabled by default. If only using ENBoost features, this should be set to false as it will not be needed.
Tells ENB to whether or not to ignore the Creation Kit. It is enabled by default and should be left enabled.
Enables/disables the ENBoost features found in the [MEMORY] section. It is recommended to always have it enabled for stability and performance.
Enables/disables Occlusion Culling. It is enabled by default. Disabling this parameter will return Skyrim to its default behavior; however, this is not recommended. Leaving this this enabled can provide a performance increase.
When set to true, this parameter changes some of Skyrim's memory allocation code to cache data at the 'top' of Skyrim's memory space (Windows default caches to bottom of memory space). According to Boris, this can reduce memory fragmentation and make better use of Skyrim's available memory, especially when running on 64-bit Windows; Vista or newer. Note:' for this parameter to work, ReduceSystemMemoryUsage must be set to true andEnableUnsafeMemoryHacks must be set to false (see below).
This parameter will enable the ENBoost features to dramatically reduce CTDs and other issues caused from reaching Skyrim's memory limit. It does this by launching the enbhost.exe process to handle dynamic memory allocations. It is highly recommended to enable and keep this feature enabled! For this feature to work properly, users should have a minimum of 4GB system RAM. ENBoost is able to initialize multiple instances of the enbhost process, each able to use up to 4GB of system RAM up to a maximum of 128GB (capped by the kilobyte value set in VideoMemorySizeMb below. Set to true if ExpandSystemMemoryX64 is enabled (see above).
This was mainly implemented as a fix for AMD video card users; however, it can also be useful for others. The parameter forces the ENBSeries driver libraries to manage video memory resources for cached textures (rather than the video drivers) and will ignore more of the errors reported by the video drivers. When enabled this parameter can cause lower than optimal performance and/or long pauses. If experiencing CTDs even while ENBoost features are enabled, users can try enabling this parameter to see if it resolves (helps to confirm video driver issues); otherwise, it is best to leave it disabled (false).
Routinely running Skyrim with this enabled is not recommended. When enabled this parameter can give faster cell-load times as geometry/textures are not loaded into video memory until they are visible. This may cause stuttering since more data must be dynamically loaded into memory during gameplay as the PC looks and moves around. Enabling this parameter could potentially help load a save game which fails to load otherwise. If this works, users are encouraged to go to a small interior, save the game, and then disable this again before trying to load the problem savegame. If experiencing extended cell load times, before enabling this feature, it is recommended to first try using the "free VRAM" key (see [INPUT] section) to clean video memory before entering a new location or fast traveling.
Enabling this parameter is generally not safe. This is a workaround for users experiencing large amount of stuttering, typically on systems with large amount of VRAM (4GB+). When enabled, it does not use memory reallocation, compression, or enbhost.exe and will only work when ReduceSystemMemoryUsage is also enabled. A known bug is that Alt+tab will not work in fullscreen when this is enabled. Set to false if ExpandSystemMemoryX64 is enabled (see above).
This parameter sets the size of a buffer used for swapping geometry and textures between VRAM and system memory. The buffer will be set in VRAM and this portion of VRAM will not be used for ENBoost's dynamic memory allocation; however, it will also be duplicated in the system memory used by TESV.exe as well. This means that increasing this parameter's value will result in equal increases in both VRAM and system RAM usage. The values here are measured in megabytes. For video cards with 1GB or more VRAM, start with 128 as a baseline. If stuttering persists, increase the value in increments of 128 ( 256, 384, 512, etc ) until the stuttering has ceased or is as minimal as possible with the lowest possible value. The maximum value that can be used is 1024, but be aware that whatever value is used is how much VRAM will be reserved for the swap space. This is the reason the lowest value possible without experiencing issues is recommended. Because of this parameter being system dependent, users will need to test different values to find the one which works best for their specific setup.
ReservedMemorySizeMb=(64, 128, 256, 384, 512, 640, 768, 896, 1024)
This sets the total memory that will be used for the ENBoost dynamic memory allocation. All available VRAM, except for the amount set with ReservedMemorySizeMb, will be used first, and if VideoMemorySizeMb is set to a valuehigher than total VRAM of the user's videocard, then ENBoost will use system RAM, if necessary, by running instances of enbhost.exe.
Download Boris's VRamSizeTest tool, run VRamSizeDX9.exe, and note the number it shows after "Video memory available." Then, if you are running Windows 7, subtract 170 from that number; if you are running Windows 8 or newer, instead subtract 350. Use the result as the variable here. (Example: If VRamSizeDX9.exe shows 4064, and you're running Windows 10, you should subtract 350 to get 3714.)
VideoMemorySizeMb=(see above instructions)
Enables/disables memory compression. It is disabled by default. Disabling memory compression can reduce stutter, but at the cost of more RAM usage. For this reason, it is generally only recommended to be disabled on systems with more than 2GB VRAM. Any system that is already nearing its VRAM limit should leave this parameter enabled or it could do more harm than good.
If enabled, this feature will attempt to detect a system's shared video memory and automatically set the VideoMemorySizeMb parameter for a user. Any value placed in the VideoMemorySizeMb above will simply be ignored. This feature works for some users and for other users it'll give the wrong values which are usually too high. Users can try this feature; however, disabling it and setting the VideoMemorySizeMb parameter manually to fine tune the ENBoost settings is currently the recommended method.
Recommended value is 0.
DataSyncMode=(0, 1, 2)
Recommended value is 0.
PriorityMode=(0, 1, 2)
This section allows configuration in environments using multiple GPUs. These parameters should normally not be changed, and the default values should work for most systems.
If enabled, ENBSeries ignores the default video adapter output and uses the card selected by the VideoAdapterIndex parameter below. This allows use of multiple monitors and other uses with multiple video card systems. It is disabled by default.
This sets which video adapter will be used for rendering via index numbers. This is mainly used for used for multiple card systems. The default adapter is '0'.
This section is used to enable borderless window with Skyrim. Enabling borderless window can also enable the use of Alt+Tab to run Skyrim in the background. IfEnableUnsafeMemoryHacks= is set to true under [MEMORY] section, Alt+Tab will not work, regardless of the parameter value set here.
Enables/disables borderless window. This setting forces the game to run in a window rather than as a fullscreen application as it normally would. However, the window will, in fact, be fullscreen and without a border so the appearance of the game, on screen, will not be any different. This enables users to Alt-Tab in and out of the game without issue. Some users have also reported an increase in stability with this mode active.
This parameter will remove the border lines of the game window when Skyrim is set to Fullscreen Mode. This is best used when down sampling is also used.
The parameters in this section affect the game engine behavior.
Notice: It's noted by Boris that it is best to force anisotropic filtering here instead of in the video card drivers. His reasoning behind this is because if forced through video card settings, the filtering will be applied to all textures and some textures should not be filtered. Filtering such textures could cause issues with SSAO and parallax. Forcing anisotropic filtering through the ENB; however, skips these textures
This will force anisotropic filtering for all textures with a linear filtering type. Textures which should not have anisotropic filtering are not filtered.
This is the level of anisotropy filtering. The values are 2, 4, 6, 8, 10, 12, 14, and 16; higher values provide better quality.
MaxAnisotropy=(2, 4, 6, 8, 10, 12, 14, 16)
This parameter forces LOD Bias for all LOD textures.
LOD Bias controls the sharpness of LOD textures. Values should be between -0.5 and 0.5; any higher or lower and texture degradation is highly probable. Lower values result in sharper textures.
This parameter enables down-sampling to be used without having to force it through the graphics driver. It is recommended to remain disabled and only to be used by advanced users. In the most basic explanation, down-sampling is rendering the game at twice the monitor's set resolution and then down-sampling it to the correct resolution before being displayed on the monitor. This mimics super-sampling. For this to work, users must enable this parameter, run in full screen mode, set the resolution in SkyrimPrefs.ini to 2x the monitor's set resolution, and set UseDefferedRendering=false under [GLOBAL]
This will enable vsync which is recommenced to prevent screen tearing. Enabling this has also been reported to help solve the lip sync issue on NPCs; however, users should also set iPresentInterval=1 in Skyrim.ini.
This tells the frame buffer to ignore the back buffer 0, 1, 2, or 3 contiguous cycles before grabbing a frame. This feature is mainly for users with high refresh rate monitors (> 60Hz) and should be set to '0' for most other users.
VSyncSkipNumFrames=(0, 1, 2, 3)
Notice:Limiting FPS is neither necessary nor recommended when vertical sync (vsync) is enabled under [ENGINE], since vsync inherently limits FPS to the monitor refresh rate or lower.
Enables/disables upper limit to frames per second (FPS) the specified integer. This feature is useful to control some performance issues such as lagging, crashes, freezes, stuttering, and physics issues which are present at high frame rates. The limiter can be turned on and off in-game by pressing Shift+Home (by default, but shortcut keys can also be customized under [INPUT]). Enabling the limiter with older versions of ENBSeries could also increase load times; however, since version 0.265 the FPS Limiter has been forced to 60FPS on loading screens to help eliminate this issue.
Notice:Some users have reported enabling the limiter causes extremely low FPS (5-15FPS) regardless of what the FPSLimitparameter is set to. Other users have reported the ENBSeries FPS Limiter not working at all. In these cases, the video card limiter in the video card settings might be more stable.
If enabled, each frame will wait until the GPU is finished drawing. This is not recommended for performance reasons; however, it may fix some of the issues mentioned above in the second notice as well as stuttering issues.
Enables/disables the FPS limiter.
This parameter sets the upper FPS limit. If used, it is recommended to set equal to or less than the monitor refresh rate (typically 60).
Allows customization of the key bindings for several runtime ENB-effect toggles. A utility like Keyboard Message Viewer may be necessary to map keyboard codes to keyboard keys.
By default, [Backspace]. This will reload the configuration file and shaders to view changes made without having to restart the game. Very useful when tweaking ENB presets.
By default, [Shift]. It is the primary key pressed and held for key combinations.
By default, [F12]. This will turn the ENB effects on and off. This must be pressed together with KeyCombination key (Shift+F12 by default).
By default, [Home]. This turns the FPS Limiter on and off. This must be pressed together with the KeyCombinaton key (Shift+Home by default).
By default, [NumPad *]. This displays real-time frame rate in the upper right corner in the game. Set to 0 to disable.
By default, [Print Screen]. This captures a screenshot to a BMP and/or PNG file in the same folder where ENBSeries is installed.
By default, [Enter]. This will open up the in game GUI when pressing SHIFT+ENTER.
By default, [F4]. This will clear VRAM in use to avoid encroaching upon the VRAM limit.
By default, [B]. This will enable a "brute force" preset by Boris and is mainly for screenarchery. This will bring the user's system to its knees and begging for mercy! This must be pressed together with the KeyCombinaton key (Shift+B by default)
This section allows resource-hungry graphical features to be toggled on-demand for performance reasons. It require the proper code to exist in the .fx files to work. Probably best added to enbeffectprepass.fx because it has the most demanding effects code.
Enables or disables Adaptive Quality.
Sets the quality of the effect. It can be set to 0, 1, or 2; where 0 is highest quality and 2 is the highest performance.
Quality=(0, 1, 2)
Sets the minimum FPS that is allowed. If the minimum is reached, features will start to turn off in an attempt to stay above this threshold.
This section controls four antialiasing (AA) parameters potentially implemented via ENB. All four can be used together, since Boris has taken great care to balance them, though using Temporal AA and Edge AA together can cause some blurriness around tree branches. It is also possible to enable these via SMAA injector.
The EdgeAA solution is excellent for low-end systems because the performance impact is very small; however, it does come with some blurriness. Mid to High-end systems may find SMAA a higher quality solution for EdgeAA; however, EdgeAA and SMAA can be used together for possibly even better results. Using these two solutions together will come at a small cost to performance.
The TemporalAA setting no longer requires a helper mod, as of ENBSeries v0.213. This is excellent for screenshots at removing jaggies, but may not be preferable for general use because it can cause ghosting on high motion objects. UPDATE: Boris improved the TemporalAA code in v0.265. Several users report that most of the ghosting has been eliminated above 40FPS. Users who can not maintain at least 40FPS might still experience ghosting with this enabled.
This parameter will enable SubPixelAA on specular reflections and should only cause a minimal performance impact. This setting recommended to be enabled.
Notice:This was removed in version 0.277. This will remain here for a few more release to allow Presets to catch up. Reason for removal was due to its rare use and the fact that it cost performance even while turned off.
Enable this parameter to use TransparencyAA. Transparency AA is applied to all textures in the game, regardless of the alpha transparency use (grass, foliage, trees, hair, etc). Enabling this will substantially tax performance in forested areas. Generally not recommend for any system lacking a Ferrari engine since this feature can cripple even the highest end systems.
The following are fixes for several issues introduced by the ENB or other aspects of the game/hardware. These settings should not normally be changed.
Allows the ENB to fix game rendering related issues and errors such as divide-by-zero errors that can cause crashes. The is normally not needed but can be enabled to fix certain issues.
This fixes parallax texture rendering issues by changing the shader used on those textures in order to render them correctly. This fix should be used if there are any parallax textures being used; else, leave it disabled.
This feature adds parallax for the terrain in Skyrim. The above FixParallaxBugs parameter must also be enabled for this feature to work. This parameter is disabled by default.
This parameter helps reduce aliasing of snow on mountains and other similar objects. It is recommended to enable it, unless SMAA is being used.
Notice: This parameter has not been in use in several releases (current version 0.279). It remains due to still being used in some older Presets which still have this parameter present.
This line is missing in some versions of ENBSeries and will need to be added. This fix tells the ENB to ignore rendering on loading screens which speeds up loading times and prevents issues related to loading screens such as missing textures. It is recommended to be enabled and added if missing from the enblocal.ini file.
Same as above, but tells the ENB to ignore rendering on the inventory screen. It is also recommended to be enabled.
The is a fix for the small color differences in various parts of models such as hair. If this setting is enabled and ColorPow parameter is greater than "1.0" the differences are more noticeable.
This parameter will remove Skyrim's static Depth of Field which is used to blur distance landscapes when some weathers are active, hiding LOD flaws well. The setting is generally left up to the ENB Preset. You won't break anything using two DoFs, you'll just get more focused blur.
When enabled, this will fix issues with Subsurface Scattering for interiors and exteriors, and will prevent pixelated edges on characters and objects. It is recommended to be enabled.
This fixes an issue with the reflection of the sky flicking in some weathers. It is recommended to be enabled.
This fixes an issue with the cursor visibility after using Alt+Tab. When enabled, this will replace the Double Cursor Fix mod. It is recommended to be enabled.
This feature will reduce some delays which are mainly experienced in windowed mode. These delays are actually frames skipping when the video card is under heavy load. This feature is an experimental hack which was made specifically for NVidia users, however, it may work for AMD users as well. It is new to v0.266 and, thus, not much testing has been done with it. It is disabled by default.