How can I find the right UV coordinates for interpolating a bezier curve?

Posted by ssb on Game Development See other posts from Game Development or by ssb
Published on 2014-06-03T11:48:48Z Indexed on 2014/06/03 16:00 UTC
Read the original article Hit count: 443

Filed under:
|
|

enter image description here

I'll let this picture do the talking. I'm trying to create a mesh from a bezier curve and then add a texture to it. The problem here is that the interpolation points along the curve do not increase linearly, so points farther from the control point (near the endpoints) stretch and those in the bend contract, causing the texture to be uneven across the curve, which can be problematic when using a pattern like stripes on a road. How can I determine how far along the curve the vertices actually are so I can give a proper UV coordinate?

EDIT: Allow me to clarify that I'm not talking about the trapezoidal distortion of the roads. That I know is normal and I'm not concerned about. I've updated the image to show more clearly where my concerns are.

Interpolating over the curve I get 10 segments, but each of these 10 segments is not spaced at an equal point along the curve, so I have to account for this in assigning UV data to vertices or else the road texture will stretch/shrink depending on how far apart vertices are at that particular part of the curve.

© Game Development or respective owner

Related posts about textures

Related posts about uv-mapping