Array

The Array command displays the Array dialog, which enables you to create an array of objects based on the current selection.

Procedures Interface

The items in the Array Dimensions group let you create one-, two-, and three-dimensional arrays. For example, a row of five objects is a single-dimension array, even though it takes up three-dimensional space in the scene. An array of objects that's five rows by three columns is a two-dimensional array, and an array of objects that's five rows by three columns by two levels is a three-dimensional array.

Tip: You can preview the array by turning on the Preview button. With Preview on, changing the array settings updates the viewports in real time.

Play this to see an example of creating a 2D array:

Procedures

To create an array:

  1. Select the objects to array.
  2. Do one of the following:
    • On the Extras toolbar, click (Array).
    • From the Tools menu, choose Array. If using the Enhanced menu system, choose Edit menu Duplicate Array.

    3ds Max opens the Array dialog.

  3. On the Array dialog, select the type of object to output: Copy, Instance, or Reference).
  4. In the Preview group, click the Preview button to turn it on.

    This lets you see the results of the array operation in the viewports, with changes appearing in real time.

  5. In the Array Transformation group, click the arrows to set Incremental or Totals array parameters for Move, Rotate, and Scale.
  6. Enter coordinates for the Array Transformation parameters.
  7. Indicate whether you want a 1D, 2D, or 3D array.
  8. Set Count to the number of copies on each axis.
  9. Enter the appropriate values in the numeric fields for Incremental Row Offsets.
  10. Click OK.

    The current selection is duplicated the specified number of times, with each object transformed as indicated.

To replace an array:

  1. Undo the array to replace, using Edit Undo Create Array, or press +Z.
  2. Change the coordinate system and transform center, if needed.
  3. Do one of the following:
    • On the Extras toolbar, click (Array).
    • From the Tools menu, choose Array. If using the Enhanced menu system, choose Edit menu Duplicate Array.

    3ds Max opens the Array dialog.

  4. Adjust any parameters on the Array dialog that is displayed.
  5. Click OK to create a new array, which replaces the previous version. Repeat these steps to fine-tune the array.

Example: To create an array of objects that numbers 5 x 4 x 3:

  1. Create a teapot with a radius of 10 units.
  2. From the Tools menu, choose Array. If using the Enhanced menu system, choose Edit menu Duplicate Array.
  3. In the Incremental set of parameters, set Move X (the upper-left field) to 50. This causes each object in the array to be positioned 50 units apart on the X axis.
  4. In the Array Dimensions group, choose the 3D button to enable all the spinners in that group.
  5. Set the 1D Count spinner to 5, the 2D Count spinner to 4, and the 3D Count spinner to 3.

    This creates a row of 5 objects that are 50 units apart, and then 4 rows of those five objects, and then 3 rows of the 5 x 4 matrix of objects, resulting in a box array.

  6. In the 2D row, set the Y spinner to 80.
  7. In the 3D row, set the Z spinner to 100.
  8. Click OK.

    A box array of teapots appears. The first dimensional array is five teapots created along the X world axis, 50 units apart (as specified in the Array Transform group). The second dimensional array is four layers created along the Y world axis, 80 units apart (as specified in the Array Dimensions group). The third dimensional array is three layers created along the Z world axis, 100 units apart. The total number of objects in the array is 60.

Example: To create a 360-degree array:

  1. Reset 3ds Max.
  2. Near the top of the Front viewport (away from its center), create a long, thin box at the twelve-o'clock position (as if the viewport were a clock face).
  3. From the User Center flyout on the main toolbar, choose (Use Transform Coordinate Center).
  4. From the Tools menu, choose Array. If using the Enhanced menu system, choose Edit menu Duplicate Array.
  5. Click the arrow button to the right of the Rotate label to enable the three Rotate fields in the Totals section.
  6. Set the Z parameter to 360.0.
  7. In the Array Dimensions group, choose 1D and set Count to 12.
  8. Click OK.

    3ds Max creates an array of 12 boxes in a full circle.

General Considerations

When you use the Array tool, keep these points in mind:

Interface

Array Transformation Type of Object Array Dimensions Total in Array Preview
Click a group box in the image to jump to the description of the corresponding settings.

Array Transformation group

This area lists the active coordinate system and transform center. It’s where you set the transforms that define the first row of the array. You decide here on the distance, rotation, or scale of individual elements, and along what axes. You then repeat this row in other dimensions to produce the finished array.

You can specify the extent of the transform in increments between each object, or in totals for all objects. In either case, the distances are measured between the pivot points of the objects. The arrays occur using the current transform settings, so the group title changes depending on the transform settings.

For each transform, you have the choice of whether to apply the transforms successively to each newly created element in the array or to the overall array. For example, if you set Incremental X Move to 120.0 and Array Dimensions 1D Count to 3, the result is an array of three objects, each of whose transform centers is 120.0 units apart. However, if you set Totals X Move to 120.0 instead, the three elements are spaced 40.0 units apart for a total array length of 120.0 units.

Click the left or right arrow button for Move, Rotate, or Scale to indicate whether you want to set Incremental or Total array parameters.

Incremental and Totals settings are toggles for each transform. When you set a value on one side, the other side is unavailable. However, the unavailable value updates to show the equivalent setting.

Incremental X/Y/Z spinners

Parameters set on this side apply to individual objects in the array. Here are examples:

  • An Incremental Move X setting of 25 specifies a spacing of 25 units on the X axis between centers of arrayed objects.
  • An Incremental Rotate Z setting of 30 specifies a progressive rotation of 30 degrees on the Z axis for each object in the array. In the finished array, each object is rotated 30 degrees farther than the one before it.
  • Move Specifies the distance between each arrayed object along the X, Y, and Z axes. Move is set in current units. Use a negative value to create the array in the negative direction of the axis.

    Click the left arrow to enter incremental values for the Move transform.

  • Rotate Specifies the degree of rotation about any of the three axes for each object in the array. Rotate is set in degrees. Use a negative value to create the array in a clockwise direction around the axis.

    Click the left arrow to enter incremental values for the Rotate transform.

  • Scale Specifies the percentage of scale along any of the three axes for each object in the array.

    Click the left arrow to enter incremental values for the Scale transform. Scale is set as a percentage. 100 percent is full size. Settings below 100 decrease the size, and above 100 increase it.

Totals X/Y/Z spinners

Parameters set on this side apply to the overall distance, number or degrees, or percentage scale in the array. Here are examples:

  • A Totals Move X setting of 25 specifies a total distance of 25 units on the X axis between the centers of the first and last arrayed objects.
  • A Totals Rotate Z setting of 30 specifies a combined rotation of 30 degrees on the Z axis divided equally among every object in the array.
  • Move Specifies the overall distance, along each of the three axes, between the pivot points of the two outer objects in the resulting array. For example, if you're arraying 6 objects and set Move X total to 100, the six objects will be arrayed in a row that's 100 units between the pivot points of the two outer objects in the row.

    Click the right arrow to enter total values for the Move transform.

  • Rotate Specifies the total degrees of rotation applied to the objects along each of the three axes. You can use this, for example, to create an array that totals 360 degrees.

    Click the right arrow to enter total values for the Rotate transform.

    Re-Orient Rotates the generated objects about their local axes while rotating them about the world coordinates. When clear, the objects maintain their original orientation.

  • Scale Specifies the total scale of the objects along each of the three axes.

    Click the right arrow to enter total values for the Scale transform.

    Uniform Disables the Y and Z spinners and applies the X value to all axes, resulting in a uniform scale.

Type of Object group

Determines the type of copies made by the Array function.

  • Copy (The default.) Arrays copies of the selected object to the specified position.
  • Instance Arrays instances of the selected object to the specified position.
  • Reference Arrays references of the selected object to the specified position.

See Creating Copies, Instances, and References.

Array Dimensions group

Lets you add to the Array Transformation dimension. The additional dimensions are positional only. Rotation and scale are not used.

  • 1D Creates a one-dimensional array, based on the settings in the Array Transformation group.

    Count Specifies the total number of objects along this dimension of the array. For 1D arrays, this is the total number of objects in the array.

    A one-dimensional array

  • 2D Creates a two-dimensional array.

    Count Specifies the total number of objects along this second dimension of the array.

    X/Y/Z Specifies the incremental offset distance along each axis of the second dimension of the array.

    A two-dimensional array, with 1D Count=7 and 2D Count=4

  • 3D Creates a three-dimensional array.

    Count Specifies the total number of objects along this third dimension of the array.

    X/Y/Z Specifies the incremental offset distance along each axis of the third dimension of the array.

    A three-dimensional array, with 1D Count=10, 2D Count=6, 3D Count=3

Incremental Row Offsets: The offset fields become available when you choose a 2D or 3D array. These are distances along any of the three axes of the current coordinate system.

  • If you set a Count value for 2D or 3D, but no row offsets, the array is created with overlapping objects. You need to specify at least one offset distance to prevent this.
  • If some objects appear to be missing from the array, it is possible that some objects have been created exactly on top of other objects in the array. To determine whether this has occurred, use Select By Name to see the full listing of objects in your scene. If objects are on top of one another and you don't want this effect, click +Z to undo the array, and try again.
Total in Array

Displays the total number of entities that the array operation will create, including the current selection. If you're arraying a selection set, the total number of objects will be the result of multiplying this value times the number of objects in the selection set.

Preview group

Preview

When on, viewports display previews of the current array settings. Changing a setting updates the viewports immediately. If the update slows down feedback with large arrays of complex objects, turn on Display As Box.

Display as Box

Displays the array-preview objects as bounding boxes instead of geometry.

Reset All Parameters

Resets all the parameters to their default settings.