So recently me and my team were toiling over the fact that there was no built in way to tile a PBR texture in studio. Since we were trying to make an ocean out of one mesh this was kinda important to us. At first I searched the DevForum in hopes of finding a solution but none popped up. That is why I am writing this tutorial.
For this technique you will need some 3D software similar to Blender or Maya as we will be manipulating the UV maps of a mesh to get the PBR to tile in Roblox.
The first step is to access the UVs in whichever 3D software you use. I use maya so that is what I will be providing examples from
Now I think I need to do a little explaining on how the UVs work.
In maya a regular UV would fit within this square. The square represents the texture that you will be applying to your mesh.
To keep things from getting too complicated lets assume you are applying your PBR to a plane. A default plane will fit perfectly into one of these squares.
When you bring it into roblox your PBR image would fit perfectly onto the plane.
Now for the fun part.
To tile it all you have to do is scale the UVs up in the editor to make them oversized.
In the image I scaled the plane to cover the space of nine regular UV sets. This means that the texture you are using will be repeated 9 times over the plane. And as long as you have a seamless texture it should work out pretty well.
These are some pictures of the before and after on our project.
That video just demonstrates a bug that’s more of a novelty than something you should be using. Not only does it take away the ability to control tile size, but you also have to insert a humanoid into everything you want tiled and we all know humanoids and performance don’t go well together.