Randomizing Material on repetitive items

Hi all i posted this in archviz but i think this forum may have my answers, i’m working on a little scene to enter the archviz world and I’m curious if anyone would have a fix for my error in the attached photo. Basically I am using 2x12 R.R. @ 16" o.c. to hold up the roof but they are all starting the texture at the same point so it doesn’t look realistic. Is there anything I can add to the material properties to randomize this or do i need to texture each individual roof rafter?

As far as workflow i am going from revit export as .obj>blender export as .fbx>unreal.

You could try using a node such as “ObjectPosition” but multiply it by some randomish number and then use “Frac”. Then add that value to either the X or Y of your texture coordinates node in order to get a random offset.

Whether it is X or Y depends on your UV layout. You could also have it offset on both axes is your texture tiles on all sides. To make it X only multiply by 1,0. To make it Y only multiply by 0,1 etc.

Ryan’s solution would work if your beams are placed as individual meshes and don’t get batched in lower LODs: you need a separate draw call to each mesh to specify a new object position. If you want to keep it all as one mesh, you can define each beam by a different color on the texture map or different colors in vertex painting, then use that variation to shift around the UVs of the texture. If you’re using the texture method, make sure to turn off Mip-mapping and/or use nearest neighbor filtering so you get each UV island a perfectly solid random color: if there is any color bleeding on the texture at all, it will skew and distort the texture instead of shifting it.

Ryan, sorry but I am a total noob at this. How can I have Frac attach to the texture coordinate if theres no node connector? Or am I using the wrong one?

place two separate “Component Mask” nodes and hook them up to your UV node. On one of them check ONLY “R” and on the other check ONLY “G”.

Then add the result of your ‘frac’ to one of those. You need to multiply the object position by some small random number first though otherwise this won’t do anything since it will be doing frac on such a tiny scale.

After adding to one of them, use “Append” to recombine the X and Y before plugging in the new coordinates to your texture. You can also easily have to different noise amounts by doing frac on a different scale and adding that one to Y etc.

I added the two masks, i have no idea if this is all hooked up in the correct order…im not too sure how I can multiply the objection position and frac because the two nodes dont have any inputs within the node other than a description. Not sure where I can find append either.
Again thanks for the help, I have just ventured into Unreal waters.

Where did the texture coordinate node go? That was the first node I explained how to modify yet its gone.