TRS19 & TRS22 Performance on Radeon GPU

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?
 
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 very much doubt Nv3 has rooms full of developers, it's a pretty small company . I have an Rx 580 8gb in my antique 2010 Mac Pro, it handles most routes quite well,either tane or 2019 but it's hardly comparable with your experiences, different os for a start . I think the main issue with trainz is the content it uses, some assets can bring the game to its knees because of the way they have been created , not many other games contain user generated items in the hundreds of thousands which have not been optimised for the game engine, many date back to 2004 ..... it is what it is , it's game that wants plenty of ooomph and even then, it will probably struggle on some routes , Horace fithers bear creek brought my 2020 Acer nitro 5 with a 6gb 1660 ti card to its knees when I first opened it up,had to pullback all the sliders to get it to run at all
 
I totally understand that for somewhat serious simulation games 20+ FPS is perfectly acceptable. The very first simulation game I played in my life was producing only about 2 FPS (and was only drawing dots, not even polygons, let alone textures). But it is kinda strange that the same hardware that runs simulators like TSW and MSFS2020 at 60+ FPS on ultra settings struggles (dips below 20 FPS and stutters movement of trains on the latest Znamesk - Svir route, for example) with something that is more than two decades old. And pls don't tell me that E2 was more that just a facelift for an aging engine. This engine is clearly doing something wrong and I am trying to figure out if that's something that can be fixed or at least tweaked a little bit to improve performance.
I agree, and to me, there is a massive difference between 30 and 60fps. I will always turn down graphics in order to retain smoother, consistent 60fps. 30fps (let alone 24) is not acceptable for me. Thats how I used to game on my old computer, but after upgrading, all my others games (including TSW2) run at 60fps+, and I would expect the same from trainz, and I hope they optimize the E2 engine to match the optimization of its competitors someday. Currently, shadows have to be set to low, TurfFX disabled, draw distance 3000, and post process and water on low, and "process objects behind camera" off to even get close to consistent 60fps, and even than there is stuttering on routes like kickstarter country 2, and larger routes like Cornish Railways. This isn't just a AMD problem. I have a i7 4790k + GTX 1060 6GB. Getting a better PC isn't going to solve the problem. The engine just needs more work and optimization.
 
Last edited:
I have an Rx 580 8gb in my antique 2010 Mac Pro, it handles most routes quite well,either tane or 2019 but it's hardly comparable with your experiences, different os for a start .

Since MacOS cannot have DirectX by default, this makes me think that OpenGL was not removed from E2 engine. We just don't have an option to switch to it in game preferences any more. But OpenGL is still there. And it would be nice to know how to enable it. Because clearly TRS doesn't know how to properly work with 6600 XT via DirectX.

I think the main issue with trainz is the content it uses, some assets can bring the game to its knees because of the way they have been created , not many other games contain user generated items in the hundreds of thousands which have not been optimised for the game engine, many date back to 2004 .....

I am not concerned about community content not being optimized. I only want to know if it's possible to make E2 stop torturing my graphics card.
 
Last edited:
I agree, and to me, there is a massive difference between 30 and 60fps. I will always turn down graphics in order to retain smoother, consistent 60fps. 30fps (let alone 24) is not acceptable for me. Thats how I used to game on my old computer, but after upgrading, all my others games (including TSW2) run at 60fps+, and I would expect the same from trainz, and I hope they optimize the E2 engine to match the optimization of its competitors someday. Currently, shadows have to be set to low, TurfFX disabled, draw distance 3000, and post process and water on low, and "process objects behind camera" off to even get close to consistent 60fps, and even than there is stuttering on routes like kickstarter country 2, and larger routes like Cornish Railways. This isn't just a AMD problem. I have a i7 4790k + GTX 1060 6GB. Getting a better PC isn't going to solve the problem. The engine just needs more work and optimization.

Just out of curiosity I bought, installed and ran competitor's train sim which also has a 10+ years old engine. And guess what? Event if that engine can only use two out of my system's 12 threads, it still runs silky smooth on highest possible settings (except for blur - I hate this thing). Maybe it doesn't use bold words like "physically based rendering", but it has dynamic lights, dynamic shadows, properly working ambient occlusion, and none of the movements of objects in the game world are janky or stutter. Yes, it doesn't have the same amount of user created content, but still has enough to seriously consider forgetting TRS. I won't even ask for refund.
 
Just out of curiosity I bought, installed and ran competitor's train sim which also has a 10+ years old engine. And guess what? Event if that engine can only use two out of my system's 12 threads, it still runs silky smooth on highest possible settings (except for blur - I hate this thing). Maybe it doesn't use bold words like "physically based rendering", but it has dynamic lights, dynamic shadows, properly working ambient occlusion, and none of the movements of objects in the game world are janky or stutter. Yes, it doesn't have the same amount of user created content, but still has enough to seriously consider forgetting TRS. I won't even ask for refund.
Not trying to troll or anything, but may I ask, what game is this you are referring to? (I seriously don't know which one you are referring to)
 
Since MacOS cannot have DirectX by default, this makes me think that OpenGL was not removed from E2 engine. We just don't have an option to switch to it in game preferences any more. But OpenGL is still there. And it would be nice to know how to enable it. Because clearly TRS doesn't know how to properly work with 6600 XT via DirectX.

open gl has always hampered mac users in Trainz, my understanding it is not used at all in the latest mac version as they are using metal .

I am not concerned about community content not being optimized. I only want to know if it's possible to make E2 stop torturing my graphics card.

Well you probably should be, as its contained in practically every route out there and in my experience it plays a significant role in draining system resources . I had a section in a route i'm making which was unplayable due to content I'd downloaded from the DLS and once I deleted some grasses I'd been using which were causing issues, it all went back to situation normal.

Stuttering is common among trainz users , look at the youtube trainz videos out there, most are pretty jerky and yet a lot of guys have got powerful rigs. for whatever reasons , smooth play using high settings is not all that easy to achieve, you need top end cards.
 
Not trying to troll or anything, but may I ask, what game is this you are referring to? (I seriously don't know which one you are referring to)

I don't think I am allowed to call the name here (yes, I didn't read the rules. but who does anyway?).
Can give a hint though: another train simulator which only updates a number in title every other year, but does not really change.
 
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.
 
There are some amazingly poor performing assets on the DLS which could be the root of the trouble. Try running on a blank baseboard route of at least 10 boards with non protrack and see what performance you get, especially in regards to your copy issue. I used to run a GTX1060 6GB card and now have GTX1660ti 6GB and the difference is chalk and cheese. Everything now runs smoothly at near max settings. The E2 engine was developed for TANE and has been improved with every version thereafter and apparently still has plenty of life left in it.
Trainz is Trainz and is not trying to be TS or TSW despite the angst of the islanders off the coast of Europe. I find it works well for what it is, but does need very good hardware to get the best out of it.
Edit: I see you found the solution whilst I was typing slowly.:)
Cheers Graeme
 
Last edited:
twixed, Its almost hard to believe. I did what you said, and the GPU does not even exceed 60% with draw distance turned up to 6000, "process objects behind camera" on, and tree and scenery detail on normal. It still stutters occasionally, and it looks just a bit blurry, but overall this is looking good! I'll do more testing with this tomorrow.
 
This really is amazing!

My RTX-3080 isn't cooking at max temperatures any longer. I did decrease the voltage to 75% but the fan curve is on automatic based on the GPU thermal sense.

Thank you for this.
 
...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...

Thank you for this info, it looks quite interesting. I would like to try this with my RTX 3070Ti but I'm not up to speed with extracting the DXGI.DLL and D3D11.DLL files from the so called archive.

Please, which one of the 3 files in the link is the actual archive and how does one go about extracting the *.dll files from the archive? Is there anything else one needs to do before using this fix; will it work in TRS2019 or shouldn't I bother - I don't intend getting TRS2022 yet!

Thank you in advance for any advice.

Rob.
 
Thank You twixed for that information. I recently replaced a GTX1070TI with an RX 6700XT and was very disappointed with the performance in gain I got in TRS19 (almost nothing) so I downloaded and installed the files and voila, at high scenery detail settings I am getting 60 fps.

@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 :)
 
Thank you for this info, it looks quite interesting. I would like to try this with my RTX 3070Ti but I'm not up to speed with extracting the DXGI.DLL and D3D11.DLL files from the so called archive.

Please, which one of the 3 files in the link is the actual archive and how does one go about extracting the *.dll files from the archive? Is there anything else one needs to do before using this fix; will it work in TRS2019 or shouldn't I bother - I don't intend getting TRS2022 yet!

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.
 
Sounds good twixed
Will this work with a AMD Ryzen7 and NVIDIA GeForce GTX 1660 Ti?
Dxdiag says I have DirectX 12
 
Sounds good twixed
Will this work with a AMD Ryzen7 and NVIDIA GeForce GTX 1660 Ti?
Dxdiag says I have DirectX 12

You can try. It is not likely to break anything by copying two files and removing them if you see no improvement.
DxDiag says that your system has DirectX 12 installed, meaning that any application that tries to use DX12 will find required libraries in system folders.
 
TY twixed
I tried it on old TRS19 build 100240 (my favorite)
and getting 42 fps and up all the time, most my settings are on Ultra
btw only using non PBR routes and trains, driving 300km/h :)
have to do a real compare though.
 
Back
Top