If I am reading your temp UV textures correctly you have wildly varying and in some cases distorted UV shells. Try to maintain a common resolution across all objects. This will ensure that no object looks better or worse when next to any other, they will all be uniform, thus increasing the realism in the scene.
oh yeh one thing you should remember is to never combine objects. Instead group them by selecting all the objects then press ctrl g. make live in maya is the equivalent of autogrid in max. for selection tools the shortcuts r very useful. ctrl f11 convert selection to face shift . will grow selection
ant1fact, I had the same problem with SubstancePainter 2018.1.1. Installing SP 2018.2.1 helped me to fix it ( i just removed generator, that creates height and then create it again and it's fixed). Also try to sort your layers in folders, and put objects that creates height into one folder, and object's that shouldn't…
Someone I know showed me this other method for tiling. He said to simply use multi sub object materials in max with separate material IDs for things like walls and roofs etc... It is working so well :) I just did not know that game engines understood multi sub object materials
Nice scene @Ali_Youssef! Can I ask what you changed in the before/after shots? I think the performance problems are mainly caused by all that opacity. When you have transparent/translucent objects the engine has to render that and what's behind it, so overlapping these objects can choke the performance quite easily.
In the project I'm working at right now, we do that, because we use tiling textures for some objects, and reuse textures around too. But if you have a unique texture for a unique object and you don't use a lot of overlapping, I don't see why you should bother having a separate file.
I think you will never be able to get a clean bake if your source objects use alpha maps, especially if you have them layered. Last time I had a layered set of source objects with alpha I ended up rendering them from the top viewport with a normalmap lighting setup.
BAH! turns out 3ds max had used one of its secret hide commands, and hidden my spline object cables! while trying to create a new spline object, they suddenly popped into view. after wrestling some more with 3ds max, i finally managed to get the cables permanently visible.
Soft alpha is super expensive in large environments. Objects with soft alpha need to be sorted correctly which breaks up the (hopefully optimized) draw call queue, plus you get the overhead of actually calculating the sorting order of the objects. For something used as much as tree you should never use soft alpha.