TRS19 & TRS22 Performance on Radeon GPU

Thanks twixed.
Does anyone know if this works for T:ANE also ? I don't know why it wouldn't, but.....
 
No other forum users have Radeon GPU? Nobody else has been struggling with low TRS performance and been fighting it? Auran/N3V developers only bought a single (nVidia) video card for the whole QA department?


I'm still using a 2GB version of HD7850 .
 
Question:
Do I put this in C:/Program Files/N3V Games/Trainz Railroad Simulator 2019? This is where most if not all the .dll files are. Or do I put it in C:/Program Files/N3V Games/Trainz Railroad Simulator 2019/resources/E2/Shaders/Geometry/DirectX11 or C:/Program Files/N3V Games/Trainz Railroad Simulator 2019/resources/E2/Shaders/Geometry/OpenGL? Both files only contain .gsh files. I'm leaning towards C:/Program Files/N3V Games/Trainz Railroad Simulator 2019 given the file format.
 
These DLL files should be put right next to the TRS executable. Either TRS19.exe or TRS22.exe

Question:
Do I put this in C:/Program Files/N3V Games/Trainz Railroad Simulator 2019? This is where most if not all the .dll files are. Or do I put it in C:/Program Files/N3V Games/Trainz Railroad Simulator 2019/resources/E2/Shaders/Geometry/DirectX11 or C:/Program Files/N3V Games/Trainz Railroad Simulator 2019/resources/E2/Shaders/Geometry/OpenGL? Both files only contain .gsh files. I'm leaning towards C:/Program Files/N3V Games/Trainz Railroad Simulator 2019 given the file format.

In you case that should be "C:/Program Files/N3V Games/Trainz Railroad Simulator 2019", the root folder of the game.
 
These DLL files should be put right next to the TRS executable. Either TRS19.exe or TRS22.exe
In you case that should be "C:/Program Files/N3V Games/Trainz Railroad Simulator 2019", the root folder of the game.

Okay. Thank you. I'll do it when I exit out of Trainz, as I've got it running right now.
 
Performance issues come from us.

I can build a farm scene. Road, driveway, mailbox, house, garage, barn, fences, cows turf texture.....,. The whole nine yards.

Looks awesome in a screenshot. I would never see that detail sitting in the cab passing by at 30mph. I'm guilty of packing too much into a scene I will never notice while operating. The computer has to render all those assets, even though you wouldn't notice them. Why add them?
 
Performance issues come from us.

I can build a farm scene. Road, driveway, mailbox, house, garage, barn, fences, cows turf texture.....,. The whole nine yards.

Looks awesome in a screenshot. I would never see that detail sitting in the cab passing by at 30mph. I'm guilty of packing too much into a scene I will never notice while operating. The computer has to render all those assets, even though you wouldn't notice them. Why add them?
Not everyone sits in the cab , in fact I can't think of anything more boring than just sitting in the cab for hours at a time , there are enough bare bones layouts around , designed to allow smooth operation , your suggestion would remove most of the enjoyment and challenge of route creation for many people , including myself .I have a 10 years old Mac and I made a highly detailed version of the timber ridge route in 2019 and it drives it on high settings without stuttering , if an old rig like that can cope I think most modern computers with a 6gb card should manage high detail fine. As long as one doesn't use assets that slow down frame rates.
 
...@robd If you have 7Zip you can use it to unpack the .gz file. But beware if you open the .gz file with that program you need to double click the .tar file it displays as this is also a compressed file to get to the folder that contains all of the application files. As noted above I am using TRS19. All I did was drop the two files into the root directory of the TRS19 install. If it presents problems for you then you should be able to go back and just delete those two files.

Paul :)

The archive you are interested in is named "dxvk-x.x.x.tar.gz". Files from it can be extracted with 7Zip or WinRAR.
As far as I know, TRS19 also uses DirectX11, but archive also contains replacement DLLs for DX10 and DX9, so to be 100% sure you can extract other d3dx.dll files from archive as well. Even if they are not going to be used, they should not brake anything. Just don't forget that you need 64 bit versions of those.

I just tried this with the competitor's simulator and DirectX9 Vulkan API replacement worked as well, also improving FPS. Although bloom effect had become really colorful and nauseating.
This "fix" is simple and easily revertible. The application that uses DirectX will try to load these libraries from the execution folder first. That's why just copying libraries into game folder makes it use them instead of versions installed in the system.

Got it! Thanks to both of you :)
 
" The computer has to render all those assets, even though you wouldn't notice them. Why add them?

"Because if I'm running without a schedule ( wildcat), I might want to stop somewhere next to a stream and go fishing.
 
Last edited:
WOW! I think I just found a solution!

E2 is using DirectX 11 and a wonderful community have developed a Vulkan implementation of Microsoft's library.
Just go here https://github.com/doitsujin/dxvk/releases, download the latest release and put DXGI.DLL and D3D11.DLL from downloaded archive to TRS22 folder.
And voila! TRS now uses Vulkan API which utilizes full [AMD] GPU potential without torturing GPU's copy engine.

Tried it with my RX 5700 yesterday, works like a charm (using Radeon Pro Q4 2021 driver)

For those that want to extract the archive without installing any additional software, fire up cmd/Windows Terminal/Powershell* and use the tar utility Microsoft took over from unix/linux world:

Code:
PS C:\Users\lockh> cd .\Downloads\
PS C:\Users\lockh\Downloads> tar -xvzf .\dxvk-1.9.4.tar.gz


Thanks for the hint!


* a) in Explorer, navigate to your download folder and right click on an empty space, Select "Open in Windows Terminal" (in Windows 11) or
b) in Explorer, navigate to your download folder and type cmd in adress bar (Windows 10) or
c) hit WIN+R, type cmd and navigate to your download folder using the cd command and then run the tar command (Win10+11)
Lockheed
 
I don't know what exactly happened about a week ago, but one morning DXVK started failing to create a D3D11 (Vilkan 1.1) instance for TRS. I have tried different driver versions, different DXVK versions and DXVK asynchronous fork, but TRS still fails to initialize graphics context. I even reinstalled DirectX and uninstalled some latest Windows updates, but the problem didn't go away. ):

I guess, I will keep looking for a way to run TRS in OpenGL mode.
 
Last edited:
I had to reinstall Windows because it died after a power outage. DXVK works again on fresh OS and latest WHQL drivers (22.3.1).
 
WOW! I think I just found a solution!

E2 is using DirectX 11 and a wonderful community have developed a Vulkan implementation of Microsoft's library.
Just go here https://github.com/doitsujin/dxvk/releases, download the latest release and put DXGI.DLL and D3D11.DLL from downloaded archive to TRS22 folder.
And voila! TRS now uses Vulkan API which utilizes full [AMD] GPU potential without torturing GPU's copy engine.

I ran all the same tests and here are results:

Ultra settings profile: 17 FPS, 100% GPU 3D engine, 2% GPU copy engine, 10% CPU
High settings profile: 35 FPS, 100% GPU 3D engine, 2% GPU copy engine, 13% CPU
Medium settings profile: 125 FPS, 100% GPU 3D engine, 3% GPU copy engine, 17% CPU
Low settings profile: 162 - 182 FPS, 70% GPU 3D engine, 6% GPU copy engine, 11% CPU

GZ 57921 scenario for Niddertalbahn route on medium preset:
103 FPS, 100% GPU 3D engine, 2% GPU copy engine, 18% CPU.

Since GPU is no longer occupied doing unnecessary DMA transfers, trains' movement on tracks had become smoother. And default (and the only for the moment) scenario on Znamensk-Svir route has actually become enjoyable (changing the rendering API almost doubled FPS). Other routes I had terrible experience with are now playable as well.

I must apologize to Auran/N3V devs for mistaking Microsoft's doing for their attempt to screw AMD GPU owners over. MS is to blame for their crappy work on D3D11.
Guys, give me your office address so I could sent you some beer. :)

Anyway, switching to Vulkan API should improve rendering performance for AMD Radeon owners (and windows users, of course), but may also be useful to nVidia lovers.

This worked for me on a 6800 XT, but there is no support for anything over 1080p resolution and the image is sort of white washed, sort of like gamma is out of wack.

Edit: So I was using the latest release (1.10.1) which for this particular game is riddled with issues. Complete uninstall of AMD drivers did not work. Went back to version 1.9.4 and it is working flawlessly. With the normal DX11 drivers I would only get about 30 seconds before the image froze up and was met with a driver timeout notification. I am now getting a solid 75+ fps in the most detailed areas with all of the settings maxed out (other than shadows, even this card has trouble with it), in less detailed areas 155+ fps. Went with the 6800XT over a 6700 specifically for this game becuase of how GPU intensive it is and it was the only game to have performance issues :D.
 
Last edited:
Apologies for the bump.

I'm currently trying to do this myself. Is there anything more i have to do other than putting the .dll files into the root folder for trainz? As i don't think i'm seeing much performance improvement but it could just be optimisation. I'm running a 6700xt.
 
Apologies, yet another bump.
Only just discovered this thread which has been a Huge help, no more screen freezing, thank you twixted for bringing it to our attention.
Rx 5600 XT
AMD Ryzen 5 4500 6 core.
 
Well thanks for that bump, I've just come across this thread. I've added the DLLs to my TRS19 installation to try it out - wow! fps seem to be maxed out. Can't N3V officially incorporate these DLLs into the game, they seem to make a big difference?

Paul
 
Last edited:
AMD or Intel ?

Currently thinking of upgrading from my Acer nitro laptop which has a Nvidia 1660ti to a desktop , its SO confusing regarding which CPU or GPU to pick.I don't need 4k ability, I just run two 32 inch monitors at standard HD levels ( the nitro will only allow me to run one screen which is really why i want to upgrade) . Not a fan of TURF fx so could go either way . Overall is GPU still more important than CPU in trainz 2022 ? Would I see much improvement using 32gb ram or 16?
 
If one has a latest Radeon video card why not download the Radeon software suite (usually comes with the new card and can be downloaded for free).
This software can set up your Radeon GPU card to autromatically and optimise the performance of each application when playing a game.
Frame rates, GPU and CPU temperature can bne monitored.
Check out the official Radeon web site for details.
I always run TS12, Tane, TRS19 in half sync mode so the picture is darker but frame rate is far better.
Mike D.
 
Hi All

I have Threadripper 3970x running on TRX40 Extreme motherboard, 128GB Ram, 4TB NVME storage and Radeon 6900XT with 16GB VRAM, and 4K monitor rat 60Hz.

I also have a GTX 1080 ti in the machine that I use for Phys-x when games require it.

Just bought Trainz 2022 and it was running at 30fps in the Kickstarter County 2 (TRS222) route, Highland Limited Session when the game first loads and it just got worse once I started moving.

When I jumped to the gtx graphics card for the game, it worked buttery smooth - with a small reduction in frames when I get to dense areas with a lot of assets.

I just installed the Vulkan libraries as instructed by Twixed and I am now getting a smooth 60Fps on full vSync, even on the dense asset areas on the 6900XT.

Wish Microsoft and AMD would sort out their implementation of DX11. This was a source of great frustration in TRS 19 and was one of the reasons I held off upgrading to TRS 2022.

Thanks for all your investigative work Twixed - very much appreciated.
 
Last edited:
Back
Top