Guide:ENBSeries: Difference between revisions
From Step Mods | Change The Game
TechAngel85 (talk | contribs) |
TechAngel85 (talk | contribs) No edit summary |
||
Line 331: | Line 331: | ||
In some cases where other running process (such as Adobe Photoshop or Premiere) or bad drivers are causing additional video memory load, or video memory is otherwise being maxed out while playing, reducing <code style="font-size:1.05em;">VideoMemorySizeMb=</code> can improve stability and performance. For systems with large amounts of video and system memory, increasing <code style="font-size:1.05em;">VideoMemorySizeMb=</code> may offer similar improvements. Ultimately, some testing may be required to find the best settings for each individual system.<br> | In some cases where other running process (such as Adobe Photoshop or Premiere) or bad drivers are causing additional video memory load, or video memory is otherwise being maxed out while playing, reducing <code style="font-size:1.05em;">VideoMemorySizeMb=</code> can improve stability and performance. For systems with large amounts of video and system memory, increasing <code style="font-size:1.05em;">VideoMemorySizeMb=</code> may offer similar improvements. Ultimately, some testing may be required to find the best settings for each individual system.<br> | ||
'''Do not increase <code style="font-size:1.05em;">VideoMemorySizeMb=</code> beyond system memory limit!''' | '''Do not increase <code style="font-size:1.05em;">VideoMemorySizeMb=</code> beyond system memory limit!''' | ||
= Editing Enblocal INI = | |||
== Editing the Enblocal INI == | |||
The Enblocal.ini is now the location of the proxy library, memory reduction feature, fps limiter, anisotropic filtering, and borderless window settings. Not every line in the enblocal.ini will be described here, but this will mention many of the more important ones, like memory reduction and proxy libraries. | |||
== Using a Proxy == | |||
The ''[PROXY]'' section of the INI file allows for use of another d3d9.dll file. This enables the ENB to be compatible with other processors such as FXAA, SMAA, and SweetFX. The following is an explanation of the ''[PROXY]'' settings: | |||
This will either enable or disable the use of the proxy. Unless using a separate processor in combination with ENB, this setting should remain as "false". | |||
<pre>EnableProxyLibrary=(false, true)</pre> | |||
This attaches drawing functions to the proxy library. Set this to "false" only if the second .dll is not hooking rendering functions and just needs to be injected in to game process. (i.e. bug fixes or process memory patchers). If using the proxy option, most d3d9.dll files will need this option set to "true". | |||
<pre>InitProxyFunctions=(false, true)</pre> | |||
This is the name or full path to the proxy library to be loaded (second d3d9.dll file). The name or path can not contain unicode symbols. For the majority of situations simply include the name because the two d3d9.dll files will be located in the root Skyrim folder. | |||
<pre>ProxyLibrary=other_d3d9.dll</pre> | |||
'''Full Example:''' | |||
<pre> | |||
[PROXY] | |||
EnableProxyLibrary=true | |||
InitProxyFunctions=true | |||
ProxyLibrary=smaa_d3d9.dll | |||
</pre> | |||
== Global == | |||
These ''[GLOBAL]'' settings rarely need to be changed unless using an external file to store parameters or to turn on/off the graphic modification provided by ENB. | |||
Use this setting to turn the graphic modifications of ENB on or off. If just using the ENBoost memory reducing features set this to "true" and if using an ENB preset set to "false". | |||
<pre>UsePatchSpeedhackWithoutGraphics=(false, true)</pre> | |||
This setting will disable SSAO, Image Based Lighting, Reflection and Particle Lights. | |||
<pre>UseDefferedRendering=(false, true)</pre> | |||
Forces software rendering to take place. It is generally not supported and is recommended to remain set to "false". It was implemented as a fix for AMD users with Patch 1.5, but should now be obsolete. Should not be used with any newer video cards. | |||
<pre>ForceFakeVideocard=(false, true)</pre> | |||
== Performance == | |||
This setting was originally implemented to increase performance in some areas and that is all that Boris gave us on this parameter. It is DirectX Optimization code and is recommended to be left true. | |||
<pre>SpeedHack=(false, true)</pre> | |||
== Multihead == | |||
These ''[MULTIHEAD]'' section settings should normally not be changed. The default settings normally work for all systems. | |||
If set to "true", the ENB 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. | |||
<pre>ForceVideoAdapterIndex=(false, true)</pre> | |||
This sets which video adapter that will be used for rendering via index numbers. Useful for multiple card systems. The default adapter is '0'. | |||
<pre>VideoAdapterIndex=(0..6)</pre> | |||
== Memory == | |||
'''ENb now has memory reducing features added that can significantly reduce CTDs caused by hitting Skyrim's memory limit.''' | |||
The ''[MEMORY]'' section settings may need to be changed depending on the hardware available. It is a good idea to use the site on the {{#switchtablink:Installation|Installation}} section for the correct settings. ENBoost which is the new memory reduction feature depends heavily on these settings to work ingame. | |||
Fix for game engine buffer limitations; allows 64-bit systems to access 3-4GB RAM with optimized performance. Can generally be left true even for 32-bit systems. If using a 32-bit system and having problems test as false. | |||
<pre>ExpandSystemMemoryX64=(false, true)</pre> | |||
This setting is to enable the ENBoost features of ENB to dramatically reduce CTDs. It is highly recommended to use with ENB Series. | |||
<pre>ReduceSystemMemoryUsage=(false, true)</pre> | |||
Reduce chance of CTD or low performance due to bad video drivers, however with good drivers leaving as "false" can be optimal. When "true", bad drivers can cause lower performance or pauses where they would normally just CTD if "false". Reported to help AMD users. If experiencing CTD even while above setting is set "true", try setting this to "true". If having lag or long pauses, try "false". | |||
<pre>DisableDriverMemoryManager=(false, true)</pre> | |||
When set "true" can give faster cell load times as geometry/textures are not loaded into video memory until visible. May cause stutter as more data must be dynamically loaded into memory "on-demand" as player looks and moves around. If having long cell load times it is recommended instead to first try using the "free VRAM" key (needs to be set in "''enblocal.ini''") to clear VRAM before entering a new location, or fast traveling, instead to clear video memory prior to load. Can have a similar benefit without the stutter. | |||
<pre>DisablePreloadToVRAM=(false, true)</pre> | |||
Workaround mode for users experiencing large amount of stutter, typically systems with large amount of VRAM (4GB+) or for 32-bit systems with 4GB+ RAM. For testing only, unless ENBoost [http://www.iparadigm.org/pages/pnenb/ENBoost.html utility] recommends setting it "true" for hardware being used. Does not use memory reallocation, compression, or enbhost.exe. Only works when ReduceSystemMemoryUsage=true. Alt+tab will not work in fullscreen when this is true. | |||
<pre>EnableUnsafeMemoryHacks=(false, true)</pre> | |||
Buffer for memory/VRAM swap. Generally, smaller equals less RAM use or CTD, larger equals less stutter in heavy areas with many mods or high ugrids value. | |||
For video cards with 2GB or more VRAM, 512 is a good baseline. For less VRAM, 256 can work better, but needs testing. | |||
<pre>ReservedMemorySizeMb=(256,512,1024)</pre> | |||
This setting should be set according to the available VRAM. Refer to the values on the {{#switchtablink:Installation|Installation}} tab for settings and additional information. | |||
<pre>VideoMemorySizeMb=(512,1024,...6144)</pre> | |||
This setting will allow for more compression in system RAM by having more textures moved into VRAM. This can reduce stutter, but will cost much more VRAM. It is not recommenced to be set "true" if already near VRAM limit and be "false" if there is VRAM to spare. | |||
<pre>EnableCompression=(false, true)</pre> | |||
== Window == | |||
This section is used to enable borderless window with Skyrim. This can also enable the use of Alt-Tab to run Skyrim in the background, only if EnableUnsafeMemoryHacks=false in the [MEMORY] section in fullscreen. | |||
When enabled this setting removes the border lines of the game window while in windowed mode. | |||
<pre>ForceBorderless=(false, true)</pre> | |||
This setting will remove the border line of the game window when game is set to fullscreen mode. This is best used for down sampling. | |||
<pre>ForceBorderlessFullscreen=(false, true)</pre> | |||
== Game Engine == | |||
The settings in the ''[ENGINE]'' section deal with game engine edits. It is noted by Boris that it is best to force anisotropic filtering here instead of in the video card settings. His reasoning behind this is because if forced through video card setting, the filtering will be applied to all textures and some textures should not be filtered; filtering these textures could cause issues with SSAO and parallax. Forcing filter through the ENB; however, skips these textures which should not be filtered. (This theory has not been tested by STEP.) | |||
{{Notice Small|ENBoost-ONLY users (NOT ENB graphics users!) should NOT use AF in enblocal.ini (set <code> ForceAnisotropicFiltering </code> to <code> false </code>). For some reason it is more costly than setting AF via CCC and there is no difference in the effect.}} | |||
This will force anisotropic filtering for all textures with a linear filtering type. Textures which should not have anisotropic filtering are not changed. | |||
<pre>ForceAnisotropicFiltering=(false, true)</pre> | |||
This is the level of anisotropy filtering. The values are 2, 4, 6, 8, 10, 12, 14, and 16; higher values provide better quality. | |||
<pre>MaxAnisotropy=(1..16)</pre> | |||
This will enable vsync which is recommenced to always remain active because the Creation engine will have physics issues when over 60 FPS. | |||
<pre>EnableVSync=(false, true)</pre> | |||
This setting allows downsampling to be used without forcing it through graphics driver. It is recommended to be left false and only to be used by advanced users. | |||
<pre>AddDisplaySuperSamplingResolutions=(false, true)</pre> | |||
== Setting the FPS Limiter == | |||
The limiter included in the ENBSeries is a frames per second (FPS) limiter. This will limit or cap the upper FPS limit to a specified number. This is useful to control some performance issues such as lagging, crashes, freezes, and physics issues which are present at high frame rates. This feature can be turned on and off by pressing and holding the ''Shift'' key and then pressing the ''Home'' key. It should be noted, enabling the limiter could increase load times. | |||
{{Notice Small| Some users have reported enabling the limiter causes extremely low FPS (5-15FPS) regardless of what the FPSLimit parameter is set to. If using a limiter, the driver limiter in the video card settings might be more stable.}} | |||
If enabled (true), each frame will wait until the GPU is finished drawing. This is not recommended for performance reasons; however, may fix some of the issues mentioned above. It is the same effect as setting maximal pre-rendered frames to 0 in the video card settings. | |||
<pre>WaitBusyRenderer=(false, true)</pre> | |||
When set to ''true'' it will enable the FPS Limiter feature. | |||
<pre>EnableFPSLimit=(false, true)</pre> | |||
This is the value in frames per seconds (FPS) at which the upper FPS will be limited to. | |||
<pre>FPSLimit=40.0</pre> | |||
== Changing the Input Key Bindings == | |||
In the ''[INPUT]'' section you can change the key bindings for the features included in the ENBSeries. | |||
By default, this is the ''Backspace'' key. This will reload the configuration file and shaders to view changes made without having to restart the game. | |||
<pre>KeyReadConfig=8</pre> | |||
By default, this is the ''Shift'' key. It is the primary key pressed and held for key combinations. | |||
<pre>KeyCombination=16</pre> | |||
By default, this is the ''F12'' key. This will turn the ENB effects on and off. This must be pressed together with ''KeyCombination'' key (Shift+F12 by default). | |||
<pre>KeyUseEffect=123</pre> | |||
By default, this is the ''Home'' key. This turns the FPS Limiter on and off. This must be pressed together with the ''KeyCombinaton'' key (Shift+Home by default). | |||
<pre>KeyFPSLimit=36</pre> | |||
By default, this is the * key on the number pad. This displays real-time frame rate in the upper right corner in the game. Set to 0 to disable. | |||
<pre>KeyShowFPS=106</pre> | |||
By default, this is the ''Insert'' key; however, the ''Prt Sc'' (Print Screen) key also works. This captures a screenshot to a BMP and/or PNG file in the same folder where ENBSeries is installed. | |||
<pre>KeyScreenshot=45</pre> | |||
By default, this is the ''Enter'' key. This will open up the in game GUI when pressing ''SHIFT+ENTER''. | |||
<pre>KeyEditor=13</pre> | |||
By default, the FreeVRAM function is assigned to ''f4''. This will clear VRAM in use to help not hitting VRAM limit. | |||
<pre>KeyFreeVRAM=115</pre> | |||
== Adaptive Quality == | |||
The [ADAPTIVEQUALITY] section allows resource hungry graphical features to be turned off on demand to maintain a minimum FPS. It requires the proper code to exist in the ''.fx'' files. Probably best when added to enbeffectprepass.fx because it has the most demanding effects code. | |||
<pre>Enable=(false, true)</pre> | |||
This is the quality of the effect. It can be set to 0, 1, and 2, where 0 is highest quality and 2 is the highest performance. | |||
<pre>Quality=(0, 1, 2)</pre> | |||
This setting is the minimum FPS that is allowed, so features will start to turn off to stay above this threshold. | |||
<pre> | |||
DesiredFPS= | |||
</pre> | |||
== Antialiasing == | |||
This will enable or disable four of the ENB's AA solutions. All four can be used together since Boris has taken great care to balance them. It is also possible to these a with SMAA injector, though using Temporal AA and Edge AA together can cause some blurriness around tree branches. | |||
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 better, higher quality solution for EdgeAA, but can still use TemporalAA and SubPixelAA. | |||
<pre>EnableEdgeAA=(false,true)</pre> | |||
The TemporalAA setting no longer requires a helper mod, as of ENB v0.213. This is excellent for screenshots at removing jaggies and may not be preferable for general use because it can cause doubling on high motion objects, but that is slightly noticeable. | |||
<pre>EnableTemporalAA=(false, true)</pre> | |||
This setting will enable SubPixalAA on specular reflections and should only cause a minimal performance impact. This setting recommended to be "true". | |||
<pre>EnableSubPixelAA=(false, true)</pre> | |||
Set true to use TransparencyAA, for probably the best quality reduction of jagged edges on things like grass and hair. TransparencyAA was only available through driver at a minimal cost, but it would disable deferred rendering that is required for some ENB effects. Now it can be enabled here without disabling deferred rendering, but the reduction in performance may be substantial. Only recommended for high end systems. | |||
<pre>EnableTransparencyAA=(false, true)</pre> | |||
== Game Fixes == | |||
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 related issues and errors. It is generally not needed. | |||
<pre>FixGameBugs=(false, true)</pre> | |||
This fixes parallax texture rendering issues by changing the shader used on those textures so the effects are rendered correctly. Was implemented as a fix for NVIDIA users, but is generally not needed anymore. Use it if you are having issues with parallax texture; else, leave it set to "false". | |||
<pre>FixParallaxBugs=(false, true)</pre> | |||
This setting helps reduce aliasing of snow on mountains and other similar objects. It is recommended to be "true". | |||
<pre>FixAliasedTextures=(false, true)</pre> | |||
Tells the ENB to ignore rendering on loading screens. This speeds up loading and prevents issues related to loading screens. Recommended setting is "true". | |||
<pre>IgnoreLoadingScreen=(false, true)</pre> | |||
Same as above, but tells the ENB to ignore rendering on the inventory screen. Recommended setting is "true". | |||
<pre>IgnoreInventory=(false, true)</pre> | |||
This setting fixes the a water transparency issue that can occur with SSAO, sometimes making some water textures to appear black. Recommended setting is "true". | |||
<pre>FixSsaoWaterTransparency=(false, true)</pre> | |||
The setting fixes transparent objects like hair and eyebrows that computed for SSAO/SSIL reflections. Recommended setting is "true". | |||
<pre>FixSsaoHairTransparency=(false, true)</pre> | |||
The setting is a fix for the small color differences in the parts of models. If this setting is "true" and ColorPow parameter is greater than "1.0" the differences are more noticeable. | |||
<pre>FixTintGamma=(false, true)</pre> | |||
This setting will remove Skyrim's static Depth of Field that is used when some weathers are active to blur distance landscapes. | |||
<pre>RemoveBlur=(false, true)</pre> | |||
This setting will fix the issues with Subsurface Scattering for interiors and exteriors, and will prevent pixelated edges on the characters and objects. Recommended to be set to "true". | |||
<pre>FixSubSurfaceScattering=(false, true)</pre> | |||
= Editing Enbseries INI = | = Editing Enbseries INI = | ||
Line 810: | Line 1,002: | ||
<pre>SubdermalMix=(0.0... )</pre> | <pre>SubdermalMix=(0.0... )</pre> | ||
= Advanced Editing = Β | = Advanced Editing = Β |
Revision as of 00:43, September 1, 2014
Template:Notice A comprehensive guide for properly setting up ENB for n00bs and gurus alike -- by the S.T.E.P. Team