Map Wrap-Around

I’m working with the heightmap for an entire planet as a file input, and I’m trying to figure out how to configure things so that World Machine understands that the left edge of the input map connects to the right and vice versa (and similarly for the top and bottom) - they don’t drop off into the void at the map ‘edges’.

Is there a knob somewhere for doing this?

Hi there,

There’s no one-click option, but it’s easy enough to create the wrap-around in World Machine.

Here’s an example file demonstrating this. This could be simplified further into a macro but I think you should be able to get what you need out of it:

WraparoundMap.tmd (31.3 KB)

Thanks for the lightning-fast reply, I’ll take a look!

My input heightmap cut in half is much larger than the 64 km size limit in the Displacement device; should I rework how my project is set up in terms of dimensions or is there a way to get larger values there?

I could scale the size down so the dimensions do fit in that range but to be entirely honest I’m not sure what the actual differences would be versus having the proper ~21,000km x 21,000km dimensions in the setup page or something proportional but scaled down.

Out of curiosity, what is your world size?

Two choices

  1. You can scale everything down by a constant factor until things fit: So if your world was 500km, you could shrink it by .1 to get to 50km. You just need to make sure you also shrink the vertical size by the same scale (so that 3km mountains become “300m” mountains)

  2. Since you’re loading from a file, you’re in luck: you can simply use the File Input device’s native “tile” mode and offset the location the file is loaded in to by half your world, achieving the same thing that the displacement device was doing. Here’s a picture with the relevant settings highlighted. You’d set the X offset to half of whatever your world size is.

I’m working with heightmap data for Mars, which has an equatorial circumference of 21,339km and a polar circumference of 21,213km. I’m probably going to end up lopping off the poles at some point to avoid the worst of the distortion.

Perhaps I misunderstand the example but the ‘seamless’ output is now missing half the map; I was hoping I could have a setup where processes like erosion would flow across the left side of the map and onto the right (and vice versa) as if the seam wasn’t there at all.

That’s quite large! I have to say that WM is not designed to work on planetary-scale data; it is far more comfortable working in the regional/continental scale.

I would probably set the file input scale the data by ~0.01 to get the bounds down to a couple hundred kilometers. Set the project settings->general->vertical scale to 0.01*your actual highest elevation as well to maintain proper verticality.

The actual simulations, etc do not have any map-edge wrap-around ability currently, but since on a planetary scale, the area affected by the border region is relatively minimal, this usually doesn’t matter. Instead, we simply would perform erosion, create textures, etc, and then blend the seam so that the output looks good.

I’ve been trying to be clever about making sure that seams are hidden under oceans, but it’s not always possible. For erosion blending seems like a reasonable work-around.

But for algorithms like flow-restructuring/create-water the placement of the edge of the map can produce significantly different results. Working with Lunar heightmap data, for example, the location of the seam tends to controls whether or not there’s a southern ocean at all!