Hi dear Epic,
I’m editing this post to give a summary.
**The problem as described best by Chosker.
The current landscape texturing workflow in UE4 isn’t suitable for open world projects. The performance cost per landscape layer goes massively high when compared to other engines. To a point where we’re limited to 4-5 layers if we wan to achieve production quality while maintaining acceptable performance. That’s while other engines out there i.e Cryengine 2/3/5 or Frostbite 2/3 benefit from up to 16 layers without massive performance drops since many years ago and have made their documentations available.
We’ve come down to a number of features that can improve the performance. (You know better, of course).w
1) Add ability to work with texture arrays into out of box engine version, including tool to create array from texture assets.
2) Add dynamic branching into material editor.
3) Overhaul weightmaps.( ex. allowing 16 bit weightmaps, storing layer ID rather than layer weight, and ideally allowing you to customize terrain painting brush to the point where you could manually specify the way to encode custom data)
4) Expose terrain heightfield / normal map to material editor( You should be able to sample those in terrain’s pixel shader. Weight maps too btw.)
5) Add a dedicated terrain color map.
6) Untie physical surface ID from terrain weightmaps and allow to bake surface ID from terrain material.
7) Virtual texturing.
Cheers to Deathrey for the contribution.
We’re currently “extremely optimizing” our content, but would like to have some improvements behind the scenes so we can develop our open world projects, add more layers and calculations without downgrading the visual fidelity to 2007 era.
**Quotes from the thread:
Please improve it. I’ll provide any sort of demonstration or anything you need.