Support for freeform surfaces

September 9, 2016 | News

Utah Teaset

Infinity 3D engine now supports freeform surfaces in the form of bicubic Bezier surface patches.

A bicubic patch with 16 control points is one of the simpliest freeform surfaces that is also very generally usable for freeform surface representation. Many individual patches can be smoothly joined to form complex freeform surfaces.

The patches are directly ray traced without any triangulation in Infinity. As a consequence, patches look curved and smooth at any viewing distance. All patch controls points can also be moved at each frame for animation. Patches also work with CSG but since a patch has no volume one can only cut away parts from a patch with other solid shapes.

Different freeform surface representations such as B-spline surfaces and NURBS surfaces (of degree 3) and subdivision surfaces can be converted to bicubic patches.

Pictured above is Utah teapot with 36 patches. The data was originally distributed as bicubic patches. Here a bottom was added and it was scaled by 1.3 in z-direction to get a look closer to the actual physical teapot the Utah model was based on.

New support for freeform surfaces is plenty fast for games and other applications requiring smooth real-time rendering.

A video should be available sometime soon showcasing Infinity graphics technology and it should also feature freeform patches.