How to I get Multipatch textures UDIM like from Mari into Unreal?

How to I get Multipatch textures UDIM like from Mari into Unreal???

Please help been at this all day.

I believe there is a UV Wrap function that you can move the UV’s to match the texture you need (or vice versa). But in terms of true UDIM support, I think we have yet to see that like it is in Maya and other 3D apps. This is something I’ve been looking into as well for some upcoming projects. I think it would be a nice addition to 4.11 :wink:

I think that it stems from the fact that most textures are using the square method, like 1024x1024 for game/architectural engines, so something in the film/vfx field wouldn’t be too applicable. But hopeful support is added (or exists and I’m dumb) at some point!

Yup there is no UDIM support in realtime game engines yet. To make it work (and this is expensive) is you would need one material per UV Map basically as each tile could be exported as UV map. I don;t think you can have more than 4 though.

Normally you would bake it down into a handful of atlased textures

There is a workaround, but it is pricey. Like, really pricey. Granite SDK allows UDIM’s to be imported into UE as well as massive texture files. On their UE page they actually have a tutorial on how to bring in UDIM textures directly from Mari

What is the maximum number of material slots per mesh? could you do 128 instnaces in slots on a single mesh?

Don’t abuse slots unless you’re willing to cripple the CPU/GPU with draw calls. Make sure you understand the cost it implies. Draw calls are fine if you’re going to do architecture shots or some cinematic, but if you want smooth gameplay avoid draw calls like the plague. At least until new hardware and API’s allow us to go closer to the metal to avoid the overhead.

Just a thought here, but can’t we use multiple UV coordinates in a mesh? Eg, the first grid is the first uv index, second one in the second, so on and so forth. The last one is reserved for the lightmap…

I may be totally wrong here, but you may be confusing patches with channels. For light maps, you typically put it in a second UV channel that still exists in the 0,1 space. With UDIM, the point is to have one object take up several UV patches so that all the polys receive high resolution textures, rather than cramming them all on one patch. So using the wrap index function would get a whole new texture set, as each patch uses the same UV’s with different textures, rather than texturing the whole object at high resolutions.

Please correct me if I’m wrong, I want to know. I’m not a professional texture artist, so my knowledge is just from the past few years of research.

Yeah thats pretty much it, UDIMS allow you to have different texel densities for different parts of the same mesh. To do this it has multiple textures assigned to parts of the mesh, each part using the whole 0-1 UV space.

Granite is indeed the best way to use UDIM in unreal. More than just a way to load the UDIM files, Granite can stream large amounts of texture data without issues. Even hundreds of 4K patches on one single character are no problem.

We’ve just released an indie version of Granite for Unreal that should be much more affordable for smaller teams. You can get it here: