H10 Mikado double header (BETA)

Creating and Editing Rollingstock
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (experiment/WIP) Unread post

Y'know after a bit more running this frame rate thing appears to be rather random. Following a train starting from Memphis on the 250+ double Mikado map, frame rate was in the 25-30 range at Memphis itself. This had a pile of trains messing around near the station, as well as a lot of building detail. Once the train got out into the plains where there were no other trains and few trees or buildings, frame rate climbed to over 90 with the camera set to take in as much of the double header unit as possible at close range, along with as much scenery as possible. I figured angling the camera from close in just behind the second loco around wheel top height, and forward along the track from there, would give maximum graphics loading for that run. Ok, so up around 90 fps.

The fps dropped again at the station at the other end of the run, which isn't surprising, but the really weird thing is that on the way back across the plains frame rate never climbed above 35 even though it was the same run that had hit an easy 90 going the other way. That one stumps me. :-P

Anyway for graphics settings...

Settings > Graphics: I always have "Color mouse cursor" turned off because having it on doesn't make the cursor look any better.

Settings > Graphics > Model Detail: I want the train detail maxed out so left that at 20. Same with Ground. Buildings look ok even down at 15, but it seems to make no difference to game fps. Tree models are rough as guts anyway so I tried turning them down to 15. Didn't seem to look any worse and should save some processing power.

Settings > Graphics > Draw Distance: I kept Track and Trees maxed out here, just to give a less jaggy feed-in of the scenery, but knocked Buildings and Trains back to 15. Also took Tree Density back to 85%. Distance fogging is still on, but I might try it with that off too.

Settings > Graphics > Textures: Texture Detail is on High. Mipmapping is on Tri-linear. +0.5 Mipmapping bias in disabled. Anisotropic filter is enabled. Clouds and Ground Detail are also enabled.

Settings > Graphics > Miscellaneous: I'm trying Particles on Low, which frankly makes no difference on maps where the trains don't smoke anyway, but is supposed to give a slight speed bonus. I've turned shadows down to Default Quality since that is supposedly one of the bigger hits to processing. Still looks fine to me. Font Shadows are on. Ocean Waves are on. Water Reflections are off, just because they never seem to work on my box anyway. This may be something else related to nVidia gfx cards (the low-res bug didn't seem to affect Radeon cards, only nVidia IIRC).

[off topic]
Y'know I am finding learning about the vagaries of the game engine, file formats and modelling limits to be as much of a "real time strategy" buzz as actually playing the game. :mrgreen:
[/off topic]
User avatar
RulerofRails
CEO
Posts: 2063
Joined: Sun Dec 08, 2013 1:26 am

Re: H10 Mikado double header (experiment/WIP) Unread post

Ok, I never clicked on the (+) icon that brings up the graphic sub-menus. !facepalm! I never saw or adjusted any of those settings. I will now have to experiment if I can get the game to stop freezing with some different settings.

I agree that frame-rate is only a measure of how the PC is keeping up with various things. Only when it begins to fall behind does it become a problem. I tried to eliminate most of the background stuff by testing with a blank map. The clouds and weather in the background obviously will affect things too. I have also noticed that all a cities' buildings take a fair bit out of frame rate even on pause.
User avatar
Hawk
The Big Dawg
Posts: 6504
Joined: Fri Nov 10, 2006 10:28 am
Location: North Georgia - USA

Re: H10 Mikado double header (experiment/WIP) Unread post

Gumboots wrote:Water Reflections are off, just because they never seem to work on my box anyway. This may be something else related to nVidia gfx cards (the low-res bug didn't seem to affect Radeon cards, only nVidia IIRC).
Must be later cards because water reflections work fine on my Nvidea card - 7600 GT KO 256 MB.
I have all my graphics settings maxed.
Hawk
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (experiment/WIP) Unread post

I've been checking up on this LOD stuff some more and a couple of items stand out. Pistons, connecting rods and coupling bars, which only ever have one LOD, often have a higher vertex count than the loco body by the time the body is at lowest LOD.

The (single, default) H10 has 34 vertices for the loco body, but 2x16 vertices for the pistons and 2x10 vertices for the connecting rods and 2x10 vertices for the coupling bars for a total of 34 + 32 + 20 + 20 = 106, with only 32% of that being the loco body. The H10 double obviously has double these numbers for everything, but the same body/total ratio. Some of the other locos are even more extreme.

The Big Boy has a lowest LOD of 45 vertices for the loco body but only one LOD for the pistons (4 @ 10 vertices each) coupling bars (4 @ 50 vertices each) and connecting rods (4 @ 6 vertices each). So lowest LOD for the Big Boy, just for these components, is 45 + 40 + 200 + 24 = 309, with only 15% of that being loco body.

The Red Devil has 50 for the loco body, but 2x18 for the pistons and 2x24 for the connecting rods and 2x76 for the coupling bars, so for the Red Devil it's 50 + 36 + 48 + 152 = 286, with only 17% of that being the loco body.

The Duke has 34 for the loco body, but 2x16 for the pistons and 2x22 for the connecting rods and 2x7 for the coupling bars for a total of 124 with 27% of that being loco body.

This seems a bit nuts if reducing rendering loads is the aim. The only reason that I can think of for doing it this way is if changing LOD with rotating/reciprocating animated components breaks something, but that doesn't seem likely since the loco bodies move around the place anyway. If it doesn't break the game, it seems obvious that introducing more LOD's for these components would be a simple and effective improvement. Any .3dp file can run quite happily with zero vertices and polys in it, so with the loco bodies dropping so much detail I can't see why lowest LOD for connecting rods and coupling bars couldn't be dropped back to a basic rectangle at most, or possibly nothing at all.
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (experiment/WIP) Unread post

I found some interesting stuff regarding rendering performance: [Technical Talk] - FAQ: Game art optimisation and Beautiful, Yet Friendly.

Figured it should go here since this thread is mainly about how far modelling can be pushed without wrecking performance. The stuff in the links isn't written by idiots but by experienced game devs who know what they are talking about, and gives some food for thought. For example, they say that the count for any mesh under about a few hundred polys becomes irrelevant for rendering speed. 100 will render as fast as 50, due to the way video cards handle them in lumps.

It also clarified one question I had been wondering about. This was whether it was better to use more vertices or more tris (polys) in some cases. RT3 models often have cylinders capped with triangles fanning from the centre of the end face, or from one vertex on the end. This minimises the number of vertices. Other times, they'll have a separate end cap made from a simple square that is not connected to the same mesh as the cylinder. This introduces four more vertices for the square but means only two tris for the end cap, which reduces the number of tris. Which is better for performance?

It turns out the second way is better, because the UV mapping means that although the "built-in" end cap may appear to have fewer vertices it actually has more from the perspective of the game engine. This is because the game engine will duplicate vertices that have the same x,y,z co-ordinates but different UV co-ordinates. They have to be drawn individually because each vertex (in the game engine) can only have one set of UV co-ordinates. So, if you have an 8 sided cylinder that is mapped the usual way, at least 6 of the end cap's vertices will be duplicated for rendering, making for a total of 14 each end. It will also have a minimum of 6 tris (minimum number of tris is "cylinder sides minus 2").

OTOH, with a separate square cap there will only be 12 vertices each end in total, since none need to be split. There will also be only 2 tris, so all things considered it will have 2 fewer vertices to render and 4 fewer tris.
User avatar
Tomix
Brakeman
Posts: 105
Joined: Sun Sep 29, 2013 9:58 pm

Re: H10 Mikado double header (experiment/WIP) Unread post

Was this experiment done with hex editing? Or was it exported with a script?

Fantastic work. !*th_up*!
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (experiment/WIP) Unread post

Just basic hex editing for this one. It only required renaming a couple of files and tweaking some attachment points. I haven't yet been enthused enough to do the extra tweaking required to get it to behave around corners.

By the way, if anyone feels a need for cheap, reliable (but slow) locos that can really haul up hills, given their lack of tenders in default form it would be extremely easy to make double-headed Shays and Fairlies. It would be simpler than making a double-headed Mikado, and they would automatically behave themselves around corners with hardly any tweaking required.
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (experiment/WIP) Unread post

If anyone was wondering, so far I still haven't been able to sort the behaviour of this thing around corners. I have been playing around with it whenever I get another quick and easy idea that might work, but so far they haven't worked.

I think I know what would work, but it's a lot of messing around and a thoroughly evil-looking prospect. I'm not really up for that at the moment.
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (experiment) Unread post

Hey I think I can make this work now, because the thoroughly evil prospect of lots of tedious hex editing has been reduced to a five minute job. I have the thing set up in Blender and as looking at the basic geometry compared to the alpha AD60 Garratt model. Each loco/tender until is 15% shorter than the Garratt, meaning it should give better behaviour. I could reduce the problems even further by substituting the tender mesh and UV's for a shorter tender, which I'm planning on making for the Berkshire anyway (double bogie B&A high top, based on a USRA 5,000 gallon body IIRC).
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (experiment) Unread post

Figured out a plan of attack. The cornering problems of the old version are likely down to the track points being wrong. I've messed around with several models since trying this, and it looks like the amount a truck will turn around corners depends on how close its pivot point is to the nearest track point. Further away gives a shallower angle. Closer gives a sharper angle. OTOH, if the truck's pivot point is outside the region between the locomotive's two track points, it won't turn at all and will just stick out straight behind the loco. This is what was happening with the first test model for the double H10.

The other problem is length points. For locos or tenders which have anything connected behind them, the game seems to want their mid points to be close to halfway between the length points. Having things wildly offset one way or the other screws up the placement of the next unit in line. That accounts for the difficulties I was having with getting all the ducks in a row, without having their beaks shoved where beaks should not be shoved and/or without them trailing too far back.

What I think will work is shown in the picture below. This changes the geometry to treat each loco/tender unit much like a Garratt. In this scheme, the nominal loco "body" becomes the loco's rear truck and the tender's front truck. These will be one unit, and will stay in line with each other. The rest of the locomotive becomes Truck1, and the rest of the tender becomes Truck2. These attach to the body, and pivot around, the points indicated by the yellow arrows. The so-called track points, which very roughly define where the whole shebang attaches to the track, in a very loose and rubbery manner, are out at the green arrows. Based on the behaviour of the Garratt test model this looks about right.

I may also include a Truck3 and Truck4, with pivot points further out than the first two trucks, just to see if I can get the loco's front truck and the tender's rear truck looking a bit better around corners. Not sure if it will be worth having in the final version or not, but it's worth trying.

I want to see if I can get this schemozzle working, so will have a crack at it tonight. Whatever happens it'll still be handy information for future double headers. !*th_up*!
Geometry_plan.jpg
Geometry_plan.jpg (61.87 KiB) Viewed 5127 times
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (BETA) Unread post

Ok, so I have it working pretty well now. Tracking around corners isn't perfect, but then none of the other locomotives are perfect around corners either. It's now about as good as most default locos. I may be able to improve it some more, but then again I may not. It turned out to need different geometry to what I expected. This old game engine has yet more weirdness hiding in dark corners. :roll: I'll post up the final geometry after more testing, but I can't be bothered changing it any more at the moment.

This version doesn't have all the LOD's yet either, so large numbers of them may cause a performance hit. Small numbers of them don't seem to cause any problems. Stats are provisional. Basically, one grade increase on acceleration over the single H10, purchase price and maintenance cost and pulling power and free weight are doubled, same reliability and fuel consumption ratings as the default single version.

For comparison, this thing will haul up grades about as well as my Berkshire but at a greater cost. This is about right for what you'd expect with a real double Mikado compared to a Berkshire. It should make a good hauler in the years before Berkshires are available, but as in real life the Berkshire will haul the same ton/miles cheaper.
Attachments
H10_Double.zip
(778.13 KiB) Downloaded 267 times
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (BETA) Unread post

Bumping this, because this thread mainly about testing the limits of the game's graphics engine.

I just did some more quick testing. I had a game save of AoS Blue Streak with plenty of city/industry development on it, and a full rail network running 234 trains. As I said over in the Death Trap thread, I tested replacing all locos with the 2-6-4T Double Header, which has a verts count around 40% higher than the PopTop H10 Mikado, and a tris count around 90% higher, and has 5 LOD's like the default model. I then picked a train that had a good long run through a range of stuff and followed it.

Frame rates varied wildly. At one point going as low as 17, and at other times getting up around 100. Chicago seemed to generate higher frame rates than the rest of the run to St. Louis. After checking out things and thinking about it, I suspect this may be down to the absence of trees in the Chicago area. It doesn't seem to be affected by the number of trains on screen at close range, since Chicago was often full of them and frame rates were always at least 70.

The low point of 17 fps occurred with rain, and when crossing the river to St. Louis. That area is also chock full of trees. I think the extra eye candy involved in all of that is what made the difference.

I also noticed that although frame rates were normal for at given area at night, having the moon come up just after sunset knocked the frame rate back quite a bit. It would lose an easy 20 fps while the moon was rising and the sky colour was changing, and then go back to normal once night had set in fully.

Another weird thing I noticed, and it was totally repeatable, was that frame rate was affected by the direction the camera was facing. With the camera locked onto a train, the frame rate was highest when the camera was pointing in the train's direction of travel. Turning the view so the camera faced the rear of the train always resulted in an immediate and significant drop in frame rate. I was watching the frame rate go up and down like a yo-yo just by repeatedly changing the direction of view.

Ok, so all of this is with 2-6-4T doubles. I then changed it to all H10 Mikado Doubles, which obviously have a verts and tris count twice that of the default H10. These were the early development version of the double H10, not the version in the post just above. The difference is that the early version has 5 LOD's, and the latest (lazy) version doesn't.

Anyway, frame rates didn't seem to be much different. I didn't see it go as low as 17, but then this time around I didn't get the combination of rain and the river crossing. Lowest rate was around 21 or so. Highest was still in Chicago, and still up around 100.

Ok, next test: change the whole roster to default single H10 Mikados, and immediately halve the number of loco verts and tris on screen.

Not a lot of difference, AFAICT. Frame rate was still low sometimes, and still high in Chicago. The overall frame rate (across the whole run) between all H10 Doubles (2,500 verts and 1,700 tris) was maybe 10% different to the frame rate with all default H10 singles (1,250 verts and 850 tris). With all 2-6-4T Double it was in the same range, as you'd expect. It was still affected by moonrise, and it was still affected by the direction the camera was facing.

Although the H10 has around 50% more verts than the 2-6-4T it only has around 5% more tris. This figure may be more important than the verts count (see Best Answer here), since frame rates seem to be very close with either model running. I will also go through the H10 and 2-6-4T models and check for the number of separate objects (ie: draw calls). That could be handy for comparison with other custom models. Basically, more separate objects = worse performance for same number of tris. And sometimes, more verts can = better performance for same number of tris (because if you split a position into two verts it can save the gfx card having to do it).

I did try dropping tree density from 100% down to the slider's minimum of 40%. That gave some improvement in frame rate, but not a huge amount. It'd be interesting to test a map with no trees at all, and then the same map with lots of trees along the route. It'd also be good to test the same route with different weather conditions and time of day locked in.

I should also test swapping between the default H10 and my A1 Berkshire. This would be useful because since the Berkshire was built before we could use Blender, it has exactly the same numbers of verts and tris as the default H10, but it doesn't have 5 LOD's to reduce gfx loading at long range. Like all locos that customised the body mesh during the pre-Blender-export-script period, it only has the top LOD.

Short version is that AFAICT at the moment the loco poly count has some effect, but the frame rate is affected by a lot more than the poly count** of the locos, or the number of locos on screen, and these other factors seem to make more of a difference.

**(meaning number of tris, which aren't really polygons as such even though that's what every script kiddy wants to call them :roll: )
User avatar
Just Crazy Jim
Dispatcher
Posts: 413
Joined: Fri Oct 14, 2016 9:57 pm
Location: Coal Fields of WV

Re: H10 Mikado double header (BETA) Unread post

I dragged out my Acer netbook (which I call the POS 2000) while my desktop was offline. The netbook has 256 MB of system RAM allocated for video, 1.5 GB system RAM total. I can say with some feeling that playing RT3 on that thing was all about low video settings and crap frame rates. That served as a reminder that RT3 is almost 14 years old and its render engine isn't getting any younger. We have more video and system RAM and faster GPUs and CPUs than PopTop ever imagined possible in 2003, and it bears pointing out that the render engine in RT3 reflects that lack of vision.

I can't remember when I last had a video card with 256 VRAM in a desktop. By the time RT3 came out, I had an Nvidia card with 1 GB DDR3. I suspect that may not have been typical in 2003. I vaguely remember most graphics intensive games of that period were suggesting 512 MB or more. Not that I ever noticed any benefit from having 1 GB of VRAM at the time. The render engines of almost every game on the market in 2003 were (by modern standards) unimpressive and did no caching of objects. In 2003, if the game you played was 3D intensive, then there was a lot of waiting for the graphics to catch up after every move, no matter which way you moved.

Comparing the render engines of Railroad Tycoon II (1998), The Sims (2000), Neverwinter Nights (2002), and Warcraft III (2002,2003), with that seen in The Sims 2 (2004) illustrates the leap in GPU technology that took place during the time RT3 was being developed. RT2 is entirely isometric bitmaps (no render engine at all), The Sims (2000) is part isometric, part rendered, Neverwinter Nights is kind of roughly rendered, The Sims 2 is entirely rendered. RT3 fits somewhere between Warcraft III and Neverwinter Nights, more on the end of the scale with Warcraft III. Warcraft III (2002,2003) demonstrates rendering very similar to RT3, but Warcraft III does not have quite so many moving parts and those moving parts it has are decidedly low-poly (as in less than 200 triangles). PopTop's work in RT3 may very well have been nearing the limit by 2003's standards, but certainly not by 2004's.

That being said, I have played Trainz and Sid Meier's Railroads!, and neither game gave me the same satisfaction or feeling as I get from playing RT3. So, warts and all, I still like RT3. AND, if you make a 30,000-triangle locomotive, I'll put it in my game and deal with the lousy frame-rate. :mrgreen:
"We have no patience with other people's vanity because it is offensive to our own."
-- François de La Rochefoucauld. Réflexions ou sentences et maximes morales. 1665.
User avatar
Hawk
The Big Dawg
Posts: 6504
Joined: Fri Nov 10, 2006 10:28 am
Location: North Georgia - USA

Re: H10 Mikado double header (BETA) Unread post

Just Crazy Jim wrote:That being said, I have played Trainz and Sid Meier's Railroads!, and neither game gave me the same satisfaction or feeling as I get from playing RT3. So, warts and all, I still like RT3. AND, if you make a 30,000-triangle locomotive, I'll put it in my game and deal with the lousy frame-rate. :mrgreen:
Not wanting to get this topic too far off-topic, I just wanted to comment on the above quote. :mrgreen:

I bought Trainz when it first came out. Played with it a bit and uninstalled it. I also had Microsoft Train Simulator, which I kept installed for a long time. I did a lot of route development and 3D modeling for it.
I also got Railworks when it first came out. I was given a copy of it by the developers due to my involvement with MSTS, They wanted my opinion. After a couple of Skype chats with Paul Jackson (the CEO), they were no longer interested in my opinion. Let's just say it wasn't as positive as they hoped. ^**lylgh I did do a good bit of modeling for it for a friend of mine who was doing a lot of of route development, before finally uninstalling it.
I also tried SMR when it first came out. I think that stayed on my computer the least amount of time.

I got RT3 the first weekend of release. At that time, Best Buy generally had new releases on sale the first weekend at a good price. I've had RT3 installed ever since. For me, none of the others compares to RT3.

I also have RT2, but I don't play it much these days.

I also tried Railroad Pioneer. I thought it was junk. I even tried Chris Sawyers Transport Tycoon but didn't much care for it either, but I do still play his Rollercoaster Tycoon to this day, both version 1 and 2. I didn't like version 3.

OK! I'm done being off-topic. :mrgreen:
Hawk
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (BETA) Unread post

Rest assured I am not going to make a 30,000 tri locomotive. ^**lylgh

Anyway one thing that occurred to me is that I currently have the "Vista fix" on my installation. From what I understand from looking around the web, the game should run better if I patched the .exe so it could use the T&L support. Since someone was kind enough to sort that for us, I'll try it soon and see if it makes any difference to performance. RT3 needs all the help it can get.

Anyway I tallied up the number of separate meshes in the Mikado and my version of the 2-6-4T.

Default H10 Mikado (single version, loco and tender bodies only, sans wheels, conrods, etc) has 1,259 verts and 848 tris for a total count of 2,107. These are in 222 separate meshes.

Yup. 222 of them. Which is a lot. Quite a few of them are completely unnecessary too. They're just a result of bad mesh splitting and could easily be ditched. Some of them are even just two or three verts joined by an edge, with no tris associated. Mehtinks somebody kinda lost the plot while working on that thing. :lol:

The 2-6-4T (single version) has 890 verts and 813 tris for a total count of only 1,703, and these are in 132 separate meshes. Which is a lot better on verts and meshes than the default H10 Mikado. But it doesn't seem to make much difference to how the game runs.

The Lion 0-4-2 model I have sitting in WIP at the moment is 1,198 verts and 1,371 tris for a total of 2,569. There are 82 separate meshes. So lots fewer meshes than the other two, but more tris, with verts being (near enough) the same as the default H10 Mikado.

Which is all very exciting and all that. Not sure what it means yet. *!*!*!

Just theorising here but... if the performance hit was based on verts, the H10 would be a 41% heavier hit than the 2-6-4T. If performance was based on tris, the H10 would be only 4% worse than the 2-6-4T. If performance was based on number of meshes, the H10 would hit 68% harder.

Of course, I can't really tell too much because there's so much other crap loading up the game engine. I suppose the only way to get a better idea would be to use a blank map tile with nothing added (no eye candy or buildings or trees or whatever), lock the time of day and weather so those weren't going to interfere, then run a long track so you can get well away from the necessary stations and see what the frame rate does out in the boondocks. **!!!**

Oh yeah while I think of it, since I have Lion's mesh sorted now (or as near sorted as it's likely to get) I should finished the UV mapping (which naturally got trashed when revising the mesh umpteen times because some wally has OCD) and just get it running with some basic solid colour to fill in the faces so I can see where it is on the tracks.

I can then edit the .lco file to give the beast the same gruntitude as a Berkshire, and that way it'll be able to handle hauling stuff in AoS IV for a test. This would be the quickest and easiest way of seeing what effect, if any, Lion's mesh has on frame rate. Plus it'll look hilarious seeing a tiddly 1838 0-4-2 hauling major ass out on the prairie. :mrgreen:

The other thing is that after grumbling about the Schools beta to Jim the other day I went and looked at it again, and it didn't take long to see where I could easily lose a few hundred off the verts+tris total without trying too hard, and without making it look worse, which means I can add back some good detail that I had stripped out. Which you might leave you wondering why I couldn't see that before. :lol: Anyway I can now, which is all good for whenever I get back to that project.
User avatar
RulerofRails
CEO
Posts: 2063
Joined: Sun Dec 08, 2013 1:26 am

Re: H10 Mikado double header (BETA) Unread post

The patch to the exe fixes the blurry textures bug. The Vista fix is a separate thing. The options members have found/shared to run without the Vista Fix (in cases where the game wont run in its natural state) are wined3d and dgVoodoo2. In my experience I haven't seen these things improve game performance. They may actually hurt it in some cases. (Bear in mind, I never set out to do a "controlled test", just my feeling/opinion.) I use them because the price map is clearly defined. Water reflections are a nice bonus too.

If you want to test on a blank map, just choose Editor from the main menu and start a new map from scratch. There's a cheat where you can get all locos available (bombardiere/Trains are in my blood).

BTW, my "tests" from earlier in this thread were on my old machine. Any serious plays now are on the new machine using the dgVoodoo2 wrapper. Only time so far that I had trouble with performance on this machine was Great China 4 for TM, which is a huge map, and I was using the wined3d solution at that time. My playing has been varied, but I don't think I've played for a long time on any other huge map. I'm pretty sure my CPU (2.6GHz) was the biggest hindrance on my older machine.
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (BETA) Unread post

I'm running a quad core 3.3 gig , 8 gig of RAM and a 1 gig gfx card.

I'll try the voodoo fix and see what happens. At the moment I'm running the blurry gfx fix that has the extra .dll files (binkw32.dll, d3d8.dll, Mss32.dll) in the main folder, so I assume those get ditched to prevent conflicts and I just run the Voodoo files.

Come to think of it, IIRC one of those is a default file that is probably required. I'll have to check up on which ones were for the blurry gfx. Me no like Bong of Doom. :lol:

Edit. Aha! It's the d3d8.dll file that is the blurry textures fix. So I assume I remove that, then patch the .exe to fix blurry crud, then do the voodoo thang. Then with a bit of luck and a lot of swearing, everything should work. Sounds good in theory. *!*!*!
User avatar
RulerofRails
CEO
Posts: 2063
Joined: Sun Dec 08, 2013 1:26 am

Re: H10 Mikado double header (BETA) Unread post

With dgVoodoo2, I had to limit the Graphics Card RAM to 512MB to prevent blurry textures (the exe patched against it didn't make a difference, dunno why). Info here: viewtopic.php?p=42226#p42226. The d3d8.dll fix for blurry textures also uses a 512MB setting (if I understood the technical jargon correctly, probably not :lol: ).

PS. Let me know if you can take screenshots with dgVoodoo2 (suspect my issue is a Win8.1 thing).
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (BETA) Unread post

That Reddit thread (linked from the thread you linked to) has this down the bottom:
The Vista/Win7 patch is what this attempts to avoid. What it does is disables Hardware T&L, which pushes all rendering to the CPU. I run on 1440p, and most people run on at least 1080p, which is rather strenuous on the CPU. Having Hardware T&L on the GPU makes the game run better when a lot is going on.

Using the D3D8 to D3D11 wrapper allows Hardware T&L to stay on without crashing.
Which is what I meant when I said that AFAIK, being able to skip the old Vista fix should make for better performance.

Edit: Those Voodoo readme files are terrible. Yellow text on an orange background? ^**lylgh I edited the style back to plain white background and dark grey text. I can read them now. ::!**!

Hey he seems to recommend using the pre-compiled shaders (D3DCompiler_47). Did you use those?
User avatar
Gumboots
CEO
Posts: 4830
Joined: Mon Aug 13, 2012 4:32 am
Location: Australia

Re: H10 Mikado double header (BETA) Unread post

Just ran some testing on the 1.06 234 Mikados game with the Voodoo gfx fix installed, with Voodoo set to 512 meg on the virtual gfx card. Runs well. Frame rate seems to be more stable. It didn't peak as high as without the fix (maximum I saw was around 80) but then it didn't drop as low either (minimum I saw was around 25). It also didn't seem to be affected by the direction of the camera view in relation to train travel. Was much the same either forwards or backwards.

It still takes a noticeable hit when the moon is rising, or when crossing a large river, but not too bad. Overall it was pretty good, with frame rates in the worst sections generally running at 30 and upwards.

This was with all H10 Doubles. Switching to default H10 singles seemed to be worth another 5-10 fps, depending on where it was. IOW, 5fps in the very worst section (so 30 instead of 25) and 10 or so in the fastest sections (so 50-60 instead of 40-50). TBH I'm pretty happy with a good 30 fps for this game anyway. Anything upwards of 45 is arguably not necessary.

Also ran it with Berkshires replacing the H10 singles, just to test same number of verts and tris but without lower the LOD's at longer range. Honestly couldn't pick any difference in frame rate. I think this is because with the higher graphics settings most of us run these days, the second LOD on a loco doesn't kick in until you are zoomed out quite a way. By the time it starts working, a Pacific on a 1920 screen will only look about an inch long. This means that most trains on camera most of the time will be running at the top LOD anyway.

I'm beginning to think that we could simplify the .3dp files and only have two or three LOD's instead of the default 5, and not notice any difference in game performance. For a start, the lowest LOD's save some verts and tris over the next lowest, but by that stage the amount saved is very small, and the lowest level often has the same number of discrete meshes anyway. This means that a modern gfx card won't necessarily process the lowest level any faster.

It might even be better with fewer levels. The lowest LOD's on some default locos are so rough that you can't bring them in too close to the camera. If they were ditched then it might be possible to bring the changeover distances for the other LOD's in closer, thereby gaining a performance boost most of the time without any penalty in looks.
Post Reply