I have spline meshes, which I want to tile, independent of how long the spline is. I’ve tried so many things to try to make this work.
-Object Scale (Doesn’t work because spline meshes aren’t scaled in the traditional sense)
-Object Radius (Looks fubar)
-Local Aligned Texture (I’m guessing doesn’t work for same reason Object Scale doesn’t work)
I’ve also tried to get the FTransform from the spline mesh, but scale is always 1, i’m guessing it’s probably based on Start/End scales for that.
So, how could I possibly do this for a spline mesh? Is there any way to get its size? Or some other method?
You need to actually subdivide the spline into smaller splines, you will be making a spline for each spline mesh.
Typically, you would do things like “get location at time” and “get direction at time” to recreate smaller spline segments along the original. You first would get the total length of your starting spline and then figure out how many mesh divisions you want. For example, if your total spline was 1000cm long and you wanted to put 4 spline meshes, you would get the following points:
get time of 1000/4 * 1 = 250
get time of 1000/4 * 2 = 500
get time of 1000/4 * 3 = 750
get time of 1000/4 *4 = 1000
then for each of those you make a spline mesh component. You also need to create the end tangents.
Actually I realized what to do after reading your post; I had forgotten about the GetDistanceAlongSplineAtSplinePoint function, I kept checking the Spline Mesh for functions for distance instead of the spline itself. I fed that as a parameter into my material and multiplied with my UV coordinates and that worked. Thanks for the suggestion though.
Yes that will work if you just want to tile the UVs of the mesh. I thought you wanted the tile the actual mesh itself meaning the geometry as well.