As i got a new Graphics Card a few weeks ago, i decided that the time had come to see what i could manage with the WoW Graphics Engine. In this thread, i'll go through the absolute maximum settings (accurate as of 4.0/4.0.6), and just how they affect performance and quality. It's been a while since those graphic macros were accurate, so an updated one is in order.
When Cataclysm was released, the increased the maximum values of a lot of the graphical variables. Many of these are above the maximum you can set in video options.
The WoW Engine isn't the most optimised out there, not for the higher end setups anyway. However, that doesn't stop it from pumping out fairly decent graphics if you've got the horsepower to support it. It won't look like Crysis, but it will look better than the top settings you can get from the video UI configuration panel. When you set custom variables that don't directly align with the notches on the Video UI Panel, the dropdown box will say "Custom".
Also note that with regards to the heavier settings (such as Shadows), they can use an incredible amount of resources.
To apply a setting, simply follow this syntax;
Replace variablename with the name of the variable from the list below (CASE SENSITIVE), and value with the value listed next to it (or any value below that).Code:/console <variablename> <value>
In the listing, i'll show them in a standard layout, and then in bold and red, i'll list what i recommend. This recommendation is based on having a very high end or extreme system (after all, even us enthusiasts enjoy less-graphically demanding games like WoW, but do wish for more out of them at times). As reference, my current system has a 6-core CPU, a GTX580 Graphics Card, A 240GB Solid State Drive (SSD), and 8GB of System Memory. It's not the most extreme system you'll ever find, but it's enthusiast level, and constantly being upgraded and optimised.
General/First Things First
The first thing you want to do is find out how much Video RAM your Graphics card has. This is usually one thing that's listed in the "title" of Graphics Card at online stores. Standard capacities used to be 256MB, and 512MB (and some had 1024MB). Nowadays, the more modern ones have 896MB, 1536MB, or even 2096MB! Video RAM Capacity is NOT the same as System RAM Capacity!
Once you know how much you have, type the following into WoW;
Replace VRAM with how much memory your graphics card has. This will allow WoW to use as much Graphics Memory as you have available. When optimising WoW for maximum quality, it's important you're giving it the maximum headroom. This is especially true with Shadows and Textures.Code:/console gxTextureCacheSize VRAM
Another one, which will improve performance by between 5-25% relates to which API you use to render. If your Graphics Card and Operating System support DirectX 11, type the following into WoW;
This will tell WoW to render nativly to DirectX 11. The reason performance increases so much is because special effects don't need to be rendered through graphical extensions, and can instead render natively in DirectX 11. If your card or OS don't support DX11, then you'll either get an error, a black screen in WoW, or simply nothing at all will happen. It's strongly recommended to use this command if you know it's available to you.Code:/console gxApi D3D11
Once you've changed either of the above settings, exit the game via the in game menu. Do NOT close it by alt+f4 or by the cross in the top right corner as your settings will not be saved if you do!
Shadows and Lighting
Shadows are still the single greatest strain on a System when it comes to WoW. However, being able to set them to the absolute maximum does make quite some difference, both in quality and performance.
shadowTextureSize: 1024/2048 (2048)
The way Shadows in WoW work seems to be that they create a new texture relevant to each shadow. As you can imagine, in crowded scenes, this can use a lot of memory, and will slow the game down. What this setting does is sets the size of those shadow textures. A higher value generally means higher quality but a possible reduction in performance. In all honesty though, i don't see much difference between 1024 and 2048.
shadowMode: 0/1/2/3 (3)
This sets the overall quality of shadows. 3 is the maximum, and this provides full dynamic shadows for everything that's visible, regardless of how far away it is. This essentially makes it looks more realistic, but is VERY heavy on resources. This setting has one of the greatest effects on both quality and performance.
NEW FOR 5.0! - ssao: 0/1/2 (1)
This sets the overall quality of the level of SSAO (a new feature added in 5.0). To the more experienced gamers, you might know this as the equivalent of "Performance" and "Quality" modes for Ambient Occlusion from NVIDIA Control Panel. Note that this is the only setting where the allowed values are "inverted" (1 is "high", 2 is "low").
NEW FOR 5.0! - ssaoBlur: 0/1/2 (2)
This controls how well the SSAO effect "blurs" into the scene. At 0, it's interleaving lines, and at 2, it's a smooth effect. You'll need to go to somewhere dark-ish (such as the front entrance to Orgrimmar) and look at objects close to walls to see it properly. 1 seems to erase the SSAO a little, but 2 sets it to be very contrasting.
NEW FOR 5.0(?) - terrainMipLevel: 0-1 (inclusive decimal) (0)
This seems to change the shading on terrain in some aspect. It's difficult to explain, but i tried 0 and it seems to be of higher quality. It can be any decimal number between 0 and 1 (e.g. 0.001).
Ground Effects, View Distance, Clouds & Spells
Ground effects in this case are things like grass and stones. They can add a lot of graphical vibrance to the game, but do come at a cost (quite a heavy one at the high end). I'll also cover Spell Effect here. These are things such as Rain of Fire - how many "flaming coconuts" it summons. One important note about the spell effects is that the variable MUST be added to your config.wtf manually, otherwise the console command won't have any effect!
NEW FOR 5.0(?) - horizonFarClipScale: 2/3 (3)
This controls the scale of far clip of the horizon (i.e. how far the horizon appears [by a scale of an unknown base value]).
groundEffectDensity: 0-256 (inclusive) (256)
This controls exactly how many individual grass, rock and other ground entities are "created". Setting this to 256 adds a LOT of grass to scenes that have it, but to finish the effect off, you should check the next command and use it in conjunction with this one.
groundEffectDist: 16-600 (inclusive) (600)
This controls how far you can see the grass, rocks and other such grass entities. Setting this to 600 will create a VERY vast distance of grass for scenes which have it. Un'goro Crater and the Barrens are perfect examples. The cost here isn't that great on higher end graphics cards, but can slow down systems with low-mid range cards.
groundEffectFade: 0-1277 (inclusive) (1277)
This seems to be the same as groundEffectDist, but it's difficult to verify if they serve the same purpose.
farclip: 0-1300 (inclusive) (1300)
This is another of those startling variables that will drastically alter the quality and performance. It controls how far terrain is visible/rendered. Setting this to 0, you'll just get your UI visible. I do NOT recommend setting this below 100!. Setting it to 1250 allows me to see the Barracks at Razor Hill from the front of Orgrimmar! It does have a drastic effect on performance, so customise to your own requirement. Ultra sets this to 1250 as it is (a quite recent change it seems), but 1300 gives a little more view distance and seems to be the actual max.
skyCloudLod: 0/1/2/3 (3)
This controls how much depth clouds appear to have. It's not very graphically intensive, but does make a noticable difference to clouds. With 0, they're essentially flat layers with one tone. At 3, they appear to vary in depth, and this creates different colour tones as well.
spellEffectLevel: 0-??? (Unknown Maximum) (100)
This is one of the most amazing variables available. However, by default, it won't have any effect when you change it. This is because the variable doesn't exist by default. To enable it, you need to open "config.wtf" in your "World of Warcraft\WTF" folder, and add the following line;
Save the file, and restart WoW. Now, you can start playing about with the variable. What this does is changes how many individual "particles" are summoned from ground AoE effects such as Rain of Fire, Blizzard, and even Death and Decay. It doesn't change ground texture effects such as Consecration, or the "rune effect" from Ring of Frost (but does affect the amount of "steam" created by it).Code:SET spellEffectLevel 25
Personally, i recommend 100. However, this is one of those settings that's personal taste. It will have a drastic effect on performance. If you set it to 5000 as an example, you'll see 5000 fireballs summoned from a Rain of Fire, or 5000 Iceshards from a Blizzard cast. I believe this also affects the raindrops from Healing Rain. It WILL destroy your FPS if you set it too high!
However, increasing it over the default of 25 does give the game more depth and makes things just that much more appealing.
Water and Misc.
This section contains the settings for water, and anything that doesn't fit elsewhere.
waterDetail: 0/1/2/3 (3)
This controls the overall quality of the water. Previously, this used to be customisable via 4-5 variables, but this seems to have been changed to onlt waterDetail in 4.0.6 (or possible 4.0.3). Setting it to 0 gives you the old water. Setting it to 3 gives you the maximum water quality currently available. This includes ripples, distortion, and world reflection. Unfortunately, Character Reflection still doesn't appear to be available (although if anyone knows of a CVar to allow that, i'll be happy to add it). Setting 3 specifically adds full world reflection, while 2 seems to only reflect certain parts of the world.
ffxGlow: 0/1 (1)
ffxGlow is an older effect. Players from TBC will remember an effect known as "Fullscreen Glow". Essentially, this added a very minor bloom effect to the world. When they changed the Video Configuration UI, they removed the checkbox. Well, the effect itself remained in game, and now you can control it again! Setting this to 1 wil increase colour vibrance. In places like Durotar (during the day), it can be overpowering, and too bright. However, in other areas it can create a nice moody tone. Tol'Barad is an excellent example of this. This is completely down to personal preference, and doesn't have much effect on performance.
sunshafts: 0/1/2 (2)
This controls the "sunrays" you see when your character flies in front of the sun. The difference between 1 and 2 isn't that great. 0 turns the effect off completely. I recommend 2 though.
NEW FOR 5.0(?) - particleDensity: 10-100 (inclusive) (100)
This controls how vivid and strong particle effects appear (i.e. the higher the value, the more particles).
NEW FOR 5.0! - fxaa: 0/1 (1)
This controls whether the rather new FXAA Antialiasing method is used or not. This is a personal preference. Please note that FXAA is shader-based, meaning that the whole screen will be antialiased (including text and ability icons, and it will appear slightly blurry). You'll need to restart the game for this to take effect.
As you can imagine, setting these to maximum can increase graphical quality by quite some margin. It won't look photorealistic, but for those with higher end systems, it can actually give you much better quality than the maximum settings available in Video Options. Setting it to the maximum can slow your system down if you don't have the power to support it, but if you do, i say go for it.
If there's any updates, i'll try to add to the guide above.