Dear Sir,
1. I simply stated facts. I never boasted about nothing.
2. Hardware is only usefull to a program to the extend that the program can take
advantage of it. Otherwise a 1000-core processor with 1000 Gbyte RAM is no better
than a Pentium 4 system with a fraction of that RAM from the point of view of the
software that runs on it.
3. I only mentioned RW because I needed something to compare Trainz to. If you don't
want me to mention the particular product, I can use for comparison an
openGL-based (owned by more than... 1 user) flight simulator called X-plane with
an ultra-high resolution photorealistic add-on scenery (with 2048x2048 textures etc)
installed called 'VFR-England'. Well, a system with the posted specs, yields at max
quality settings silky-smooth frame rates.
4. Last, I love Trainz at least as much as other members of the community if not more
than many and I have been using it since times when many people who claim
today to be Gurus on it, did not even know it existed.
With my best regards,
manos
Okay, now we're talking... LOL
Your system maybe very fast, however the environment that Trainz produces is far different than any other simulation you've ever used or use for that matter.
1) Trainz is open ended development environment.
This means that you can keep adding content beyond what will ever be needed to run the program right down to sewer grates and water pipes if you want to go that far.
Remember the program is trying to load all this data in real-time in front view. The front view movement in any simulation is extremely hardware intensive, and by throwing more objects in front of your point of view as you move along.
This being an open ended environment, is more so intensive because the player can go anywhere in the environment. This is unlike your flight simulations, which really draw very little 99% of the time other than the stencil view of the cockpit. The other train simulation (not mentioned by name in this thread), is similar. If you notice, they may appear to have an open environment, but your camera is not free moving, and you have a fixed place where you can go because on the other side of a hill, there's no town, or in some cases, the trees and buildings end less than a meter outside the tracks.
This is how many simulation developers get around the stutters. They use what's called cooked environments. With a cooked environment, your environment doesn't change, ever. They may have dynamic lighting, but nothing else is unpredicted. No animation occurs until the player comes into view, etc. There's nothing else happening anywhere else in the environment, no matter how far away.
2) Multiple threads within the program.
All programs have multiple threads, depending upon what is involved with the operation. Trainz again is truly a multi-threaded operation. The program is not just responsible for drawing the images on the screen, but there are numerous other tasks happening in the background as well. Every scripted object, whether it's a switch stand, animated building, interactive industry, signal, traffic light, etc., I could go on with examples, is vying for attention from the game engine. Again, many other programs do not have this intensity at the consumer-level. (We're not talking giant multiple transaction databases here, just a train simulation sold for roughly $58).
3) Hardware.
You mentioned you have quite the system. This is great, and can handle Trainz well if you keep the following things in mind:
a) Keep your disks defragmented and has plenty of free space.
Trainz accesses the disk quite a bit as it reads and writes data. The more your disk is fragemented, the more thrashing your drive is going to do as it goes through the process of loading in data. Granted newer hard drives are faster, but they still need to be defragmented. SSDs are much better, but are too expensive right now for many users.
b) Adequate cooling.
Keep your computer cool. The fans and air vents must be kept clear of obstacles and clean from dust and dirt. As your computer works to keep the program's processes running, the components heat up. When components heat up, they slow down to keep from burning up. You'll notice too that with some systems, the fans run faster as the display gets choppy. This is the processor trying to cool its self down to a reasonable level to operate properly. Video cards will do the same these days, and in fact many of them have variable speed fans and power systems to handle this scenario.
c) Drivers should be as up-to-date as they can for your given hardware.
As we've all learned in the past, or should have the hard way, sometimes the latest and greatest drivers aren't the best, but instead an older one does the trick.
d) Turn off unnecessary background programs.
File sharing utilities, chat programs, music players, Skype, etc. all eat up resources, and plenty of them. The general rule of thumb is not to load any of these things in at start up unless they're absolutely necessary, and to be honest, why would Skype have to load at start up, for example?
I could go on with the computer tips. In many cases these are common sense, and should be followed by most PC and Mac owners today.
Now having said this, could N3V improve the performance of the program? I'm sure they can, and it has come a long way from where it was. Among the areas of improvement as been the asset clean-up initiative. With assets now running with fewer bugs, the program does not have to parse through errors, which can cause stutters and crashes, to load in the asset into the scene. Imagine this happening thousands of times as the objects are loaded into view! This is how it was with older versions of Trainz, which didn't have the error checking built into the program the way it is today.
I'm sure too that they could optimize the code more. I'm not a programmer, just an IT support person, so I know very little about programming. As time goes on, the program will be improved and become better and better as we've seen so far.
John