How to use materials in Roblox

I’m finding this painful, so I guess I am doing something wrong.

Let’s say I want to make my own slate roof material and apply it to part of a roof, I would then like to snap another part (different size, common geometry edge) with the same material next to it and have the material tile seamlessly between the two.

It seems I have 3 options:

  1. Material Variant:
    I can define my own color, metal, normal and roughness maps and scale it - great.
    But it does not appear to take any notice of UV maps, so although my parts have similar UV map orientation/positions (identical for the face I want to match) the material application is offset by an unknown amount, giving an undesired edge.

  2. Apply a texture:
    This allows UV offsets so I can perfectly align edge conditions - great. But it is just an image, no metal, roughness or normal. So it looks different when next to a full material surface depending on lighting and viewing angle.

  3. Use Surface Appearance:
    Just like a material variant, but still no UV control. (hard to see the point of this).

So how do I align UVs for custom materials when I want color, metal, roughness and normal?

1 Like

I’d go with MaterialVariants for your use-case. Roblox doesn’t allow you to manually edit UVs for meshes, and the “Texture” properties you mentioned are not really what Blender has. They simply offset the texture or size it.

Unfortunately, you can’t control UVs on mat variants, so it is impossible to align boundary seams.

Your best bet is to combine those meshes into one, no other choice until manual editing of SurfaceAppearance or MaterialVariant UVs come in place.

1 Like

OK thanks, that is an unfortunate approach from Roblox…

1 Like

union those two objects and THEN apply the material if you want it seamless.

Unfortunately, the objects are meshed parts placed as part of a kit, so union is not available. For now I’m using Texture as it is the only way to have a seamless aligned image, although obviously I lose the nice material appearance.

you could do this, but you could also simply use a surfaceappearance and align the 2 mesh’s uvs in blender seperately, without combining them.

although this is of course, very tedious, it’s still quite a similar approach to aligning textures (but better).

this is where you are incorrect. surfaceappearance are far greater than materialvariants due to the sheer fact that it will follow mesh uvs.

Nice, I did not realise they would follow UVs - thanks

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.