Train Sim World® 2020

Train Sim World® 2020

132 ratings
How to Make TSW Look Better
By pschlik
Want to make TSW look better or play differently in some way? Using Engine.ini, you can change all kinds of settings DTG usually never lets you touch!
If you are willing to get a bit technical, there are some ways to cheat the settings menu and (quite literally) crank up some settings to 11. Or even change graphical features that don't have settings. If you know what to do, the result is a much better looking TSW.

Why so technical? Well, this involves tweaking UE4 commands (click this link[] for a whole list of 'em) in the Engine.ini file. It's a bit out of the way, but with this guide, you'll be able to learn how to mess with this, and bend the graphics to your liking.

Even though DTG would like to argue this is a bad idea, the choice is still up to us-and that's what counts!

OBLIGATORY WARNING: I'm not responsible for you doing something crazy using these that lags your computer out, crashes TSW, or makes something look wrong. Even I don't know what all this does.
Always turn off all render settings as a first step in troubleshooting! And if something looks wrong, feel free to experiment more-these are not permanant settings. Also, don't go to DTG until after turning this stuff off-they don't expect people to be using these. At least not yet.
So, what is Engine.ini?
Engine.ini is a file in the folder
YourName\Documents\my games\TS2Prototype\Saved\Config\WindowsNoEditor
which allows you to edit the default values for Unreal Engine console commands. As we don't have access to the console because we aren't DTG, Engine.ini is the only way to change console commands in normal play.

In theory, any command can be triggered from here, but there's more to it than just opening the file in notepad and throwing in a few commands!
Engine.ini Setup
To mess with render settings in Engine.ini, open up the file in some text editor of choice. Though the file is ".ini" it's nothing more than plain text. You should notice at least some lines like this:
It's best to leave what is already there alone, unless it is something you put there. I'm not sure what happens if you mess with the default things.

To add in good-looking graphics, go to the bottom of the file, and on a blank line, type in "[SystemSettings]" and hit enter to go to the next line. This line is what tells UE4 to look for commands next, and without it, none of the commands will work.

But since any command will work, you now have to just choose some commands (a list has been provided). Each command needs its own line in the file, resulting in a general format like this:

Keep each command on a separate line and it should work fine. Just note that not all commands will have the effect you expect, as some commands simply won't work reliably, and some might even crash the game!
Commands that Make TSW Look Better
Once the file is set up and you know how to enter things correctly, you have to know what to enter! Here are some popular and or useful render commands as well as what they actually do:

This is a nice and simple draw distance multiplier which applies to static scenery-most notably, the railroad tracks and ties. The default value is 1, so whatever number you insert in place of "value" is the multiplier for how far away things will be drawn. This is the most resource intensive command of them all, as the extra objects rendered will massively increase RAM usage and slightly increase GPU usage. A modest example is r.ViewDistanceScale=5, which renders scenery at 5 times the distance.

While view distance scale makes objects load in from further away, they won't always look very good from further away. This option allows you to force higher quality models to show up further away from you. It works in an odd way, but the closer to 0 it is, the higher quality models you will see. Without going overboard r.StaticMeshLODDistanceScale=0.75 helps stuff look a bit better.

All this command does is turn on or off dynamic brightness adjustment. This is supposed to mimic what everyone's eyes do, but with both our eyes adapting and the game trying to adapt, the stacked effect can look very ugly. Turning this off can make scenes look much more natural and makes the lighting more moody overall. There are a few quality settings, but if you use this command, it is only useful to set it to 0. Oh, and it has 0 effect on FPS. r.EyeAdaptionQuality=0

This command is a more effective way to control brightness. It acts like a gamma setting in a way. Many people describe TSW as being too bright, and this is an extremely effective way to change that brightness at your whim. The default value is 0.5, a number greater than this makes the game brighter, a number lower than this makes the game darker. I found that a slight reduction is the safest bet. r.Color.Mid=0.4

Nothing too special with this one, all it does is make procedural grass render from far away or not render from far away. Ironically, despite being a quality setting, this is actually only an on/off setting, and 1 is lower quality than 0. The default value is 1, so it is only useful to add this command if you intend to set it to 0. Despite the difference in grass quality being huge, there is not that much of a hit on FPS. r.MaterialQualityLevel=0

The original Engine.ini tweak-usually used to turn off motion blur, that's about all its useful for. It can handle other values from 0 to 4, but if you want to turn off motion blur and keep it off without needing to hit Ctrl + F2, just set this to 0. It has no FPS impact, and will probably increase FPS if anything. r.MotionBlurQuality=0

A useful setting I just recently tried out, this (and other assorted LOD Bias settings) can be used to make things look good from far away, especially when r.ViewDistanceScale does not apply. Trains are skeletal meshes, so this setting makes trains look better...or worse. In the case of an LOD bias, a negative number makes things look better, a positive number makes them look worse. So this one can really really hurt FPS. UE4 seems to dislike skeletal meshes, so use it at your own risk. A more reasonable value to set is r.SkeletalMeshLODBias=-2

This LOD setting applies to stuff like trees and bushes. One common complaint is that the transition between tree LODs is too noticable. Set this value to something greater than 1, and trees will render at higher quality further away. Not only will that look better, it will also make the transition between LODs happen further away, which looks a lot better than it changing up front. Before you go to crazy, remember that this is a multiplier, setting it to 20 will render trees 20 times further away...which is a lot. If you want to be reasonable, use foliage.LODDistanceScale=3

Don't like fog? Think a clear day shouldn't be quite this foggy? Well, you can add r.Fog=0 to Engine.ini in order to remove all fog, but in all weather presets. Main problem with this option is that even weather presets that should have fog will not have fog, so you'll need to turn it off and on to use it correctly. It's rarely worth the effort. And again, as a binary option defaulted to 1, there is no reason to enter this in Engine.ini except to set it to 0.

That's only a taste of all the commands, remember to check out the command list linked in the introduction to see what else UE4 has to offer! There are things to change beyond just render settings, but the render settings are the most known of all settings.
Quick Start
Don't feel like getting too technical and choosing commands for your own?

Well, here are some simple Engine.ini setups you can copy and paste into your system. To install any of these, copy the text in the code box, and paste it at the end of your Engine.ini file.

The Basics
Looking for some better settings without making your computer cry from low FPS? Try these modest settings!
[SystemSettings] r.ViewDistanceScale=3 r.StaticMeshLODDistanceScale=0.75 foliage.LODDistanceScale=3 r.EyeAdaptationQuality=0 r.Color.Mid=0.4

Medium Duty
If you find the small numbers above a bit too small, and want something that looks even better, try this loadout.
[SystemSettings] r.ViewDistanceScale=6 r.StaticMeshLODDistanceScale=0.5 foliage.LODDistanceScale=5 r.SkeletalMeshLODBias=-2 r.EyeAdaptationQuality=0 r.MaterialQualityLevel=0 r.Color.Mid=0.4

High Power
Some of you probably have 1080s or something extreme that can handle a lot. Probably more than this, but you'll figure out what you can handle.
[SystemSettings] r.ViewDistanceScale=12 r.StaticMeshLODDistanceScale=0 foliage.LODDistanceScale=7 r.SkeletalMeshLODBias=-5 r.MipMapLODBias=-3 r.EyeAdaptationQuality=0 r.MaterialQualityLevel=0 r.Color.Mid=0.4
But how much better does it look?
These changes you can make to the game ultimately have a whole lot of power to make the game look way better than usual. For the best comparison, check out this JuxtaposeJS page[] we made.

That's Bitterfield in Rapid Transit. The normal settings are on the left, supercharged engine.ini settings on the right. As you can see, the difference is huge when it comes to stuff in the distance. More overhead catenary, more buildings, better looking track, pedestrians actually visible. It can do a whole lot to the game.

If you don't want to check out that link, you can see the photos separated here, but the juxtapose does a much better job of comparing the two.

So here is normal settings:

And here is the same scene with a bunch of engine.ini settings:
There are many many other settings to try out. You can change things like shadows and HDR and bloom and etc in there. Check out that link at the top of the post for more commands to try on your own. And even then, there are more commands out there that aren't so well known, and we should be able to find more as time goes on.

All these settings mentioned here can make the game look better, and are really only a fraction of the potential commands to change to make things higher quality, but you can also always disable lots of specific features to make it look worse, but run faster, if you like. There's all kinds of possibilities, so don't feel limited to what this guide says. Try your own things and find out what you want on/off, high/low, fast/pretty.
< >
wsor4007becker Jun 29 @ 7:52pm 
Thanks man Its a completely different game now.
pschlik  [author] Jun 26 @ 11:23pm 
There are maximum numbers, above which no extra effect occurs. This means you can enter in 50, but 50 might look identical to 20.

I do not recall the actual maximum number for each setting off the top of my head, but I think 50 is already over the maximum for a few settings.
wsor4007becker Jun 26 @ 9:39pm 
This is something ive wanted since the game came out, now the tie plate render and switches render as far as i can see, the game is amazing now. I cannot thank you enough for this. Please if you find anything else add it on here,

one question: are there max numbers you can enter? like i have it on 50 or higher and i can see so far away the trees look amazing.
nelsonscottd Jun 22 @ 7:45am 
My trains headlights aren't seen when you look towards the train when I use the high settings but I can only see the lights when I'm close to it.
Ronaldoz May 23 @ 3:49pm 
I like these @ 1070Ti

MEOW Apr 26 @ 6:27am 
tried using the medium duty settings but seems like when it comes to winter scenarios, it does not seem to render the snow on the tracks properly
paolmir Apr 14 @ 1:07pm 
Nice one. Thanks
JollyJack77 Nov 6, 2019 @ 1:24am 
Quite an interesting post. Is there a download pdf somewhere? Even better, a (3rd party?) tool making the editing of the engine.ini file easier. Some before/after and undo function might be useful. Epic Unreal engine useful here?
Danno1991 Sep 16, 2019 @ 10:38am 
what number do i put in to enable lens flare
MatteoR_ Aug 19, 2019 @ 7:19am 
Any suggestion about make the night brighter? I tried with r.Gamma=3.0 but it's still black, very dark.