Download

Wall material only works on small mesh, tiling problem

Dear experts,

I made the following wall material:

When I apply it to a cube it looks okay, if I apply it to a big mesh though there is no tiling, it looks like it stretches one tile out:

small_big_mesh.png

I don’t know what the problem is. What do I have to change. It is related to the UV tiling, right?

Thank you for your help,
Peter

The big mesh was imported from Blender as an .fbx file.
When I make the cube (box brush) bigger it still works and is properly tiling.

It has something to do with how / when the tiling is applied. Starting with a large mesh, the material gets stretched to fit the UVs of the large mesh. With a small mesh, such as the cube, the material tiles correctly according to the texture coordinates given to it in the material graph. Multiplying the texcoord node by 1, I think, results in one whole tiling getting mapped at a scale of 1 Unreal Unit, or 1 cubic / square unit. Look up triplanar mapping for help in building materials that fit the mesh properly.

This is because of the UV coordinates in the mesh.
When you make CSG geometry in Unreal, it automatically maps it with tiling UV coordinates.
When you import something from Blender, Unreal uses whatever the UVs are on the mesh, and if you scale the mesh, that will make the same material cover a larger area with the same UVs.
You can solve this by modeling the geometry you import with the appropriate UV tiling / scale based on world space scale.
Or you can use a “world position” input to generate the UV coordinates instead, using some kind of trilinear mapping, but that will be significantly slower in the shader.

Hello jwatte,

How would I do the above in Blender? Because at this point I don’t know the “world space scale” for Unreal yet.

Thank you,
Peter

That means your art path isn’t capable of doing this. You have to update the art path to model in “real world scale” to get good results.