In 3ds Max there are two levels of editing and creation of objects.
- Base Object Editing - This is the editing of the object at its most basic representation level. The following editable representations
are available, with a list of the representative objects.
- Triangles - The primary class for working with triangular meshes is Mesh. The TriObject class represent the data that flows through the geometry pipeline.
- Polygons - The primary classes for working with polygon meshes is MNMesh. The PolyObject class objects are what actually flow through the geometry pipeline. The EPoly class provides an editable interface to PolyObject.
- Patches - The PatchMesh is the primary class for working with patch meshes. Internally a PatchMesh is converted to a Mesh, so a PatchMesh flows down the pipeline as a collection of TriObjects.
- Splines - A SplineShape is made up of Spline3d objects. Some modifiers can act on spline shapes.
- NURBS - A NURBSObject can be one of several kinds of NURBS types such as NURBSPoint, NURBSCurve, and NURBSSurface. Some modifiers can act on generic NURBS objects.
- Triangles - The primary class for working with triangular meshes is Mesh. The TriObject class represent the data that flows through the geometry pipeline.
- Polygons - The primary classes for working with polygon meshes is MNMesh. The PolyObject class objects are what actually flow through the geometry pipeline. The EPoly class provides an editable interface to PolyObject.
- Patches - The PatchMesh is the primary class for working with patch meshes. Internally a PatchMesh is converted to a Mesh, so a PatchMesh flows down the pipeline as a collection of TriObjects.
- Splines - A SplineShape is made up of Spline3d objects. Some modifiers can act on spline shapes.
- NURBS - A NURBSObject can be one of several kinds of NURBS types such as NURBSPoint, NURBSCurve, and NURBSSurface. Some modifiers can act on generic NURBS objects.
- Stack-based Editing - A base object can also be edited through the application of a stack of modifiers. This mechanism of
editing objects, can also be used in conjunction with base object editing, by converting to an editable base object representation
as a stage in the stack. Each modifier in the stack declares which kind of object it can edit in its Modifier::InputType() method.