Each NURBS surface has its own material ID. If you assign a Multi-SubObject material you can apply a different material to each surface in a NURBS object by setting the <NURBSSurface> property .MatID .
Texture coordinates are assigned to each of the four corners of a NURBS surface. On the standard 3ds Max primitives for example most are assigned to use (0,0) to (1,1) across the surface. Some primitives, such as the Prism, don't use (0,0) to (1,1) because of the way they wrap. Developers may of course assign any values using the API. The <NURBSSurface> method to do this is setTextureUVs() .