The major problem with moving old content to TRS19 standards N3vs 500 limit [solved]

The stretcher issue involves cylinders or round shapes. There is a trade off in sub-divisions with such objects. In Blender the more sub-divisions (ie; triangles), the more natural the cylinder will appear. The less sub-divisions the more rougher the cylinder will appear. I prefer it to look as realistic and smooth as possible, and practical, which means more subdivisions. BTW this is a common problem with anything curved/rounded, as I think you know.

I recently completed re-working the mesh of the Laurel Line Street Light #8 by LWVRR (aka Scott) as a new item with a light cone and some other features (BTW now available for download on the DLS). It is a small but beautiful highly complex shape item that clocks in at 1,370 triangles (not counting nightmode!). Here is what the mesh looks like:



Here is what the item looks like in Surveyor:

Lamp-Mesh-Example-2.jpg


To get this beautiful shape requires a lot of triangles. Sure I could make a simple box light or cylinder light but where's the art or beauty in that?

Now how do I keep that beautiful lamp and still meet the 500 or less polygon limit?
While we're at it, sorry, but that is not a beautiful lamp. If you look at it closely you can see that you haven't smoothed the mesh at at all, that's why you need so many triangles to get something like a smooth shape. You could have done that with something like a third of the polys that you used and you are never going to get that close to the object anyway.

Paul
 
LOD is exactely the issue. Trainz is complaining that the lowest LOD mesh it can find is more than 500 triangles (not polys) - if the asset has no LOD then the lowest LOD mesh is the same as the highest one.

What I said solves the problem because you then have effectively two meshes, the original with say 10K triangles and another with 0 because it's turned off at an appropriate distance. You wanted to know what you could do to remove the error without messing with the original mesh or creating new ones and now you know.

Paul

Paul:

I appreciate your patience and reply. Frankly, I have not dealt with LOD before so it is fairly new to me. I did not understand the inter-relationship between the reported error and LOD requirements. Thanks for the answer.

From some of the replies I have seen, other content developers are also not aware of what you said is the solution as well...

Bob
 
Unless I misunderstand you, you seem to be dealing with LOD requirements, and not the 500 Polygon issue, which for me is the more major issue, as I stated above.
They are one and the same thing.

Edit:
Which apparently was already posted by Paul; not my fastest evening.
 
LOD is also an issue, and I also mentioned it, but doesn't prevent me from upgrading content above 3.7 as that error message does now.
LOD is the only issue. The message refers to the lowest LOD level. Any object can be reduced to a simple blob at that level, where it is about the size of one pixel and needs no detail at all. Put all the detail you want in the higher LOD levels: just make the lowest one a simple cube.
 
LOD is the only issue. The message refers to the lowest LOD level. Any object can be reduced to a simple blob at that level, where it is about the size of one pixel and needs no detail at all. Put all the detail you want in the higher LOD levels: just make the lowest one a simple cube.
No, turn the damn thing off completely when you are far enough away.

I just know somebody as going to dare me to make a better job of the lamp asset now I've said it's so easy so here you go:

2019-03-08 23_07_20-poles.png



Bear in mind this screenshot is taken from about 5m away from the object.

Took about 10 minutes and I didn't touch the shade part at all. All I did was add a decimate modifier to the meshes.

Actually I'm amazed the asset works at all, it has major issues with the materials (they are named as *.m.onetex but are actually *.m.notex and one of them has .001 in the name which will get it ignored by Trainz). There are also 4 materials, so 4 draw calls which is possibly worse than the high tri count.

Paul
 
Last edited:
Before this thread heads in a direction I did not intend, please note that the major issue for me at this time is the 500 Polygon limit which generates the following error message for builds above 3.7:

VE109: The low-detail meshes total more than 500 polygons. This may have a negative impact on performance: 0: 1530
...

Don't think this has been addressed but the error is talking about the sum, or total, of all the meshes, including attachments, that are used by the asset at it's minimum size. For example, if you bring a traincar done to a sub 500 poly level but you don't drop off (cull) the bogies then that may push you over the limit. I think a useful exercise by N3V, or perhaps the CRG, would be to identify all the non LOD bogies on the DLS and create a LOD version.

As Paul H implied, making LOD models is not hard and Blender's decimate does a fair job. But you always need to consider what is never going to be seen at, say 50 yards or metres and just drop that part of the mesh.

My current approach is to just make the 20% limit for the first couple of LODs and then bring out the gas axe for the rest. Unless you have really messed up, the only time you will notice LOD transitions is when you, as the author, do your first testing because you will be looking for transitions. I do.

p.s. If you use Blender and the Decimate modifier, don't apply the modifier at each level. The FBX exporter will apply on export but leaves the modifier. For the next level just apply a little more.
 
Is this why some of my downloads of Dave Snow's wonderful assets are showing up faulty in T:ANE? They give that message as a warning (yellow triangle), but the status is still "Modified, Faulty". There are no red errors, so this must be it? I agree with you Bob, and I think that those who don't like these assets don't need to use them, but they shouldn't "break" them so the rest of us aren't free to use them, that's just silly!
 
Is this why some of my downloads of Dave Snow's wonderful assets are showing up faulty in T:ANE? They give that message as a warning (yellow triangle), but the status is still "Modified, Faulty".
If it's marked as a warning the it is not the reason for the faulty flag. If you can quote a KUID someone might look at it for you and identify the actual problem.
 
… and fix it properly when the rules change again with the next version.

It depends on whether N3V would prefer to see old non LOD assets updated with TRS19 materials using this quick LOD method or just left alone. If the rules change again the creator can decide whether the effort is worth the benefit.

Ken
 
Let me see if I have this right for a scenery item such as a building or structure based on all the comments here.

As an example, say I want to build the absolute acceptable minimum code in my content item in order to simply get past the 500 polygon error message (yes, I know this is not optimal). For this I would have two meshes. The first one would be the full detail mesh seen up to 500 meters. The second would be a simple cube after 500 meters (should this cube be invisible?). Here is what I think the code would look like to do this.

Code:
mesh-table-lod-transition-distances     500.0

mesh-table
{
  lod0
  {
    auto-create                         1
    mesh                                "lod0.im"
    lod-level                           0
  }
  
  lod1
  {
    auto-create                         1
    mesh                                "lod1.im"
    lod-level                           1
  }
}

Here is a screenshot test I ran on a bare baseboard using my soon to be available U.S. turntable and roundhouse. At 1640 feet (500 meters) the object is still fairly visible:

LOD-Visibility-Test.jpg


Question: For this absolute minimal LOD code what do you recommend as a maximum distance that the fully featured mesh should be seen before we move to the cube?

BTW be kind folks. I know some of you hotshots out there can do this in your sleep, but I'm new to this LOD stuff, and just recently returned to content design after a couple of years of not doing it....

Bob
 
I'm only up to TS12 so not sure what happens with TANE and TS19, however uploading a signal a few weeks ago I got warning messages from the DLS that it might cause performance problems.


The signal is made up of a post with four animated arms attached.
The post is getting on for two thousand polys, with a medium LOD and low LOD down to around fifty.


The problem is with the arms. They are almost three hundred polys a piece, so the completed signal gets a warning that the lowest LOD is the total minimum count, about nine hundred.


That makes sense, but if I try to add LOD to a signal arm TS12 content manager rejects it saying the polycount is too low to require LOD........am I supposed to add an extra two hundred polys to the arms so that I can add LOD?


Something hardly ever mentioned on the forum is the maximum polygons the game can render in a scene. I know it used to be around the million mark, but windwlkr said it was more now, but when asked didn't have a figure. Perhaps this is something to keep in mind now that large draw distances are possible.


Chris.
 
Actually I'm amazed the asset works at all, it has major issues with the materials (they are named as *.m.onetex but are actually *.m.notex and one of them has .001 in the name which will get it ignored by Trainz). There are also 4 materials, so 4 draw calls which is possibly worse than the high tri count.Paul

Thanks for pointing this out as I missed it. For the lamp I used the original authors settings/material names and didn't check them - which I should have. That's what I get for assuming he had it right to begin with. I have corrected this and will be putting out a new version that will fix the material names issue.

BTW I did reduce the triangles in Blender using Decimate (damn handy that!) and applied smoothing as well.....

Bob
 
Last edited:
And you thought it wasn't a life time commitment when you created a simple scenery item.

Cheerio John

Yeah, silly me for thinking that I could actually design a content item and never have to look back. :hehe:

With just shy of 2000 content items on the DLS, I don't look forward to having to meet the new TRS19 standards for all of them. This is beginning to be more work then fun to satisfy each new Trainz major release changes. I now spend more time updating then I do on brand new creations.....

Bob
 
Haven't really looked at lod in TRS19 properly as still creating up to TANE however Just been playing with the new method.

For two lod levels try this

mesh-table-lod-transition-distances 500,2000,5000

adding the third value equates to having a null lod thus it is not rendered obviously the third value probably doesn't need to be at 5000 metres but at what ever distance you can't see it at.


If as in your case you just have one mesh and no lod mesh, try this? cribbed from a 4.6 builtin asset, a large 27000 poly station with no actual lod mesh and just lod-level1

mesh-table-lod-transition-distances 500,5000 that turns off rendering at over 5000m.


If you play with the values and use the preview in manage Content you can zoom in and out to check it doesn't vanish too soon plus actually check the lod level appearances, obviously if just using 1 mesh it would be there or not there.
 
Yeah, silly me for thinking that I could actually design a content item and never have to look back. :hehe:

This is beginning to be more work then fun to satisfy each new Trainz major release changes. I now spend more time updating then I do on brand new creations.....

Bob

I know of a number of content creators who sympathise and then you get into reskins of your work. The reskinner has to upload the corrected version.

Cheerio John
 
Something hardly ever mentioned on the forum is the maximum polygons the game can render in a scene. I know it used to be around the million mark, but windwlkr said it was more now, but when asked didn't have a figure. Perhaps this is something to keep in mind now that large draw distances are possible.

There's no meaningful cap. The higher it goes, the lower your performance (all else being equal) but poly count is hardly the only thing which can clobber performance.

It's true that I have no idea what the typical overall poly count in a scene is; there's so much variation from route to route and from area to area in the route that it's not possible to express in a single number. Certainly it's not unusual to see tens of millions of polygons in a scene; not that I'm suggesting that this is a good thing.

chris
 
For two lod levels try this

mesh-table-lod-transition-distances 500,2000,5000

..

If as in your case you just have one mesh and no lod mesh, try this? cribbed from a 4.6 builtin asset, a large 27000 poly station with no actual lod mesh and just lod-level1

mesh-table-lod-transition-distances 500,5000 that turns off rendering at over 5000m.


In both cases here, you seem to have one extra number. These are transition distances: with two transitions, there are three LOD levels.

If you have only one mesh and you want to turn it off at some distance, use a single number (which is the cutoff distance).

chris
 
Back
Top