UDIM texture set support

With the arrival of Virtual Texturing in Unreal Engine we can have some truly colossal textures on our landscapes.

What’s missing from this is a way to get the bitmap output from World Machine into UDIM format so it can be imported into UE as a single giant texture. This means it can be sampled by all of the different landscape tiles and get the correct detail textures from the VT, all the while not losing resolution to the 8K texture limit by having that imposed on the entire world.

Any chance that this could be added? I don’t know the specifics of UDIM and I haven’t played with it yet, but it would fix a massive gaping hole in the WM to UE tiled world pipeline.

Second feature request: please make it so we can downsample the heightmap on tile export. Then we can generate both the high detail bitmaps and the lower resolution heightmaps in a single job. For instance I’d like to be exporting my bitmaps at 8192px per tile, but the heightmap at 2017px per tile. As I’m exporting in .r16 format resizing them isn’t a convenient option.

Cheers! Feel free to contact me if I need to explain any of this better.

After a bit more investigation, UDIM is just a naming scheme. Specs here: https://learn.foundry.com/modo/901/content/help/pages/uving/udim_workflow.html

So yeah, easiest thing to do would be to add a Use UDIM Naming For Tiled Worlds checkbox on the bitmap output node.

If you do add the higher-res bitmap mode, I’d extend this feature to that too so that even with a non-tiled build it has the option of exporting bitmaps split into UDIMs, just for texturing.

UDIM naming is already supported for tiled builds!

You can enable it in Project Settings->Tiled Build Options.

It’s also possible to downsample before export for exactly the workflow you request, although the UI to do so is not exposed as easily as you could want. Set the device resolution override on your File Output device that you want to be lower-res, but use the high res result to build your normaps/color maps/etc