List of Channels

3DS Max Plug-In SDK

List of Channel Bits

See Also: The Geometry Pipeline System, Object Modification, Class Mesh, List of Object Channels.

The pipeline is divided into the following channels:

GEOM_CHANNEL

The vertices of the object. Most modifiers only alter this channel.

TOPO_CHANNEL

The topology channel, i.e. the face or polygon structures. Smoothing groups and materials are also part of this channel. Edge visibility is also part of this channels since it is an attribute of the face structure.

TEXMAP_CHANNEL

The texture vertices and procedural mappings.

MTL_CHANNEL

This is no longer used. Materials are rolled into the Face data structure and are part of the topology channel.

SELECT_CHANNEL

The sub-object selection channel. An object's selection flows down the pipeline. What the selection is actually comprised of is up to the specific object type. For example, TriObjects have bits for face, edge and vertex selection. This channel is the actual BitArray used (like selLevel of the Mesh class).

SUBSEL_TYPE_CHANNEL

This is the current level of selection. Every object that flows down the pipeline is at a certain level that corresponds to the Sub-Object drop down in the 3ds max user interface. This channel indicates which level the object is at. This is also specific to the object type. There are 32 bits to represent the level of selection. When all the bits are 0, the object is at object level selection.

DISP_ATTRIB_CHANNEL

These are miscellaneous bits controlling the item's display. These bits are specific to the type of object. For the Mesh object these are the surface normal scale, display of surface normals, edge visibility and display flags.

EXTENSION_CHANNEL

This channel is available in release 4.0 and later only.

This is the channel used by extension channel objects.

VERTCOLOR_CHANNEL

This is the color per vertex channel. This is also used for the second texture mapping channel.

GFX_DATA_CHANNEL

This channel is used internally by 3ds max for stripping. Plug-In developers don't need to specify this channel as being changed or used in their plug-ins.

TM_CHANNEL

This is the ObjectState TM that flows down the pipeline. This TM may be modified by modifiers.

GLOBMTL_CHANNEL

This is no longer used. Materials are rolled into the Face data structure and are part of the topology channel.

The following #defines may be used to specify groups of channels:

#define OBJ_CHANNELS (TOPO_CHANNEL | GEOM_CHANNEL | SELECT_CHANNEL | TEXMAP_CHANNEL | MTL_CHANNEL | SUBSEL_TYPE_CHANNEL | DISP_ATTRIB_CHANNEL | VERTCOLOR_CHANNEL | GFX_DATA_CHANNEL | DISP_APPROX_CHANNEL | EXTENSION_CHANNEL)

#define ALL_CHANNELS (OBJ_CHANNELS|TM_CHANNEL|GLOBMTL_CHANNEL)

Note: Some of the sample code specifies these channels as PART_* as opposed to *_CHANNEL. For example, PART_GEOM|PART_TOPO instead of GEOM_CHANNEL|TOPO_CHANNEL. The proper usage is the *_CHANNEL version.