Euro Truck Simulator 2

Euro Truck Simulator 2

426 avaliações
Dual Monitor / Screen Guide
Por DC-GS
This guide shows how to configure a working dualscreen setup.
6
4
5
7
2
2
   
Premiar
Adic. a Favoritos
Nos Favoritos
Desfavoritar
Introduction
In this guide I will show how to configure the OS and the game to work properly with two screens. This guide is updated in mid 2021 since DX9 isnt available anymore in current version of the game.


Let's get started.
This guide consist of two major parts.
First is to merge both screens to a single virtual screen because the game (stil) cant adress multiple screens.
Second Rearrange the camera, so the wheel isn't between both screens.

In my case I show the cabin with left mirrors on my primary screen. The right part of the cabin with my right sidemirrors are displayed on my secondary screen.

It will look like this:
Step 1 - Virtual screen
Like I allready said, first part is to merge both screens to a single virtual one.

Back in the days I made this guide, the game run on DX9. For DX9 there was an easy solution to combine multiple screens together for a single application - Soft TH[www.softth.net].
Unfortunately the latest version of the game doesnt support DX9. I gonna keep the old section for anyone still playing the old version though.

The only way now is to use Surrond (nVidia) or Eyefinity (AMD), see option B.
I will mention how it can be automated for nVidia cards.

Option C is removed, its now part of option B, since it rely on nVidia Surround.

All options have a thing in common: after combining the screens into a single big screen, you need to change the resolution ingame.
Step 1, option A - Soft TH - DEPRECATED
I keep this option in this guide for everyone playing an old version of ETS2. The game needs to be launched in DX9 for this to work!

Thanks to for Mr Stevens mentioning this great tool.
You can get the "latest" version from Soft TH homepage[www.softth.net].
It only change the screen for a single app.

You have to drop the d3d9.dll into the same folder the executeable is located
( like: \SteamApps\common\Euro Truck Simulator 2\bin\win_x86 ).
Launch the game in DirectX 9 mode and exit the game again.
A new file "config.SoftTHconfig" was created.
Edit it with any text editor of your choice.

I've two 24" screens, runnig HD and 1.8cm thick border.
Using a ruler measuring the gap between the screens I've placed the ruler on one of my screens and measured this gap in pixel - in my case 120px.

My final resolution is 3960x1080. ( 3960 = 1920 +120 +1920). The second screen starting at 2040 ( 1920 +120 ).
Soft TH has a great guide[www.softth.net] how to calculate all this values.

My config:
[main] renderResolution=3960x1080 nonlocalFormat=RGB16D keepComposition=0 smoothing=1 debugD3D=0 zClear=1 vsync=0 tripleBuffer=0 screenshotFormat=jpg dllPathD3D9=auto dllPathDXGI=auto dllPathD3D11=auto [overrides] forceResolution=0 antialiasing=0 processAffinity=0 FOVForceHorizontal=0 FOVForceVertical=0 [debug] compatibleIB=0 compatibleTex=0 compatibleVB=0 enableVBQuirk=0 [head_primary] sourceRect=0,0,1920,1080 screenMode=1920x1080 [head_1] devID=1 sourceRect=2040,0,1920,1080 transportResolution=1920x1080 transportMethod=auto noSync=0 fpsLimit=0
Step 1, option B - NVIDIA Surround / AMD Eyefinity
This is the only reliable way of combining two screens into a single virtual one. I only own NVIDIA cards, so i cant tell where you setup Eyefinity.

For NVIDIA Surround, open your NVIDIA control panel. Open the "Surround, PhysX" category. Enable Surround by clicking the checkbox:

In advanced settings you can add a bezel like in option A. The bezel is only needed, if you plan on using a single view (option A from step 2).

Like I said, no idea how it works for AMD, but I guess it cant be that difficult.

Warning! It will mess up your desktop. It will move around your icons, it will move around your apps. Fullscreen will span both screens, making it unsuitable for anything but very specific games. I hate it.

Step 1, option B Extension - Display Managers
To avoid the issues with running Surround 24/7, a display manager can be used. This manager will enable NVIDIA Surround as you start the game and switch back to your default desktop settings as soon the game shuts down. It will work for any DX version, for OpenGL, for any graphics API.

Some time ago I mentioned the Helios Display Manager[github.com], but the developer was quite busy and the product isnt finished yet. An alternative is the fork of Helios called DisplayMagician[github.com]. I've tested DisplayMagician and it does work fine.

Both Display Manager work on NVIDIA Surround only.
You could donate an AMD video card to Terry MacDonald[github.com], it may help developing AMD Eyefinity support. No, I dont know him, he dont know me, we are not affiliated.

Display Magician now supports both, Nvidia and AMD GPUs!

Both display managers (DM) have a guide on how to use them. It boils down to:
  • install Display Manager
  • Save current desktop a new profile in DM
  • Enable Surround in NVIDIA CP
  • Save Surround as second profile in DM
  • Switch back to default profile (optional)
  • Add a new shortcut in DM
  • Choose game - DisplayMagician can launch any Steam game, just click one from the list
  • Marry it with the Surround display profile
  • Save shortcut to desktop - ready to launch
Step 2 - Multimon Config
Now we have a picture on both of our screens. Unfortunanly in default settings the game center the view. The steering wheel is split on two screens.

To get started, we have to enable custom multimon config first.
Go to your user-ETS2 folder (the folder where your savegame etc is located ) and open "config.cfg" in texteditor. Find the line "r_multimon_mode" and set the value to 4. Other modes are documented in ETS2 Multi-Monitor Support[www.eurotrucksimulator2.com]
Launch the game once to generate the "multimon_config.sii" file.

Depending how the screens are placed, we can choose between different settings.
Open the "multimon_config.sii" file from the same folder in texteditor.
Step 2, option A - single view/camera - plane screens
In this mode we greatly increase the FOV and move the camera to the center of the first screen.
It will look like this:


To cut the chase, this is my final configuration:
SiiNunit { multimon_config : _nameless.0000.0000.0472.B1D0 { normalized_ui_x: 0.000000 normalized_ui_width: 0.500000 monitors: 1 monitors[0]: _nameless.0000.0000.06F3.CE30 } monitor_config : _nameless.0000.0000.06F3.CE30 { name: main normalized_x: 0.000000 normalized_y: 0.000000 normalized_width: 1.000000 normalized_height: 1.000000 horizontal_fov_relative_offset: 0.000000 vertical_fov_relative_offset: 0.000000 heading_offset: 0.000000 pitch_offset: 0.000000 roll_offset: 0.000000 camera_space_offset: (0.000000, 0.000000, 0.000000) horizontal_fov_override: 145.000000 vertical_fov_override: 60.000000 frustum_subrect_x: 0.333000 frustum_subrect_y: 0.000000 frustum_subrect_width: 0.666000 frustum_subrect_height: 1.000000 render_interior: true render_exterior: true } }

Basicly I create a view with very high FOV for 3 screens and cut out only the center and right screen using "frustum_subrect" parameters.
Step 2, option B - dual view/camera - angeled screens
To prevent the "fisheye" effect on the far side of the vew, it is possible to setup a second view. It works best, if the second screen is angeled and you look at it at a right angle.



You can see out of the right window all the time. Also you will have to adjust the right sidemirror since you see lot of your own truck.

SiiNunit { multimon_config : _nameless.04A6.56A8 { normalized_ui_x: 0.000000 normalized_ui_width: 1.000000 monitors: 2 monitors[0]: _nameless.0714.5590 monitors[1]: _nameless.0714.5618 } monitor_config : _nameless.0714.5590 { name: center normalized_x: 0.000000 normalized_y: 0.000000 normalized_width: 0.500000 normalized_height: 1.000000 horizontal_fov_relative_offset: 0.000000 vertical_fov_relative_offset: 0.000000 heading_offset: 0.000000 pitch_offset: 0.000000 roll_offset: 0.000000 camera_space_offset: (0.000000, 0.000000, 0.000000) horizontal_fov_override: 90.000000 vertical_fov_override: 0.000000 frustum_subrect_x: 0.000000 frustum_subrect_y: 0.000000 frustum_subrect_width: 1.000000 frustum_subrect_height: 1.000000 render_interior: true render_exterior: true } monitor_config : _nameless.0714.5618 { name: right normalized_x: 0.500000 normalized_y: 0.000000 normalized_width: 0.500000 normalized_height: 1.000000 horizontal_fov_relative_offset: 0.000000 vertical_fov_relative_offset: 0.000000 heading_offset: -90.000000 pitch_offset: 0.000000 roll_offset: 0.000000 camera_space_offset: (0.000000, 0.000000, 0.000000) horizontal_fov_override: 90.000000 vertical_fov_override: 0.000000 frustum_subrect_x: 0.000000 frustum_subrect_y: 0.000000 frustum_subrect_width: 1.000000 frustum_subrect_height: 1.000000 render_interior: true render_exterior: true } }
Step 2, option C - hybrid - screen at 40° angle
I wasn't happy with either of the two options.
Neither looked well on my setup: two screen at 40° angle.

I wanted to use option B with the camera only rotated by 40° not 90°.
In that case I would see lot of stuff on both screens. So I had to offset the right screen further to the right. I did so using knowledge from option A. That was the solution:



It took some serious math. Then it took some more math since I had some errors in my calculation. At the end I had my final values.
This is my current configuration:
SiiNunit { multimon_config : _nameless.04A6.56A8 { normalized_ui_x: 0.000000 normalized_ui_width: 0.625000 monitors: 2 monitors[0]: _nameless.0714.5590 monitors[1]: _nameless.0714.5618 } monitor_config : _nameless.0714.5590 { name: center normalized_x: 0.000000 normalized_y: 0.000000 normalized_width: 0.500000 normalized_height: 1.000000 horizontal_fov_relative_offset: 0.000000 vertical_fov_relative_offset: 0.000000 heading_offset: 0.000000 pitch_offset: 0.000000 roll_offset: 0.000000 camera_space_offset: (0.000000, 0.000000, 0.000000) horizontal_fov_override: 93.200000 vertical_fov_override: 60.000000 frustum_subrect_x: 0.000000 frustum_subrect_y: 0.000000 frustum_subrect_width: 1.000000 frustum_subrect_height: 1.000000 render_interior: true render_exterior: true } monitor_config : _nameless.0714.5618 { name: right normalized_x: 0.500000 normalized_y: 0.000000 normalized_width: 0.500000 normalized_height: 1.000000 horizontal_fov_relative_offset: 0.000000 vertical_fov_relative_offset: 0.000000 heading_offset: -40.000000 pitch_offset: 0.000000 roll_offset: 0.000000 camera_space_offset: (0.000000, 0.000000, 0.000000) horizontal_fov_override: 115.290000 vertical_fov_override: 43.500000 frustum_subrect_x: 0.536650 frustum_subrect_y: 0.000000 frustum_subrect_width: 0.463350 frustum_subrect_height: 1.000000 render_interior: true render_exterior: true } }

I had some issues with my right mirror, not being able to adjust it to how I wanted it. No issues with current game version, so that was fixed!

For custom setups I've published my spreadsheet with the calculations:
https://docs.google.com/spreadsheets/d/1LNAIA2uqw-3_Zj2zY5lnxc8n9qXvwfresYllwtJziH8
Green are input fields, orange are outputs.
Right hand wheel
The settings above are for most part of europe where the steering wheel is on the left side. For an UK truck, you probably want to mirror the settings.

For Step 2 you have to mirror the settings. For example option C (only different settings listed):

monitor_config : _nameless.0714.5590 { normalized_x: 0.500000 } monitor_config : _nameless.0714.5618 { name: left normalized_x: 0.000000 heading_offset: 40.000000 frustum_subrect_x: 0.000000 }
Use this example if you want to know what you need to change if you are using your own config.


To make it easier, that's how the finished config should look like:
( UI moved to right screen )

SiiNunit { multimon_config : _nameless.04A6.56A8 { normalized_ui_x: 0.500000 normalized_ui_width: 0.500000 monitors: 2 monitors[0]: _nameless.0714.5590 monitors[1]: _nameless.0714.5618 } monitor_config : _nameless.0714.5590 { name: center normalized_x: 0.500000 normalized_y: 0.000000 normalized_width: 0.500000 normalized_height: 1.000000 horizontal_fov_relative_offset: 0.000000 vertical_fov_relative_offset: 0.000000 heading_offset: 0.000000 pitch_offset: 0.000000 roll_offset: 0.000000 camera_space_offset: (0.000000, 0.000000, 0.000000) horizontal_fov_override: 93.200000 vertical_fov_override: 60.000000 frustum_subrect_x: 0.000000 frustum_subrect_y: 0.000000 frustum_subrect_width: 1.000000 frustum_subrect_height: 1.000000 render_interior: true render_exterior: true } monitor_config : _nameless.0714.5618 { name: left normalized_x: 0.000000 normalized_y: 0.000000 normalized_width: 0.500000 normalized_height: 1.000000 horizontal_fov_relative_offset: 0.000000 vertical_fov_relative_offset: 0.000000 heading_offset: 40.000000 pitch_offset: 0.000000 roll_offset: 0.000000 camera_space_offset: (0.000000, 0.000000, 0.000000) horizontal_fov_override: 115.290000 vertical_fov_override: 43.500000 frustum_subrect_x: 0.000000 frustum_subrect_y: 0.000000 frustum_subrect_width: 0.463350 frustum_subrect_height: 1.000000 render_interior: true render_exterior: true } }
344 comentários
Slimpman 23 de mar. às 7:04 
Hi, edited my own config (with author's excel tool) with 25 degree angle so you can just perfectly see through the right window and the passenger's seat is out of sight. I also raised fov a bit so you can (mostly) see the left mirror (I couldn't see my left mirror at all on fov set by author for some reason).

Only tested on some Iveco truck in driving academy, dual 1440p monitors and worked great for me!

https://pastebin.com/9APRHET6
DC-GS  [autor] 20 de mar. às 10:12 
My guess is, you tried to finetune the settings yourself. option B has the UI stretch over both screens, option C a bit onto second screen to move route advisor.

My recommendation is to start with the normalized_ values for both screens. Both screen should have 0.5 width, 1.0 height and 0.0 y. The center should have 0.0 x (screenshot looks like 0.5) and right screen should be 0.5 x (maybe it already has, but is covered by the center view).

So yeah, make sure normalized_x of your main screen is set to 0.0.
Ringo 20 de mar. às 8:39 
Thank you, however, I tried following Step 2, options B and C, but it displays very strangely. The main center screen is almost black but shows the minimap, while the right secondary screen displays the main game.
The in-game image looks like this: https://gyazo.com/0ad894ce6900786586e4b9791288ac6c

As for Step 2, option A, the center screen seems to display fine, but the right secondary screen appears very large.

I used 2 monitor 27inch 1080p same model
Please help me resolve this
anaklusmosbrony 26 de fev. às 11:27 
Thank you so much for publishing this! It was a great resource, easy to follow, and your option C hybrid was pretty much exactly what I wanted as soon as I pasted the settings in.
DC-GS  [autor] 28 de jan. às 6:56 
Last time I tried, Nvidia did NOT support different resolutions in Surround. It will set all displays to the 1920x1080 resolution.

It may be possible to change the "zoom" in multimon config so it looks right, but the image will be pixelated/blurred on the bigger display.

Havent tried AMDs Eyefinity yet.
sushil.bellure 26 de jan. às 4:49 
As BeePolaire mention, I too have 3440x1440 + 1920x1080.
I tried the above settings and it worked perfectly fine for (1920x1080) but on UW monitor, the game is a bit zoomed and I'm not enjoying it. Please help with the settings.
BeePolaire 25 de jan. às 13:29 
Thanks for that but i don't know hhow to setup for a 3440x1440(ultrawide) + 1920x1080
DC-GS  [autor] 29 out. 2024 às 8:37 
Yeah, just skip step 1.
The game only supports a single screen. Step 1 is combining multipe screens into a single.
emmettgulley71 28 out. 2024 às 21:33 
is there a way to get a 2 monitor or 3 monitor view on a single monitor? I have a single 48 inch
DC-GS  [autor] 28 out. 2024 às 3:36 
@Holi...
Nope, the route advisor is fixed in the corner of the UI-screen and cant be moved by config. Only thing configurable by the game is the position and size of the UI-screen, but that includes all UI - map, menu.

@schwan14
If it looks blurred, most likely the resolution doesnt match the native resolution of the screens. If you enable surround, does the desktop looks blurred? Did you enable the higher resolution ingame settings?