bezier points basis curves curve number functions quadratic equation
For all who have been in a cave the past 3 years, bezier patches are a type of curved surfaces. There are other options, but beziers are the most common. Eventually patches are rendered as polygons, but because the polygons are generated dynamically, faster machines end up with smoother models, the ultimate in scalability.
A bezier patch is specified by a number of points (control points) and a tessellation factor to determine smoothness (higher factor equals smoother surfaces). The number of control points depends on the type of patch you are using; I will be covering bi-quadratic and bi-cubic patches (9 points and 16 points, respectively). While higher order bezier curves are possible, they are not feasible for use in computer games.
To start, lets look at a line:
Now, how about a bezier curve? We want the line from P0 to P2 to curve towards P1, like so:
So, what about cubic curves? Fortunately, the equation is almost identical:
Okay, now that you have 2 dimensions down, lets add the third dimension into the mix. Another dimension, uh oh, how do we do that? Well, take a look at this picture:
Now for the equations:
Okay, so that wasn’t too bad, was it? Didn’t think so. Fortunately, the cubic version is even easier to figure out because it is (again) almost exactly the same as the quadratic equation:
So, you see that once you understand bezier curves, then bezier patches are a piece of cake.
Well, that’s it, you survived. Hope this article helped you figure out some stuff about bezier curves. For more information, check out the resource section. Please send any comments, questions or flames to firstname.lastname@example.org.