Introduction
Batman Tweak (BMT for short) is a utility designed to sort out major performance and stability issues that plagued the PC version of Batman™: Arkham Knight at launch. It makes corrections to three key configuration files (BmEngine.ini, BmSystemSettings.ini and GFXSettings.BatmanArkhamKnight.xml) and on systems with NVIDIA GPUs installed it can also modify select driver settings specifically for this game to further enhance stability and performance.
This manual is -- thorough -- perhaps a little bit too thorough for a lot of people. There are Cliff's notes in the download thread that will tell you the bare minimum set of buttons to push here. To get the most out of the utility, you should probably press on though, or at least pick and choose sections that look interesting (Suggested Settings).
Installation
It is not necessary to install BMT, as long as you have run Batman™: Arkham Knight at least once, the tool will locate all of the necessary configuration files automatically.
The first time you run BMT, it will ask for permission to backup your existing configuration files. To restore your configuration from backup, refer to Appendix A.
Display Properties
Suggested Setting:FullscreenBorderless WindowSuggested Settings:48723060Smoothed RangeSuggested Initial Settings:
Resolution: The width and height of the game window or resolution in fullscreen mode.
Refresh Rate: The engine will attempt to set the display mode to match this when fullscreen mode is selected, but is more likely simply to match whatever your desktop is set to.
Window / / :
Batman™: Arkham Knight has three possible display modes, Window and are self-explanatory but ....
A will -- when the resolution matches the desktop -- fill the entire screen and has some key benefits that does not:
Tearing is completely eliminated without the need for V-SYNC!
Input latency may be drastically reduced
Lengthy display mode switches when switching applications (e.g. ALT+TAB) are eliminated
Possible negatives associated with s include:
To lower the render resolution but still fill the entire screen, you must manually change your desktop resolution
NVIDIA SLI and AMD CrossFire do not work at peak efficiency in this mode
Some video capture software cannot cope with borderless windows
The first two benefits may look familiar if you have a G-Sync or FreeSync monitor. Borderless windows offer some of the same benefits but are not quite as effective; to properly use G-Sync or FreeSync, select mode.
FreeSync / G-Sync Monitor: Everyone Else: (also click Match Desktop)
VSYNCPrevents tearing in mode.
(This cannot be engaged in Windowed or mode)
On systems with NVIDIA GPUs installed, use the NVIDIA Driver Tweak tool (discussed later) to adjust VSYNC mode instead; it gives you much more sophisticated options.
Maximum FramerateBy default, the game is capped to FPS. This was done primarily for stability, but also because the game was so poorly tested that performance is unpredictable above FPS.
>> The tweaks in this tool address both issues:
Changes to critical texture streaming settings have corrected stability (these even apply when the default limit is left in-place)
Hitching from texture overload is eliminated and the majority of remaining performance problems are related to GPU horsepower rather than data transfer shenanigans.
It is, therefore, safe to raise the framerate cap beyond .
The existing portions of the game remain unoptimized (and very likely were never performance tested in the first place). So although it is possible and safe to exceed FPS, the possibility of sustaining any common refresh rate above FPS at a standard resolution is virtually nil.
144 Hz Monitor: or /120 Hz Monitor or TV: or
Framerate SmoothingThe game as it shipped is so poorly tested that framerate will fluctuate, no two ways about it. If this bothers you, you can have the game engine compensate by temporarily slowing down and speeding up the game in response to large framerate changes.
This is the range of framerates the engine will attempt to keep the simulation running at. If the framerate falls below or goes beyond this range, the engine will not make any adjustments and this is a very important thing to keep in mind (do not set minimum too low).
< The effect framerate smoothing has on gameplay is a gradual one; the larger the set range, the more obvious it becomes that something artificial is happening behind the scenes. Large ranges will increase the time it takes for framerate to stabilize in the middle. >
+/- 5% of target framerate - (e.g. 57-63 if desired framerate is ) Fool around with this range to your liking, focusing primarily on the lower number: the effect it has is difficult to explain in words and your ability to tolerate it will vary.
Texture Streaming
Suggested Settings:
Batman™: Arkham Knight is an open-world game and it suffers from no loading screens. To accomplish this, the player is dropped into the world before detailed textures are loaded into memory and the process of loading these textures into (and out of) memory is known as streaming.
Streaming is a two-way operation on the PC; texture data is fetched from disk and loaded into and removed from memory using a simple and ineffective prioritization algorithm. The majority of performance and image quality issues are caused by this prioritzation algorithm and the poor way that it was configured in the shipped game.
In this section, the most important part of the entire tool, you will find a collection of pre-tuned performance profiles. These profiles are designed to fix the stability issues that lead to the game's 30 FPS cap, with a strong secondary emphasis on minimizing hitching and final emphasis on loading high-resolution images as quickly as possible (without violating either of the other two requirements).
The streaming performance profiles are:
* Default (Broken)
These are the settings the game shipped with, and the asterisk (*) denotes that they are both unstable and extremely inefficient. AVOID THIS BUTTON!
Balanced (Tuned) { Suggested Initial Setting }
This profile is designed to give the best all-around mix of performance, stability and texture pop-in.
In testing, pop-in (the sudden and very apparent appearance of higher quality texture images) is moderately reduced compared to the Default profile on most systems.
Slow (Tuned)
This profile reduces the number of textures loaded per-frame in order to reduce hitching even more than the balanced profile.
Pop-in is generally worse than the balanced profile, but on some lower-end systems the use of a cache file (unique to this profile) may improve load times on HDDs.
Fast (Tuned)
This profile aggressively increases the rate of texture load beyond the balanced profile, while still reducing the amount of hitching versus the default profile.
Pop-in is generally much better than the balanced profile, but the rate of data transfer and lack of cache file means this is ideally suited for systems with SSDs or 10K RPM HDDs.
The Unreal Engine uses a system to try and hide the appearance of pop-in called FadeIn/FadeOut. In practice, this system increases hitching and what's worse is almost completely invisible in this game.
FadeIn Rate The amount of time to blend a lower resolution image with its higher resolution counterpart after the higher resolution image replaces it
FadeOut Rate The amount of time to blend a higher resolution image with its lower resolution counterpart before the higher resolution image is replaced
Both of these things make no appreciable difference in this game, and you will get better performance if you change them to Instant.
Texture Quality
Suggested Setting:CauseImprove
Batman™: Arkham Knight has a truly massive set of textures that, if the game had its way, would be loaded into VRAM and never removed. This is, of course, completely impossible and steps must be taken to ensure what textures actually do fit into VRAM during any given frame are consistent in resolution.
The priority streaming system discussed in Texture Streaming is very ineffective in this game, and thus VRAM requirements are exceptionally high. It is no exaggeration to say that 2 GiB is the bare minimum to load the low-resolution texture set, in fact it arguably an inadequate amount of VRAM given the default configuration!
In this section, you will find options designed to reduce the game's VRAM requirements and adjust general image quality.
Two texture profiles are included in this tool
(+) Default: { Suggested Setting }
This profile is new in version 1.01, it allows you to change anisotropic filtering in-game and replaces the old Default. This setting will give you the best performance and in-game control.
Maximum Quality:
This profile favors image quality above all else, it will force the highest quality anisotropic filtering on every type of texture where doing so will not create artifacts.
Texture Resolution
Low: Select this if you have less than 3 GiB of VRAM, if when Normal is selected the game has trouble keeping all textures the same level of detail, or if you find the game is frequently using too much system memory.
Normal: Select this if you have 4+ GiB of VRAM - cards with 3 GiB may be able to handle these textures, but this will largely depend on the amount of system memory you have to support low VRAM.
High: Select this if you have 6+ GiB of VRAM. The difference between Normal and High is very slight, you can performance on all systems with a minimal loss in image quality if you opt for Normal resolution.
Filter Type
Anisotropic filtering is effectively free (performance wise) up to 4x on modern GPUs, but if you have enough GPU horsepower and your resolution is not set too high you can further increase image quality by selecting 8x or 16x AF.
Trilinear filtering (isotropic) or 2x AF are unlikely to performance any, but are included options anyway.
4x AF; try higher if maximum framerate does not suffer -- this setting will neither nor any hitching problems.
Post-Processing
Suggested Setting:Suggested Settings:
The majority of performance issues in Batman™: Arkham Knight are texture related, but a few minor tweaks to post-processing effects will improve performance if your card is resolution-limited (e.g. struggling to handle 1440p / 4K).
In this section, smaller numbers are less demanding but will produce lower quality results.
Blur Sample CountThe number of neighboring pixels to process during blur image processing effects
4
Shadowmap ScaleThe number of shadowmap texels to read when applying shadows to each pixel
1080p: 1.0, 1440p: 0.666, 2160p: 0.25
PhysX Settings
Many of the GameWorks features in this game are performance-bound by PhysX, offloading PhysX to a dedicated GPU instead of using SLI is a good first effort to improve said performance, but more can be done.
This section pertains almost exclusively to systems with NVIDIA GPUs installed.
Disable Hardware PhysXBy default, the game is setup to disable hardware-based PhysX unless a CUDA capable GPU is detected that is not being used for rendering.
You may see an improvement in PhysX performance in single-GPU configurations if you change this.
PhysX LevelHigher levels will enable you to utilize more memory and compute power on a dedicated PhysX device.
The game dynamically selects this at run-time and pushing these buttons only serve as a hint to tell the game what to do.
GPU to tune PhysXIn a system with multiple NVIDIA GPUs installed, this allows you to select the GPU that has been dedicated to PhysX.
This is not a game setting, it is used to calculate PhysX memory to reserve when the button labeled "Tune PhysX Memory" is pressed.
Tune PhysX MemoryThis will tweak the amount of memory reserved for PhysX to queue up processing workload and cache mesh data (e.g. smoke, paper debris, fractured building debris)
The current heuristics are rather straighforward and unscientific (and rounded to the nearest power-of-two):
PhysX on Render GPU: heap size = (0.05 x VRAM); mesh_cache = (0.25 * heap_size) Dedicated PhysX GPU: heap size = (0.25 x VRAM); mesh cache = (0.25 * heap_size)
{ You do not need to understand how this works, just press it to make hardware PhysX work more efficiently }
Misc. Tweaks (Effectiveness Unknown)
This section contains settings that the community collectively believes do something, but have not been verified.
I Have No Comments As To Which Settings To Use - They Could All Be Hocus Pocus
General Performance Settings
Suggested Settings:Suggested Setting:Suggested Setting:
This section contains all of the general settings you can modify in-game that are not tied to resolution or some NVIDIA GameWorks feature.
Level of DetailControls the distance before objects, textures and the world in general are replaced with lower-quality approximations.
Given the rather high hardware requirements published for this game, it is unlikely that setting this High/Normal/Low will make any difference; the range of adjustment is simply too insignificant. >> Lengthy local testing on two different systems suggest you can set this High and forget about it on virtually any GPU/CPU that meets the minimum requirements... you might even see higher detail textures quicker if you do this. <<
Shadow QualityControls the resolution, update frequency and type of shadows used: (lower values will slightly reduce VRAM requirements and GPU processing workload)
Start with Low, try Normal and then High - if you cannot see a difference (which is very likely) keep it set to Low and enjoy slightly more consistent performance.
AntialiasingEnables a shader-based post-process blur filter that probably should not be called anti-aliasing (FXAA, MLAA or something similar).
This blur filter is very ineffective at anti-aliasing, about the only thing it does well is blur rain drops. >> I STRONGLY suggest you turn this off, it will improve both performance and image quality.<<
GameWorks Settings
(Requires Hardware PhysX)Suggested SettingOnExperiment(Requires Strong Hardware PhysX)Suggested SettingOffSuggested SettingWhatever Looks Nicer To YouSuggested SettingAVOID AT ALL COSTS, THIS IS NOT HYPERBOLE
This section controls most of what's broken in the game aside from texture loading.
Interactive Paper Debris : if you have dedicated PhysX and have no trouble reaching your FPS target, otherwise
Interactive Smoke : unless you have dedicated PhysX and the Batmobile is not giving you major performance issues.
Enhanced Rain EffectsThis setting has almost no impact on performance, but at the same time cannot be seen if anti-aliasing is enabled.
:
Enhanced Light ShaftsAdds volumetric lighting effects to spot lights (simulates atmospheric light interaction).
At anything above 1080p this effect will bring most GPUs to their knees when it kicks in and when offloaded to a dedicated GPU co-processor the effect still stings. It is second only to texture streaming in causing framerate fluctuations!:
Framerate Hacks
MUSTI Urge You
This section is dedicated to inelegant quick-fix solutions to some of the stranger framerate issues in the game.
Beginning with BMT v. 0.45, these settings have been limited to MaxDeltaTime.
MaxDeltaTime
As the game's framerate begins to fluctuate, physics may become "wonky," with objects warping back and forth rather than following a predictable straight path; this setting and the disucssion that follows may help.
The problem just described is referred to as temporal aliasing and the engine will use this particular setting in an attempt to properly align physical simulation with the visible framerate. It is similar to, but nowhere near as intuitive to adjust as the framerate smoothing option in the display properties section.
Ideally the necessary value would be calculated by the engine and/or game developers themselves. In fact, when things are working correctly the default value is appropriate for almost any framerate. But things rarely seem to work correctly in this game.
If the Batmobile is warping all over the place when you are driving in a straight line and thugs appear to be high on methamphetamine, you may need to increase this value.
>> After extensive testing, the primary reason you would need to adjust this setting turns out to be pre-rendered frames (NVIDIA terminology) or Flip Queue Size (AMD's terminology). This problem will largely go away if you reduce that driver setting to 1 instead of touching this hack. <<
Although peak framerate may suffer by setting pre-rendered frames / flip queue size to 1, motion and texture streaming stability are drastically improved and I actually do not suggest using any value other than 1 when playing this game. No driver ships with this set to 1 out-of-the-box, and you manually adjust this. On systems with NVIDIA GPUs installed, you can make this adjustment directly with the built-in tweak tool. AMD systems will require you to use a third-party utility such as Radeon Pro. to make this adjustment; it profoundly fixes many problems in this game that no amount of engine configuration tuning can even begin to address.
GPU Info
NOTE:Physical
You will find a list of installed graphics hardware here, useful for debugging.
On NVIDIA hardware this will report every GPU in the system. That means a GTX Titan Z will be reported as two adapters with 6 GiB of VRAM each; this is not a bug, a Titan Z is one logical GPU with two GPUs.
On a system with NVIDIA hardware installed, this is also where you will find the special driver tweaks tool button.
>> AMD has no equivalent API to change driver settings, so tweaking AMD drivers is not part of this application. Do not mistake this for some sort of NV vs. AMD bias, the tool would do this if it were reasonably possible and is just as suited to fix issues on AMD hardware as NV.
The general driver tweaks discussed are relevant to AMD too if you know the equivalent setting
NVIDIA Driver Tweaks
Suggested Setting:Suggested Setting:Suggested Setting:Suggested Setting:"Force Single-GPU"Suggested Settings:Multi-GPU (1 Render + 1 PhysX)Single-GPUSuggested Setting:Suggested Setting:ALLOWNeeds
This section is dedicated to a couple of fixes at the driver-level that will make the game an altogether more playable experience. Some of them are NVIDIA-specific, but others will apply to any vendor's hardware.
When you use this tool, it applies these changes ONLY to this particular game, you do not have to worry about it interfering with any other game
Maximum Pre-Rendered FramesControls the number of frames that the graphics driver is allowed to queue up that aren't rendered yet
This setting directly contributes to input latency. Higher values add variability to input latency, and that does not help this game in the slightest (think Batmobile). While setting it to 1 is usually discouraged, because it keeps the GPU on a short leash and hurts overall framerate, this game 1 for both stability and proper gameplay mechanics. You will get a smoother experience with this set low than high in this particular game.
1
VSYNC ModeAllows you to override the game's setting and select from more advanced optons.
Use Application Setting
Force Off
Force On
1/2 Refresh
1/3 Refresh
1/4 Refresh
The first three options are self-explanatory, but the fractional refresh settings may not be.
>> Say you have a 120 Hz monitor, and the game is correctly running at 120 Hz. The 1/4 refresh option will artificially limit you to 30 FPS and frame timing will be in-synch with your display device. Using VSYNC to limit your framerate is preferable to setting Maximum Framerate (see Display Properties) to 30 if you have a stable framerate - it will give the smoothest possible motion.
Adaptive VSYNCPrevents drawing above your refresh rate without penalizing you for drawing below it.
VSYNC ordinarily times frames to some factor of your refresh rate and can slow things down to prevent tearing; this mode does not do that and you will see tearing if you cannot keep your framerate high enough.
Ignore; try a borderless window instead.
SLI Frame PacingIn a 2-way SLI configuration this setting smooths out the frames to minimize "microstutter".
SLI doesn't work right, so ignore this for now.
SLI ModeControls how the workload between multiple GPUs is split to produce better performance.
Generally speaking you want AFR (Alternate Frame Rendering) in a 2-way configuration and ASFR (Alternating Split Frame Rendering) in a 3 or 4-way SLI setup. The driver (353.30) only ships with settings that are compatible with AFR1 across two GPUs, and even though it's compatible for the most part (smoke will tend to flicker), you get no benefit from SLI.
If you have 3 GPUs, you actually have to dedicate 1 to PhysX to play this game - it's not an option with the way the official 353.30 drivers ship. The game will crash at launch if you have all 3 GPUs setup for SLI in NVCPL.
If you have 2 GPUs, or if you fixed the problem mentioned with 3 GPUs above, you still need to disable SLI, or the game will perform significantly worse (unacceptably variable input latency) than if you only had a single GPU.
Until SLI is fixed by a combination of driver and game patch, use and dedicate your other GPU to PhysX.
Powersaving PolicyThis is exactly what it sounds like, the driver will attempt to underclock the card when it's not being used for rendering or when load is low.
Load is unpredictable in this game, and to keep the driver's intelligent power management from making matters worse, avoid the default "Adaptive" setting.
: Prefer Consistent Performance : Maximum Performance
Texture LOD BiasThis setting allows you to increase the distance that high-resolution textures are displayed.
When combined with anisotropic filtering a Negative LOD Bias sometimes causes aliasing artifacts (texture shimmering), but may be the only way to get certain surfaces in the game legible given how messed up the texture loading system is.
-1, possibly as low as -3 if textures tend to be too blurry.
Allow Negative LOD BiasThis option is only here because some people have a tendency to clamp negative LOD biases in the global driver settings.
-- this game actually negative LOD biases for two types of textures, and you will not be getting the game experience Rocksteady intended if you do not "Allow Negative LOD Bias"!
Appendix A: Troubleshooting
Software has flaws, there is no denying this and this entire software is designed to correct many. But in the event that this software itself is causing trouble, there are a few measures you can take.
To access the tool's special debug menu, double-click any empty space in the program and the GPU Info section will switch from GPU Info to Debug Utilities. These utilities are designed to fix problems in the tool itself, which though rare, may cause problems with the game.
v 0.47 of BMT introduces "Delete All Config Files."
This function will restore your game to its original state the next time you run it. Immediately after you execute and confirm this command, your game will be in a state where the tool will no longer operate. You must run the game one time after using this command, and then you can use this tool again.
v 0.48 of BMT introduces manual "Backup" and "Restore Config Files."
This allows you to backup the config (as it exists before you press Save) or restore it as it existed in the timestamp indicated. The backup button's timestamp is the age of your current configuration, the restore button's timestamp is the age of your backup.
Backup files created by this utility all have the extension .bmt and reside alongside your INI and XML configuration files.
Appendix B: Misc. Tips And Tricks
Fullscreen Borderless Window at Any ResolutionIf you read the discussion on the cons of borderless windows, one of them was that to make them fullscreen they have to match your desktop resolution.
That is true, but... there is a special feature I built-in to this software, where it can temporarily change your desktop resolution like magic. If you click the Borderless Window radio button a second time it will turn into a checked square to indicate this special mode. Leave BMT running while this mode is active and it will monitor for the launch/exit of Batman™: Arkham Knight and change your desktop resolution to match your render resolution.
This makes proper fullscreen borderless windows at any resolution a lot simpler (that functionality is not built-in to the game, though it should be). I make heavy use of this myself - I cannot sustain 60 FPS at 4K on a single GTX 980, so I like to run the game at 1440p; my native desktop resolution is 3840x2160 and I do not like changing it by hand.
Here is how I work around that:
After engaging this mode, simply leave the tool running and it will do the rest for you.
Testimonials
Source: https://steamcommunity.com/sharedfiles/filedetails/?id=484128370
More Batman: Arkham Knight guilds
- All Guilds
- Batman: Arkham Knight
- Batman: Arkham Knight Guide 420
- Disable Startup Logos
- Adam West Skin (No mesh codes)
- Batman: Arkham Knight Guide 414
- HOW TO GET BEST PERFORMANCE [OPTIMIZATION MUST READ!!!!!]
- Batman: Arkham Knight
- Arkham Knight Collectables & Achievement Guide
- Batman: Arkham Knight Guide 397