NURBS Modeling
It was an interesting feat moving from generating polygonal mesh
objects to other systems of representation.
The NURBS Surface was the most interesting of all the other representations
in that because they are defined using rational splines, all of the
affine transformations that were used to move polygonal objects from
a local coordinate system to device space are withheld. With B-Splines
the intermediate points must be interpolated before the device transformation.
NURBS all that was necessary was to affine transform the Control Verticies
of the NURBS surface and then generate the S(u,v) surface from the
transformed points. As well the rational splines also gave us a lot
more points of change to manipulate the end surface.
Basic Classes:
- CV Class
- NURBS Definition
- Pipeline used from the Polygon Renderer but modified to handle
NURBS Surfaces
Complex Functions:
- Using the Cox-deBoor algorithm it is possible to create the resulting
u,v values with the approximate locations using a recursive definition
instead of seeding the function.
Possible Extensions:
- Each point has its own Normal in and to itself in its creation
therefore the lighting scheme could easily be done in creation
time.
- Using a ScanLine algorithm would still be the best way to
represent the object though, because even at a high detail
level there still is a sieve like aliasing effect that occurs
|
|
|