4. Example Content

Knight Nurbs
Click above for the Lunatic Knight Nurbs: For best results, use the dynamic tessellation mode.

What is a NURB?

NurbsCurve - The boxes represent the ControlPoints of the curve, which define the shape of the curve. While a conventional primitive is defined by a large amount of points on the  curve itself, the NurbsCurve needs only the small amount of ControlPoints and a few other parameters.

Low Download Size

These samples demonstrate the space savings that can be attained by using NURBS to represent complex shapes. The files are not compressed. The IndexedFaceSet versions contain coordinate, texture coordinate and coordIndex information, but not the better-quality normals computed directly from the NURBS surface.

NURBS And Animation

Simple animations, performed by modifying a single control point from javascript:

Animation using a CoordinateInterpolator:

FFD  - Free Form Deformation

LOD - Level Of Detail

LOD examples, use these to view the effects of different tessellation mode settings, especially the first example. Note the dynamic tessellation as you move near the objects.

Perfect Smoothness

This demo should show you what NURBS can do in comparision to a polygon based model. Typically when you zoom in closer to a 3D object based on a polygon model, the models gets sooner or later edgy, because the you move so close to the object that you can actually see the polygon. Since we're using NURBS (a mathematical description of the surface), not only the file size get's smaller, but also the acuraccy is better, because with each step you move closer to the object the VRML/NURBS Plugin can again tessalate the surface again with an resolution that the human eye can't see the resulotion. With this method so call Level of Detail can easily be achieved, because you only have one model, but you tessalate only as much as it is necessary. In polygon based 3D models you would have to have several 3D models for each level of detail you want to display.

Zoom to the Knight Nurbs Avatar - By using 'pageup' you can jump between the various Viewpoints. Please press 'pageup' 3 times and you can see that there is no difference, regardless how close you ge to the Avatar.

Okupi Avatars

Okupi NURBS Avatars


The examples below have been exported from 3D Studio Max example data sets using the VRML NURBS exporter. The source code is headed by a EXTERNPROTO definition. In this PROTO a IndexLineSet model of the the NurbsSurface is computed if the browser (others than BS Contact 4.2) does not support the new nodes.

TIP: If you want to see the wire frame model formed by the control vertices, deactivate the urn-field in the EXTERNPROTO definition:

 ### "urn:inet:bitmanagement.de:node:NurbsSurface"

Thus you can also check what a model will look like in other browsers. Have a look at the Head shown as wire frame.

X3D Examples

The examples are from Charles Adams below have been created in Maya. The native Ccontact urn was added to the files and the extra field closedSurface was removed.