Using the Channel Info Utility
 
 
 

This lesson shows a number of different methods for using the Channel Info utility.

Reduce a mesh object's memory footprint:

When working as a 3D artist on a game-development project, you might receive models to work on that have already been mapped, but it's difficult to tell what the mapping is. In addition, the mapping might have been applied inefficiently, so that it takes up more memory than necessary in the model's data structure. This lesson shows you how to use Channel Info to adjust a model's mapping, thus recovering the unused memory, which can then be used by other game assets.

  1. Open the ostrich.max scene file.
  2. Apply a UVW Map modifier to the ostrich model. Set Map Channel to 4.

  3. Collapse the ostrich object's stack; this results in an Editable Mesh object.

    This simulates a situation you might encounter as a 3D artist working for a commercial game developer: You receive a mesh object to work on that already has mapping applied, but you don't have direct access to the tool (modifier) originally used for applying mapping, and you need to minimize the object's memory footprint for embedding into the game.

  4. Create a standard material with a Checker map applied as a Diffuse map. For the Checker map, set U and V Tiling both to 4.0, and set Map Channel to 4.
  5. Turn on Show Map In Viewport, and apply the map to the ostrich model.

    The map appears on the model, mapped in a planar manner parallel to the world grid.

  6. Go to the Utilities panel, click the More button, then double-click Channel Info to open the utility. On the Utility panel, click the Channel Info button.

    The Map Channel Info dialog opens:

    The dialog lists all pertinent channel information for the object. This is described in detail in the Interface section.

    The last channel, whose ID is “4:map,” represents the mapping you applied with the UVW Map modifier. It's preceded by three empty map channels, each of which contributes about 33 kilobytes to the object's memory footprint. These were created because the software requires consecutive numbering of map channels, but the memory isn't being used for anything.

    You'll use the Channel Info tools to remove the empty channels, thus freeing up the unused memory. But first you'll copy the mapping to the first available mapping channel, because you can delete channels only starting with the last one.

  7. Right-click the last channel, and from the right-click menu, choose Copy.

    This places the texture mapping created by the UVW Map modifier into the copy buffer. The status line on the dialog, beneath the row of buttons, reads “Copy Buffer Info: Node: ostrich Map Channel 4”.

  8. Right-click the channel whose ID is “1:map” (the first available texture map channel), and, from the right-click menu, choose Paste.

    The Channel Name dialog appears, giving you the opportunity to name the pasted channel.

  9. Type Planar Mapping and press Enter or click OK.

    Map channel 1 now also contains the planar mapping originally applied to channel 4. You can now delete the remaining map channels, but first you'll demonstrate that the planar mapping is indeed applied to channel 1.

    NoteWith an object that has default mapping, such as a geometric primitive, you might have pasted to channel 2 instead. This would preserve the original, default mapping as well as the planar mapping in two different channels.
  10. Open the Material Editor, if necessary, and go to the material's diffuse map level. Use the Map Channel spinner to decrement the value to 1 by clicking the down arrow three times.

    At map channels 3 and 2, no map appears on the ostrich model, because those channels don't contain any mapping values. But at map channel 1, the checker texture reappears on the object.

  11. Right-click the 3:map channel, and from the right-click menu, choose Clear.

    The channel remains, and still uses 33 kilobytes of memory. This demonstrates that you can't delete intermediate channels.

  12. Right-click the 4:map channel, and from the right-click menu, choose Clear.

    The channel disappears.

  13. Clear the 3:map channel, then the 2:map channel.

    Only map channel 1 remains. You've deleted the others, thus reducing the object's total memory footprint by approximately 99 kilobytes (the memory consumed by the three unused map channels).

  14. On the Modify panel, look at the object's modifier stack. It contains a UVW Mapping Paste and four UVW Mapping Clear modifiers; the Channel Info utility uses these modifiers to help do its work. To get rid of these, simply collapse the stack.

Enable vertex sub-object selections to survive topology changes and object type changes:

Because Channel Info provides access to the channel that stores the current vertex selection, and lets you copy that information to other channels, you can store the vertex selection. Once you've done so, the vertex selection will survive topology changes, such as adding mesh resolution and even changing the object type.

It's important to remember, however, that the vertex-selection channel has only one component, while map channels have three. Thus, you need to copy the vertex-selection channel to a subcomponent of a map channel.

The following task also demonstrates usage of the Select By Channel modifier in conjunction with Channel Info.

  1. Open the octopus.max scene file.

    This octopus is at an early stage of modeling. You'll use it to learn how to retain sub-object selections after subdividing the mesh.

  2. Select the octopus object, open the Channel Info utility, click one of the tracks, then click Add to create a new map channel.

    You can use the extra map channel to store the vertex-selection data, thus retaining any information already in the original map channel.

  3. On the Modify panel, go to the Vertex sub-object level of the Editable Poly base object.
  4. From the Region Selection flyout on the toolbar, choose Lasso Selection Region and, in the Left viewport, select all the vertices in the octopus head. Drag out an approximate region selection; you needn't be particularly careful about not selecting non-head vertices for this exercise.

    Next, you'll determine whether this selection can survive a topology change on its own. You can use a special feature of Editable Poly to automatically convert the vertex selection to a polygon selection.

  5. On the Selection rollout, Ctrl+click the Polygon button to go to that sub-object level while simultaneously selecting the polygons used by the existing vertex selection.

  6. On the Edit Geometry rollout, click the Tessellate button, then return to the Vertex sub-object level.

    The vertices you selected before are interspersed with the new, unselected vertices that were created by tessellating the mesh. The vertex selection did not survive the topology change. That is, not all of the head vertices are still selected.

  7. Press Ctrl+Z to undo the tessellation.

    The software restores the original vertex selection.

  8. In the Map Channel Info dialog, right-click the vsel channel and choose Copy.

    “vsel” is short for vertex selection. This channel stores the current selection set of vertices.

  9. Right-click the 2:map channel you created in step 2.

    The Paste command is unavailable, because map channels each have three components, but the vertex-selection channel has only one. You can't copy and paste between a one-component channel and a three-component channel. Fortunately, Channel Info gives you optional access to individual components of three-component channels.

  10. At the top of the Map Channel Info dialog, click the SubComp (subcomponents) button.

    All three-component channels expand into their subcomponents. vsel is the only one-component channel.

  11. Right-click the 2:map:X channel and choose Paste. When the Channel Name dialog opens, type Head Vertices and press Enter.

    The software adds a UVW Mapping Paste modifier to the object's stack.

  12. Return to the Editable Poly > Vertex sub-object level, and select all of the octopus's leg vertices.

  13. Copy the vsel channel to the 2:map:Y channel, and name it Leg Vertices.
  14. In the modifier stack, right-click one of the UVW Mapping Paste modifiers and choose Collapse All.

    All of the additional modifiers are deleted, and the pasted data is “baked” into the object mesh.

  15. Apply a Tessellate modifier to the model.

    The mesh resolution increases significantly.

  16. Apply a Select By Channel modifier to the octopus model.

    This modifier lets you select channels that you named in Channel Info.

  17. In the Select By Channel modifier, open the Selection Channel drop-down list.

    The entries are the same as the vertex selections you copied and pasted to the map channel subcomponents.

  18. Choose each of the items from the drop-down list in turn.

    The corresponding stored vertex selection appears on the object, including all new vertices created by the tessellation. Note that the software automatically creates a soft selection for any vertices that the tessellation created between the original selected and unselected vertices; that is, on the border of the selection.

    You could get the same results by copying the stored channels back to the vsel channel in the Map Channel Info dialog, but Select By Channel makes it easier to access the various stored selections. You can pass the selection in the active selection channel up the stack to further modifiers.

    Normally, if you change an object's geometry type, it's possible to lose a sub-object selection. But with Channel Info, stored selections remain intact, as you'll see in the final part of this lesson.

  19. Right-click the octopus and convert it to an Editable Patch object. Reapply the Select By Channel modifier and access the different stored channels.

    The channels are empty, because Channel Info doesn't support stored vertex selections in patch objects. But, as you'll see in a moment, the stored mesh-vertex selections are still available.

  20. Convert the octopus to an Editable Mesh object. Apply another Select By Channel modifier and access the different stored channels.

    The vertex selections remain intact. If you performed the same series of conversions, starting with an editable mesh with a vertex selection, the selection would be permanently lost after the first conversion.

    TipIf you're doing this sort of work and find that you can't paste a copied channel that you think you should be able to, try clicking the Update button on the Map Channel Info dialog. This step is necessary, for example, after object type conversions and topology changes.

    The next procedure follows on from this one. If you'd like to try it later, save this file first.

Apply texture blending with the Vertex Color map:

In 3ds Max, the Vertex Color map works in conjunction with Channel Info to provide access to the different named channels. This lesson shows how to use the capabilities of the Vertex Color map along with stored vertex selections to blend textures on an object's surface.

If you haven't done the previous procedure, please complete it before attempting this one.

You'll create a composite material and use opacity to specify which sub-material should appear where.

  1. Continue from the previous procedure, or open the file you saved at the end, or open the included file octopus01.max.
  2. Open the Material Editor and apply the first material (1-Default) to the octopus.
  3. In the Material Editor, click the Standard button, and in the Material/Map browser, double-click Composite. When the Replace Material dialog appears, click OK to continue.
  4. At the top of the Composite Basic Parameters rollout, click the Base Material button.
  5. Click the Diffuse color swatch and set it to a bright green color.

  6. Click the Go To Parent button, then click the Mat. 1 button. Choose a Standard material for material 1.

    The Composite material uses opacity to determine how the different materials overlay the base mesh, so that's where you apply a Vertex Color map. You'll use Vertex Color because it provides access to the named, stored channels.

  7. On the Blinn Basic Parameters rollout, click the Opacity map button to the right of the spinner, and choose the Vertex Color map.
  8. On the Vertex Parameters rollout, find the Channel Name field and click the arrow button to its right.

    The drop-down list shows the vertex-selection channels you pasted and named.

  9. Choose the Head Vertices channel.
  10. Click the Go To Parent button, and set the Diffuse color to a bright red.
  11. Apply a UVW Map modifier to the object.

    This is just so the renderer doesn't complain about missing map coordinates when you render.

  12. Render the Perspective viewport.

    A slight amount of blending between the colored areas is the result of the soft-selected vertices created by the tessellation.

  13. Click the Go To Parent button, and set Mat. 2 to a blue, Standard material, with Opacity mapped with a Vertex Color map set to the Leg Vertices channel.
  14. Render again.

    You now have an RGB octopus.

    You can find the completed scene file in octopus_final.max.

  15. Also try setting the different sub-materials to different maps such as Checker and Cellular.

    This is a very powerful method of using any mapping channel to combine different materials on an object's surface.

Enable a morph object to survive a topology change:

Sometimes, after you set up a morphing animation with the Morpher modifier, you need to change the object geometry. For example, the client or technical director might request that you add a facial feature such as wart, which requires you to increase mesh resolution.

Normally, if you change the topology of the base morph object, the morphing animation is completely lost because the base object's topology then differs from that of the targets. To recover, you must re-create the morph targets using the new topology, which can be a lot of work.

Instead, you can reuse the original morphing animation via the Channel Info's Copy and Paste functions, thus saving a great deal of time and effort.

  1. Create a base object, convert it to Editable Mesh or Editable Poly, make several copies, and modify the copies to create morph targets. Use the Morpher modifier to set up a morphing animation on the base object.

    You can use your own scene, or load the included scene file octopus_morph.max. The remainder of the lesson assumes you're using this scene, which contains a low-polygon octopus moving its head and legs using three morph targets.

  2. Play the animation.

    The leftmost object, the one animated with the Morpher modifier, moves its head and legs. This is also referred to as the base object. The remaining objects are morph targets; the base object uses these poses for the different phases of its animation. All four objects have the same geometry; this is a requirement for morphing animation.

    Before starting, you'll demonstrate how changing the object geometry loses the morphing animation.

  3. Select the base object, octopus base, and, on the Modify panel > modifier stack, click Editable Poly twice to go to the Vertex sub-object level.

  4. On the Edit Vertices rollout, click the Extrude button, then, in the Perspective viewport, drag one of the neck vertices upward to extrude it outward.

  5. In the modifier stack, click Editable Poly again to exit the Vertex sub-object level.
  6. Play the animation again.

    The animation is lost. This happened because the base object's geometric structure, or topology, is now different from that of the morph targets.

  7. Press Ctrl+Z several times until the octopus is no longer selected, then play the animation.

    The morphing animation is restored.

    To begin, you'll use Channel Info to copy each of the morph targets' mesh channels to different channels in the base object.

  8. Select the base object, octopus base, then open the Channel Info utility.
  9. On the Map Channel Info dialog, click any channel, then click the Add button three times to add three new map channels.

    You can store the mesh data in existing channels such as Alpha, Illum, and vc, or add new channels to hold it. In this lesson, you'll do the latter.

  10. Select the first morph target, octopus head forward. On the Map Channel Info dialog, right-click the first channel, poly, and choose Copy from the menu.

    The poly channel contains the object's mesh data.

  11. Select octopus base again and use the Map Channel Info dialog to paste to the 2:map channel, which is the first new channel you created earlier with the Add button. Name the channel octopus head forward.

  12. Similarly, copy the poly channels from the octopus legs 1 and octopus legs 2 objects (the second and third morph targets) to the octopus base object's 3:map and 4:map channels, respectively, naming the channels octopus legs 1 and octopus legs 2, respectively.

    TipIf you select multiple objects, they all appear in the Map Channel Info dialog, so you can copy and paste channels without having to change your selection.
  13. Select the base object and, in its modifier stack, move the Morpher modifier above any UVW Mapping Paste/Add modifiers (drag it to the top of the stack).

  14. Right-click the uppermost UVW Mapping Paste modifier and from the context menu choose Collapse To.

    The added/pasted channels are combined into the base object; only it and the Morpher modifier remain.

  15. At the Editable Mesh/Poly level, refine the mesh. For example, you might use Slice, Cut, or Tessellate to add resolution. Try this: Select a few polygons on the front of the neck, click the QuickSlice button, click once on either side of the polygon selection, and exit the Polygon sub-object level.

  16. Play the animation.

    Because of its modified topology, the base object no longer morphs into the target shapes.

  17. Delete all the morph targets (not the base object).
  18. Make three copies of the edited base object.

    Each of these copies has the same topology as the modified base object, and contains all of the original morph targets' shapes in its mapping channels.

  19. Select the first copy, open the Map Channel Info dialog if necessary, and copy the octopus head forward channel to the poly channel. It's not necessary to rename the poly channel when you paste.

    The first morph target regains its head-forward pose.

  20. Similarly, copy the octopus legs 1 and octopus legs 2 channels on the second and third copies, respectively, to the poly channels.
  21. Optional: Recover extra memory used by the morph targets by deleting the mesh data stored in their mapping channels with the Clear function.

    Lastly, you'll set the Morpher modifier to use the new targets.

  22. Select the base object, go to the Modify panel, and click the Morpher modifier in the stack, if necessary.
  23. On the Channel List rollout, right-click the first target name button (octopus head forward), choose Pick From Scene, and click the first morph target object in the viewport (octopus base01).

    The new target name replaces the old one on the button.

  24. Similarly, use the Channel List buttons to set octopus base02 and octopus base03 as the second and third morph targets.
  25. Play the animation.

    The morphing animation is restored intact with the modified topology.

    You can find the end result of this lesson in the file octopus_morph_final.max.

Summary

With its ability to store different kinds of information in mapping channels for later retrieval, the Channel Info utility can play a role in helping you master a variety of tasks in 3ds Max. You can use it to: