The SDK provides the following classes for creating and manipulating patch objects.
PatchObject
- This is the base class for the creation of Patch Objects in 3ds Max. The PatchObject
is the object that flows down the 3ds Max geometry pipeline. This object stores a PatchMesh
as well as a Mesh
cache. This is similar to the way a TriObject
has a Mesh
. The TriObject
provides methods to manage the operations associated with flowing down the pipeline, while the Mesh
stores the vertex, edge and face information. In the PatchObject
case, the PatchObject
provides methods for working with the pipeline while the Mesh
cache is used for display in the viewports.PatchMesh
- A PatchMesh
can be made up of any number of Patches. Each of these patches can be three or four sided. The topology of these patches are not quite as freeform as a regular TriObject
mesh. For example, in a normal triangle mesh you can have an edge that is used by any number of faces. However with patches, in order for the system to figure out how the topology is connected together, each edge can only be used by either one patch (which makes it an open edge), or two patches (which makes it a transitional edge between the two).Patch
- A Patch
is like a fast face, and the PatchMesh
is like the Mesh
. The Patch
contains the vertices (three or four), and a set of vectors (six or eight) that go between the vertices (two per edge). There are also a set of vertices in the interior of the patch (three or four of these).PatchVec
- Represents a patch vector. This can be either an interior vector or an edge vector.PatchVert
- This class stores the information associated with a patch vertex and provides methods to access this data. This information includes the vertex location, a table of vectors attached to the patch, and a table of patches using the vertex.PatchEdge
- This class describes a patch edge using the vertices at the edge ends, and the indices of the patches sharing the edge.TVPatch
- This class is a texture vertex patch structure. This is similar to the TVFace
class used with a Mesh
.