Hi All
Again there is a difference between PBR ground textures (ie ground textures that use the PBR material configurations) and Parallax ground textures (which are PBR textures, and have a heightmap specified to create the 3D effects).
I'd strongly recommend avoiding using 'PBR' to distinguish 3D ground textures, as this is NOT what 'PBR' stands for. PBR (Physical Based Rendering) is the new rendering system in TRS19, and ALL objects technically use it, just that TANE and earlier objects/ground textures provide a limited set of the parameters used by PBR to create the reflection/shine on the texture...
The issue, as noted, is the blending between ground textures with Parallax effects and ground textures without Parallax effects.
Unfortunately blending between these is messy, no matter what you do. In most game engines that support parallax effects, there is a LOT of work put into art to blend them (even terrain textures). This is honestly something I've been paying a lot of attention to in games over the last couple of years, noticing where I see the same distortion as in Trainz (ie in hard corners, be they concave or convex corners), and noticing where they are and aren't used and how well (or not well) they blend together. Including blending them where there's minimal other objects around them.
There are a number of options that we are looking at to improve this, but none are simple or quick, and so there won't be any immediate changes to this...
One thing that can help with doing bulk asset replace is to choose 'replace rotation and scale', then set a specific direction and scale in the textures tab. This will replace the rotation/direction, and the scale, with what you set in the textures tab. Rotation spamming (ie holding [ or ] when painting textures) both has a large negative effect on performance, and can have a large impact on the look of parallax textures; so doing this can greatly help with the look of these textures.
I have asked our team to see if there's any way to distinguish parallax ground textures in-game, however the only distinguishing factor for parallax is the presence of an alpha channel in the normals map. If one is present, even if entirely white (basically no parallax applied, which can basically bring you back to the same situation), then it would show as being 'parallax' despite not actually having any parallax effects.
I've come to regard N3V's lack of policing of new assets allowed on to the DLS that can cause these database issues, crashes and fatalities as akin to letting in a virus.
We do have error checking for all new uploads, and have recently run a pass of error checking over older uploads again (with these being added to the content repair group's queue for eventual repair); these assets currently show as 'unknown' in TRS19's content manager (or as 'third party' if currently installed in Trainz).
However the error checking isn't perfect. But we are constantly updating and improving this as we find new issues/problems that can affect Trainz.
The funny part is that these improvements also result in a lot of complaints that we are breaking content, so we really cannot win here...
NV3 - GET A CONFIGURATION MANAGER and a system test crew to vet all uploaded assets, if that's what you think is the fundamental cause of these issues!
Unfortunately it's simply not a viable prospect at the current time to pay someone to just download an test every available asset for Trainz. Even doing this just for the DLS isn't an option.
We
do generally test content when we receive a bug report. But if the issue is specific to that content, it will generally be stated as such. Beyond this, there's not much we can do apart from making the content faulty in a future release. And even then it may not be an issue that can be easily detected by the error checking at that time. Or, in some cases, may not be an error but may not be appropriate (ie a script is using a legitimate function in such a way that it can break something, but we can't explicitly block that function); in some cases we are over time able to make improvement with this, but it really depends on the situation.
We do try to provide information, as I have in this thread, on why specific things happen the way that are, where we have information on that of course.
This PBR mix can not be a surprise to N3V. They just adopt a PBR only attitude internally and move on forgetting to tell the customers. This is poor organizational discipline.
We have stated since the early preview versions of TRS19 that mixing Parallax and non Parallax ground textures will be problematic, and it is not recommended unless you do it carefully. I'm not sure what more we could do, apart from not provide newer/more advanced graphics features, in this case. Which of course defeats the point of improving the graphics in Trainz.
And again, we need to not confuse PBR with Parallax. Parallax is the issue here, not PBR.
The whole forced PBR thing annoys me, when i returned after 11 years.
PBR (Physical Based Rendering) is now the industry standard. All professional texture creation tools are designed around the PBR (look at Quixel Mixer, Substance Painter, and similar). For us to bring Trainz into the current generation graphics, we needed to introduce PBR to Trainz.
Unfortunately, PBR is an all or nothing change. You cannot mix PBR and non PBR shaders in one game.
But what we have done, is introduced conversion algorithms for the 'legacy' materials so that content from TANE and earlier can still be used. The other option was to simply not provide this, and have TRS19 not allow content with legacy materials to work, which I don't think many people would have been happy to see...