How can I create an array of heightmaps and randomize their rotation and position in the world to create a randomized landscape?

Eeeek, I would generate the landscapes and have them stored myself its only a 3x3 permutation. But you want to have essentially a micro 3x3 proper world gen?. Mate I cant really convey that to you myself since the path I will likely send you down may not be the best but there are a few ways; really tho you need to look up modularity and work out what channels and options you have with your .png’s -

You can, for instance; take every heightmap as a texture in a function inside a layered landscape blend and have the world position offset read from it - obv you would need multiple of these because of the sample limit - eventually you will get repetition otherwise, but again 3x3… however I cant explain this to you eloquently or easily :frowning: My own landscape layer BP’s are melting my brain already.

Sorry I hope Im atleast pointing you to the right things; PNG’s colours/modularity - world position offset - as for the mental groundwork on feeding your png’s into the lands for gen - you literally just do the same thing as I said for the landscape gen - only rather than using coords and spawning land, work with the landscape references and an array of your png’s… The landscape could for instance already have a material applied that the offsets read from the png effecting the offset Z