Unify texture resolution

Hey Guys, I wanted to throw out a general question. What is the best way to unify texture resolution across many objects in the scene? Are you checking this in your DCC app with a checker pattern before you bring it in? This is how I’m doing it now. I’d like to try to unify thing before bringing them so I don’t have a ton of material instances just to scale texture resolution. Any tips would be great. Thanks.

There’s a texture density view mode to show how texture resolutions compare to each other. But I don’t think it matters much, texture density doesn’t always control material detail so it’s best to just go with the lowest resolution you’re comfortable with.

Assuming you’re using tiled textures, you could use the World Aligned Texture node. I use a modified version of the World Alignment node that gets rid of some of the extraneous features I don’t typically use.

This takes an input of a Texture Object and a scalar value for the scale of the texture. Because it’s projected via the world scale, it doesn’t matter what your UVs are – the material will always scale the same size. The only limitations of this are there are clear blending artifacts on sloped surfaces and anything not at 90 degree angle increments.

I thought I saw somewhere around here someone had a more robust version of this where you could scale each axis individually, but looking I’m not finding it again.


In 3ds max I select all the objects that will share a material and use a MapScaler modifier on them right before importing them into UE4. This will unify the texel density across all the objects you have selected. I’m not sure if this method is frowned upon though because I have never seen anyone else recommend this method and just figured it out on my own, it works perfectly though.

All great ideas guys. Thanks for sharing. I’ll try some out and let you know what I think.

What exactly are you applying this workflow to? It sounds like a good idea, but what would it translate in terms of file size - dealing with high-poly meshes that can amount up to 200~300mb per fbx (large scale architecture buildings).

What I typically do it make each visible wall face it’s own static mesh, if it is an outside corner then I will combine them for continuity sake. I do a quick UVW flatten (Channel 1 and 2), then I select all the walls and apply the MapScaler modifier to unify all the textures (Channel 1 only). This way if I apply a brick materials to all my walls in UE4, they all the show up the same size. It doesn’t seem to affect the poly count at all as far as I can tell.