Knowledge base


sYnThEtIc | 19-10-2013, last modified: 19-10-2013

Tweaking Renderer Settings

Renderer Settings in DeusEx.ini or Preferences Menu, With Explanations


  • You can manually change the renderer from the same ini by placing the full class name after 'GameRenderDevice=' under 'Engine.Engine'. For OpenGL it would be OpenGLDrv.OpenGLRenderDevice. You can spy the renderer names from the same file, just copy the header of the rendering block variables without the brackets. Alternative is to use Launcher setting or game display menu, but mentioned here for further convenience. If changed from Preferences menu, new renderer and any changes will initialize once you go fullscreen (exit preferences menu).
  • Many settings that deal with game visual quality are defined in basic settings page and are not renderer specific; whatever renderer you use, you should first configure WinDrv.WindowsClient that is found on first, 'Basic' tab.







High Quality Settings for Game Default Windows Rendering Driver


[WinDrv.WindowsClient]
This is the default windows manager class that handles some basic settings, allowing you to see the game on your screen. Some quality levels are set here, colour depth being among the more significant ones, as well as what resolution the game runs at.All the following settings belong under this header.

WindowedViewportX=640
WindowedViewportY=480

Your windowed mode resolution, you can change it if you want, but unless you manually set rendering device for Windowed it will use Software Rendering which means that you might as well be playing without any video card at all.

WindowedColorBits=32
16bits or max supported 32bit; values are 16 and 32

FullscreenViewportX=1600
FullscreenViewportY=1200

Kentie's Launcher takes care of this for you. Change it to your native or high quality resolution, ie 1920x1200 or 1680x1050 for 16:10. The game will reset to non-widescreen if you go to settings menu in-game - Kentie's Exe should fix this when you return to game. * verify
X is horizontal, Y vertical

FullscreenColorBits=32
16bit for lower quality or 32bit for higher quality

Brightness=0.600000
In-game brightness setting, if you max this out and still have problems, check renderer settings for gamma correction and OneXBlending if you use OpenGL and cannot change brightness from here.
Min: 0.0 Max 1.0

MipFactor=1.000000
Quality of mipmapping from 0.0 to 1.0 ; 1 is better quality but slower.

UseDirectDraw=True
DirectX 7 code-piece (api) that accelerates graphics rendering. LINK Unclear if this option has any effect with OpenGL or new hardware and custom renderers. *
'False' disables DD rendering hardware acceleration.

UseJoystick=False
Used if you intend to play Deus Ex on a Joystick; setting it to False is reported to give a small performance increase LINK
GamePad/Joystick Support

CaptureMouse=True
Might get small performance increase from 'False' if you don't have a mouse. This option probably toggles mouse detection and use, similarly to UseJoystick.

StartupFullscreen=True
'False' starts the game always in Windowed mode.

CurvedSurfaces=True
Can set it to true in case any vertex meshes exist anymore, but this became obsolete with the LOD Meshes conversion. Not sure if it works at all in DXMP. L
May affect performance to some degree, so Performance Settings should set this to False.

ScreenFlashes=True
This is used when the screen changes color when you get hit, or are in underwater. Disable if it gets on the eyes.

NoLighting=False
If you are on a very low end system like a Pentium 133, change it to true.

SlowVideoBuffering=False
For Software Rendering. May speed up transparency when enabled and primarily deals with stutter problems.

DeadZoneXYZ=True
Stops axis movement control if there is no movement on XYZ? Something to do with joystick spinning problem which requires this and DZ RUV set to True.

DeadZoneRUV=False
Enabling this stops the character spinning on gamepad/joystick.

InvertVertical=False
Vertical view direction swap.

ScaleXYZ=1000.000000
Joystick View Axis speed. Mouse axis speeds are controlled from User.ini
MouseX=Axis aMouseX Speed=6.0
MouseY=Axis aMouseY Speed=6.0

ScaleRUV=2000.000000
Joystick movement axis speed? Joystick/gamepad guide recommends setting these axis speeds to same value of 1000.0.

SkinDetail=High
'Low' | 'Medium' | 'High'
Controls 3 levels of mesh texture detail;

TextureDetail=High
2 levels of engine controlled texture detail: 'Low' and 'High'
Low will give textures a more blurred look to the game though

Decals=True
Decals are blood splatters, bullet holes, etc - disable as last resort if you really struggle with fps.

MinDesiredFrameRate=30.000000
When your FPS goes below MinDesired FPS the game will start reducing visual effects in order to keep framerate higher. Change this to ~30-50 for competitive multiplayer, or 60 if your FPS cap is around 80-100.

UseDirectInput=False
Set this to True to disable mouse acceleration in Deus Ex, but note that you will not be able to access any menus with mouse in fullscreen as it gets stuck in the screen corner. Go to windowed mode to have use of mouse. In game it works fine. Set to False here as it has nothing to do with quality. Kentie's Launcher should fix problems with this on Vista and up, XP remains bugged. * details needed
Enable it to use extra mouse buttons. * details needed

NoDynamicLights=False
Setting it to true may lead to minor FPS gain for really struggling hardware, false for normal or quality settings. Toggles dynamic lights on anything that has them - possibly some projectiles; flag carriers in UT.



High Quality Settings for Kentie's Direct3D 10 Rendering Driver (v28)

This Direct3D 10 renderer for Unreal, Unreal Tournament, Deus Ex and Rune aims to provide a good, consistent looking and future proof renderer for these games. The focus is not on fancy effects; the idea isto have something that will allow these games to perform well and look good on modern systems, something which I can support and bugfix. Written from scratch, it ditches a lot of legacy stuff and profits from the fact that D3D10 support means a clear baseline. Furthermore, source code and documentation are provided (see author's page 2), which should aid future efforts to keep these games running.


[D3D10Drv.D3D10RenderDevice]
Class containing code that renders everything you see in the game, here designed for Microsoft DirectX 3D rendering API. It uses the capacity of your graphics card to accelerate rendering when specified and supported. Kentie's renderer takes some quality aspects for granted and always runs at 32bit and always has all engine detail settings enabled. * documented, verify Your 'GameRenderDevice=' should be set to D3D10Drv.D3D10RenderDevice for the values to work (or selected from launcher or game menu), obviously.

Coronas=True
Adds coronas to lights where applicable. True by default, it makes it possible to see lights that have a skin associated with them, setting it to false likely disables some light sources in your game, ie streetlamps; I wouldn't expect much of a performance gain from this.L
Pro players disable this for online gaming, decreasing visual irritation and enabling them to see players that attempt to hide in coronas.

DetailTextures=True
Detail textures enable some extra detail on surfaces where the feature is available, example provided by Kentie below. It would provide a bit of desirable quality even in multi-player, and it is not recommended to disable it unless for debugging for extra few potential fps. IMAGE?

ShinySurfaces=True
Reflective surfaces. 'False' disables reflect, likely also from mirrors. Minor performance impact.

HighDetailActors=True
Hard to find information on this, but having it disabled may result in masking issues or otherwise reduce visuals on maps.L

VolumetricLighting=True
Enables Fog. See beams of light, and maybe other light effects. Minor FPS gain from disabling. L

Precache=True
Texture and model pre-caching may improve performance by initializing internal data structures for a number of world textures and most likely getting them loaded into video memory at level load time. It will also slow level loading down some.

Antialiasing=4
Specifies the number of samples to use per fragment for antialiasing which itself smoothens any jagged edges on objects when viewed at an angle. 2 and 4 are common values that should work on many video cards, but 8 might work. Set to 4 to be safe. Some also prefer to leave it at 0 (disable), as it can mess up menu buttons and provide minimal effect. One guide states that 8 is max valid value, others mention 16. L
Bigger performance hit than AF.

Anisotropy=16
Controls the use and level of anisotropic texture filtering which improves the look of distant objects as well as textures seen from certain angles. Disabled if set to 0.
Should make no difference if set to 1 (isotropic texture filtering). If set to greater than 1, specifies the maximum degree of anisotropy to use for texture filtering. It is memory intensive filtering method, but provides better quality on good hardware.
Values go from 1 to 16 which is the max level of anisotropy filtering, greater values make textures sharper at low angles. In most cases this value set to 16, 8, 4, 2. Setting it to 16 may produce too sharp textures if they have any kind of thin lines, use 8 if this happens.
Trilinear filtering is performance friendly alternative for old computers if you still want some quality but struggle with AF.

VSync=False

Synchronizes the game's frame redraws with monitor updates, reducing visual tearing. However, some people seem to experience input lag with this enabled (in other games as well). Valid settings: true/false. Default: true. Here set to False for aiming optimization in multi-player.

ParallaxOcclusionMapping=True
Gives surfaces 3D relief. Pretty GPU intensive, and you might not like the way it looks. Will use an external height map texture if present, otherwise the detail texture is used. Valid settings: true/false. Default: false. Here 'True' for potential quality gain - certainly disable among first things if you struggle for FPS.

LODBias=0
Allows mipmap selection bias to be adjusted. Use negative values to pseudo sharpen textures. Use positive values to blur textures and potentially improve performance at the expense of blurry textures. Increase in small values, like +/- 0.50000. Here set to default for pure quality gain without noise or blur.

AlphaToCoverage=True
Smoothens the edges of 'masked' textures such as grates and leaves. Unfortunately, this does lead to artifacts where the textures don't tile (example). Requires at least 4x anti aliasing enabled to take effect. Valid settings: true/false. Default: false. Note: on some hardware this setting seems to result in black backgrounds around HUD icons, etc. I suspect this is a driver issue.

DescFlags=0
Description=
Description notes your graphics card name once initialized, but has no purpose other than providing you or anyone receiving your entries some information. DescFlags seems to be a related option but no information is available regarding its purpose.

FrameRateLimit=120
why is this here..?

BumpMapping=False
Can be ignored unless you've got special textures installed. Attempts to
fake bump mapping if textures have normal maps present. Requires a
normal map to be either present in the texture's bump map slot, or
provided as an extra external texture. Valid settings: true/false.
Default: false.

ClassicLighting=False
With this enabled, the lighting matches that of the original renderers.
Otherwise, D3D10 renderers before version 18 use a more vibrant lighting
scheme; after version 18 HDR is used (in which case reverting to classic lighting improves performance). Valid settings: true/false. Default: true.

AutoFOV=True
Set to False if you know how to configure correct or competitive FOV.

FPSLimit=120

simulateMultipassTexturing=True
Recreates how the Glide renderer (or other renderers with single-pass
multitexturing disabled) draw translucent surfaces. Greatly improves the
look of various skies and alters the look of reflective surfaces and
some windows. Can be turned off for the look most people will be used to. Valid settings: true/false. Default: true.

unlimitedViewDistance=False
Sets view distance to the maximum supported map size. By request. No reason to touch this.




High Quality Settings for OpenGL Renderer 2.1 by Chris Dohnal, With Details

This enhanced UT OpenGL renderer supports some new options. The source code has been modified extensively. Although I did not try to break Linux support completely, I did add some Windows specific code. Supports S3TC.



The following settings have been optimized approximately for best quality and may not work on all hardware. Read
descriptions and modify accordingly. Use CTRL+F to quickly find your
setting of interest. Copy-Paste links for HQ and LowQL are in the footer
of the post.

[OpenGLDrv.OpenGLRenderDevice]
ZRangeHack=True
An experimental option that can make the z-buffer work better for far
away objects. Might cause unexpected problems, but doesn't seem to break
anything major so far. Will fix problems with decals flickering in the distance with 24-bit z-buffers, which is the most you can get on many video cards. Will also fix the
issue with the Redeemer covering up part of the HUD. Partially breaks
weapon rendering on the first person view one if using wireframe debug
mode (will clip near parts of it). Doesn't help enough to make 16-bit
z-buffers work correctly.

NoAATiles=True
Enable this option to disable antialiasing when drawing tiles as seen
from the lower half renderer perspective. This should eliminate HUD
corruption that can occur when antialiasing is enabled. Some video
hardware / drivers do not support the functionality required to enable
this option. Note that corruption with antialiasing enabled can still
occur on the logo background if using Entry.unr on startup (it's not
made of tiles from the renderer perspective).

NumAASamples=4
Specifies the number of samples to use per fragment for antialiasing. 2
and 4 are common values that should work on many video cards, but 8
might work. Bigger performance hit than AF. Set to 4 to be safe. Some
also prefer to leave it at 0, as it can mess up menu buttons and provide
minimal effect. One guide states that 8 is max valid value, others
mention 16. L

UseAA=True
Enables multisample antialiasing which reduces the number of jagged edges shown on screen. For the OpenGL renderer, requires the GL_ARB_multisample extension. Disable if you want to reduce lag in intense firefights.

MaskedTextureHack=False
Enabling this option can prevent rendering problems with masked textures
when the same texture is applied to different polygons that do not have
the masked attribute set consistently across all of them. Likely
examples of masked texture problems are rendering errors with solid
colored boxes around railings and trees that can often times be fixed
with the flush command. There is some risk to using this option, which
is why it's called a hack option. It's likely to be very safe, but not
completely safe. Implementing it the completely safe way is a lot of
extra work, so it uses the simple solution. If it does happen to fail, there will be some completely incorrect textures on some objects. Enable this if you see black where something should be transparent (ie crosshair, perhaps windows).

SmoothMaskedTextures=True
The SmoothMaskedTextures option will use alpha to coverage if AA is enabled with 4 or more samples.
For highest quality with OpenGL, set True. This smooths the edges of masked textures which helps them blend into the image better, rather than looking like fake cutouts. The rendering hardware doesn’t anti-alias the edges of masked textures,
but this edge smoothing looks like anti-aliased edges. Note, this
setting only smooths the edges of masked textures, not the whole texture
(the inner parts of the texture will not be blurred).
Another HQ graphics guide for UT recommends leaving it off, probably to avoid any loss in crispiness.

SceneNodeHack=True
Enabling this may work around some minor problems, though it wasn't
tested extensively, so there's a chance it might cause other problems.
Don't touch this unless you know it relates to problems you are
experiencing as the code in the renderer was reportedly quite important.
There is little other documentation available on it.

FrameRateLimit=62
CPU controlled frame rate limiter in frames per second. Seems to
fluctuate on new PCs, not capping it properly. Set this to your refresh
rate, or some value under 150.

SwapInterval=0
Controls V Sync. If set to the default value of -1, the default buffer swapping method is used.
Set to 0 to disable V Sync.
Set to 1 to enable V Sync.
Set to higher values for one frame every N screen refreshes. Not all video drivers support values higher than 1.
2 or higher value divides your FPS by that amount to provide 2x or 3x etc smoothness. If it works 2 or 3 might be nice in DXSP. Causes mouse input lag without extensive related modifications, read separate guide on how to use vsync in DXMP.

UseFragmentProgram=True
Enables fragment program mode. Requires the UseVertexProgram option to also be enabled. May improve performance on newer video hardware. It's generally best to
enable or disable UseVertexProgram and UseFragmentProgram together. In a
later version of the D3D9 renderer, the UseVertexProgram option is not
present and UseFragmentProgram will enable use of both vertex shaders
and pixel shaders together if shader model 3 support is available.

UseVertexProgram=True
Enables vertex program mode. Consider this an experimental option. It
can improve performance in some cases. It can also slow things down a
lot if certain other settings are not configured correctly. It is likely to slow things down a lot if detail textures are enabled, but single pass detail texture mode is not enabled. It may not work correctly or may cause crashes with some video drivers.

UseCVA=False
Enables the use of the compiled vertex array (CVA) extension. It may be
useful on video cards without HW T&L. It is likely to slow things
down a little bit on video cards with HW T&L.

UseMultiDrawArrays=True
Enables the use of the GL_EXT_multi_draw_arrays extension if supported by your vid card drivers.

TexDXT1ToDXT3=False
A workaround for poor image quality on NVIDIA GeForce1 - GeForce4 series
hardware when using DXT1 format S3TC compressed textures. Because it is
unlikely you have this old GeForce card, keep it on False.
Enabling this will make textures use up to 2x more memory even if you do not use Geforce Series 1 to 4 cards or have ATi card!

DynamicTexIdRecycleLevel=100
Default value is 100 and it should remain that way. It's related to the UseTexIdPool option.

CacheStaticMaps=True
False by default, this option seems to be there for performance optimization, but it is very hard to find information on it. If you want to
experiment by setting it to True, then make sure that it is the only
setting you change, in order to properly compare.*

UseTexPool=True
Should be set to True for additional texture memory management enhancements. It's used with the UseTexIdPool option. It can recover the potential small performance losses that are traded
for eliminating the annoying little pauses when using the UseTexIdPool
option alone. It is likely to provide additional performance gains too.*

UseTexIdPool=True
Should be set to True for improved texture memory management. By itself,
it may reduce performance in some benchmarks, but it should also be
able to eliminate one source of those annoying little pauses.

UseSSE=True
UseSSE2=True

Controls the use of SSE instructions. Set to True to auto detect CPU and
OS support for SSE instructions and use them if supported. Set to False
to disable the use of SSE instructions. If supported by hardware, it
could improve performance.

BufferTileQuads=True
False by default, this is a new option in Chris Dohnal's renderers, and while intended to speed up text rendering, some report that enabling this function creates "artifacts all over the place"L. Another reports that it makes text disappear and later on reappear. Enables buffering in the DrawTile path.L

SinglePassDetail=False
Enables single pass detail texture mode. This should generally be the highest performance detail texture mode. It requires 4 texture units. "It also requires the UseDetailAlpha option to be enabled."-comment: he likely forgot to update this desc for new renderers that no longer have UseDetailAlpha.L

SinglePassFog=True
Enables single pass fog mode. This should generally be the highest
performance fog mode. It requires 3 texture units. For the OpenGL
renderer, it also requires support for either the
GL_ATI_texture_env_combine3 extension or the GL_NV_texture_env_combine4
extension.

ColorizeDetailTextures=False
False by default, this option should remain false in normal play, it adds an extra layer of green tint to textures wich screw up masking, and, among other things, renders sniper zoom relatively useless. Debug option.

DetailClipping=False
Enables the use of a somewhat experimental detail texture mode. It costs more CPU time, but may improve performance in fill rate limited situations.

DetailMax=2
Set to 2 to enable a second detail texture layer. Set to 0 or 1 for
standard one layer detail texturing if detail textures are enabled. The second detail texture layer will not show up unless SinglePassDetail is disabled.

RefreshRate=0
Can be used to request a specific refresh rate when running full screen. If set to 0, a default refresh rate is used. If this value is set to an invalid or unsupported refresh rate based on
video card or monitor capabilities, the renderer will fail to
initialize.
Another guide recommends modifying this to the maximum refresh rate that your monitor supports. L

MaxTMUnits=0
Used to limit the number of texture units used by the renderer. Useful as a debug option. Disabled if set to 0.

NoFiltering=False
Disables all filtering on textures; debug option that should be False by default.

MaxAnisotropy=16
Controls the use and level of anisotropic texture filtering which improves the look of distant objects as well as textures seen from certain angles. Disabled if set to 0.
Should make no difference if set to 1 (isotropic texture filtering). If
set to greater than 1, specifies the maximum degree of anisotropy to use
for texture filtering. It is memory intensive filtering method, but
provides better quality on good hardware.
Values go from 1 to 16 which is the max level of anisotropy filtering,
greater values make textures sharper at low angles. In most cases this
value set to 16, 8, 4, 2. Setting it to 16 may produce too sharp
textures if they have any kind of thin lines, use 8 if this happens.

UseTNT=False
A workaround for buggy TNT/TNT2 drivers. Alters texture scaling and
mipmap generation behavior. Keep it at False unless you have old TNT vid
card for some strange reason.

Use16BitTextures=False
Selects lower quality and more compact formats for a number of textures,
which will often speed things up. In many cases, there is only minor
quality loss. In other cases, like with various skyboxes and coronas,
there is often major quality loss.

UseS3TC=False
This should be false for DXMP and is intended to be used only if S3TC textures are installed on server and
client, and currently DXMP does not have any. While crappy by todays
standards, they allow for higher quality textures to be used. L
New Vision for Deus Ex maps uses this feature, so keep it enabled if you play SP with NV.

UseAlphaPalette=True
A workaround for very old buggy GeForce drivers. If set to False, will
not upload masked textures as paletted. If there is hardware support for
paletted textures, this option should be set to True unless it causes
any problems.

UseTrilinear=True
False by default, it is an extension to Bilinear Texture filtering
method that attempts to solve the issue with abrupt changes in
blurriness that happens when Bilinear Filtering method. Most modern 3D accelerated video cards can do trilinear filtering in hardware with no performance hit.

UsePrecache=True
Texture and model precaching may improve performance by initializing
internal data structures for a number of world textures and most likely
getting them loaded into video memory at level load time. It will also
slow level loading down some.

ShareLists=False
No idea yet.

UsePalette=True
Controls the use of paletted textures. If there is hardware support for paletted textures, using them can significantly improve performance.

UseMultiTexture=True
Controls the use of multitexturing. Should always be enabled as the
renderer has a few glitches when it is not. I might try to track these
down some day.

UseBGRATextures=True
Allows textures to be uploaded in BGRA format rather than RGBA format if
the GL_EXT_bgra extension is supported. This can improve texture upload
performance. This option should always be enabled unless it causes
problems.

UseZTrick=False
Can avoid some z-buffer clears at the expense of cutting z-buffer
precision in half. This may improve performance on some video cards. On
video cards with z-buffer optimization hardware, enabling this setting
may significantly reduce performance as it interferes with some hardware
z-buffer optimization implementations.

MaxLogTextureSize=12 NB!
MinLogTextureSize=0 NB!
MaxLogTextureSize and MinLogTextureSize are determined in your Deusex.log file. This log is located in your DeusEx\System\ folder. Search the log for
these keywords (ie MaxLogTextureSize) and you will get your video cards
values (all video cards have different values for this setting).

OneXBlending=True
If enabled, matches what the D3D renderer does for blending in
multitexture mode when applying lightmaps to world geometry. I can't say
for sure which way is correct. In single texture mode, the D3D renderer
does appear to do blending like the OpenGL renderer in single texture
mode or multitexture mode without OneXBlending enabled.L
At least on ATI Radeon 9700 the image quality looks slightly better with
OneXBlending=True using the OpenGL renderer. A lot of maps with
OneXBlending set both ways were tested, and the lighting looks better
with OneXBlending set to True. In particular, the effect of lightmaps
seems diminished when OneXBlending is set to False.
However, this particular setting may be hardware-dependent (and renderer
dependent), so it is probably good to play with this one and set it the
way you like.

GammaCorrectScreenshots=False
If enabled, will apply gamma correction to screen shots.
GammaOffsetBlue=0.000000
GammaOffsetGreen=0.000000
GammaOffsetRed=0.000000

Fine tuning parameters for gamma correction. These allow different offsets to be specified for each color channel. These offsets are never applied when gamma correcting screen shots, even if GammaCorrectScreenshots is enabled.

GammaOffset=0.000000
Offset for gamma correction. Can be used to adjust gamma correction even more if you hit the end of the Brightness slider in Video options. The default value of 0.0 causes no change. Use negative values for darker or positive values for brighter. If adjusting this setting for the first time, I'd recommend starting with small values such as -0.3 or 0.3.

LODBias=0.000000
Allows mipmap selection bias to be adjusted. Use negative values to pseudo sharpen textures. Use positive values to blur textures and potentially improve performance at the expense of blurry textures. Increase in small values, like +/- 0.50000

DetailTextures=True
Enables Detail Textures (for diffuse shader?)

DescFlags=0
Description flags, I suppose somehow meant to help the game work better
with the GPU, but there is next to no information about it and is just
about always set to 0. Someone asked if it should be set to 1 for Nvidia
cards.*

Description=My Awesome Vid Card
You can put the name of your vid card here if it isn't added automatically, shouldn't have any impact to the actual game.

HighDetailActors=True
Hard to find information on this, but having it disabled may result in masking issues or otherwise reduce visuals on maps.L

Coronas=True
Adds coronas to lights where applicable. True by default, it makes it
possible to see lights that have a skin associated with them, setting it
to false likely disables some light sources in your game, ie
streetlamps; I wouldn't expect much of a performance gain from this.L
Pro players disable this for online gaming, decreasing visual irritation
and enabling them to see players that attempt to hide in coronas.

ShinySurfaces=True
Reflective surfaces. 'False' disables reflect, likely also from mirrors. Minor performance impact.

VolumetricLighting=True
Enables Fog. See beams of light, and maybe other light effects. Minor FPS gain from disabling. L


Other