Flux and the Max Creation Graph Sample Pack 2

By - - 3ds Max

To celebrate the fact that we now have over 3000 members on the MCG Facebook page, and to make up for the long periods without posts I wanted to share a new set of MCG tools and compounds: you can download the MCG Sample Pack 2 here.

Before installing the Sample Pack I recommend you first back-up your entire MCG user folder (%userprofile%/Autodesk/3ds Max 2016/Max Creation Graph). You can then un-zip the file contents directly into your MCG user folder. This package includes all of the tools and compounds from the original sample pack and includes updates to the MCG curvature sample, so overwriting existing files should be fine, unless of course you made your own modifications to these tools or compounds, which is why I strongly recommend backing up your folder!

At the core of this sample pack is a set of modifiers called the Flux toolkit for performing object cloning, placement, and creating animations. These mini-tools work together to enable users to create sophisticated effects as demonstrated in this video:

 

 

Even if you don't find the Flux toolkit directly useful it does demonstrate a very powerful workflow for MCG tools: using Map Channels to share data between tools. It also serves to showcase and test a large number of new compounds the address common challenges that arise when writing MCG tools. For example orienting objects towards another, generating random points on a surface, interpolating positions and tangents along a spline, and so forth. 

How Flux Works

Flux works by storing transform matrices in a map channel to represent the position, rotation, and scale of each cloned object. You place a Flux initializer modifier (e.g. Flux_Initialize_Vertices) on an object to initialize the map channel. Next you place the Flux modifiers you want. Finally you add a Flux_Evaluate modifier on top to generate clone a mesh at each of the matrices.

Things get very interesting when you use the Flux blend modifiers (e.g. Flux_Blend_Falloff) to interpolate between the top and previous Flux effect. This is where the “combine effect” check-box can be useful. Most Flux effects also have a "strength" value that allows you to control an interpolation between the Flux effect (or combined effect) and the previous effect. Flux effects can also be copied to and from other map channels to enable your to reuse intermediate effects (e.g. using Flux_Store_Data and Flux_Load_Data). 

Flux Modifiers

The following is a list of the Flux modifiers

 

Flux Modifier

 

Modifier Type

 

Description

 

Flux Align Axis

 

 

Transform

 

 

Orients one axis of each matrix

 

 

Flux Blend Falloff

 

 

Blend

 

 

The effect is applied to matrices in a specified part of the array, with a falloff

 

 

Flux Blend Offset

 

 

Blend

 

 

The effect strength is applied to matrices with before the specific location in the array.

 

 

Flux Blend Randomly

 

 

Blend

 

 

The effect is applied with random strength to different matrices

 

 

Flux Blend Region

 

 

Blend

 

 

The effect is stronger near the specified node

 

 

Flux Blend Sine Wave

 

 

Blend

 

 

The effect strength is controlled by a sine wave.

 

 

Flux Circle

 

 

Transform

 

 

Arranges the transforms in a circle

 

 

Flux Concatenate

 

 

Creation

 

 

Adds two arrays of matrices together

 

 

Flux Evaluate

 

 

Evaluate

 

 

Creates clones of geometry transformed according to each matrix in the map channel

 

 

Flux Filter by Angle

 

 

Filter

 

 

Removes matrices that are rotated more or less than a specific angle

 

 

Flux Filter by Box

 

 

Filter

 

 

Removes (or keeps) matrices that are within a specific distance from the bounding box.

 

 

Flux Filter Overlapping

 

 

Filter

 

 

Removes matrices that are at the same position

 

 

Flux Filter Range

 

 

Filter

 

 

Removes a number of matrices starting from the specified matric

 

 

Flux Initialize Faces

 

 

Initialization

 

 

Creates an array of matrices at each face of the base object

 

 

Flux Initialize Vertices

 

 

Initialization

 

 

Creates an array of matrices at each vertex of the base object

 

 

Flux Initialize

 

 

Initialization

 

 

Create an array of identity matrices

 

 

Flux Lerp Nodes

 

 

Transform

 

 

Positions matrices between the matrices of two nodes using linear interpolation (Lerp)

 

 

Flux Lerp Spacing

 

 

Other

 

 

Creates new matrices between each pre-existing matrix that has the specified spacing

 

 

Flux Line Corners

 

 

Creation

 

 

Each matrix is duplicated. Every pair of matrices is oriented away from the line segment it creates.

 

 

Flux Load Data

 

 

Data

 

 

Copies the matrices from another map channel

 

 

Flux Mesh Loft

 

 

Meshing

 

 

Creates a mesh by lofting a shape along the path defined by the matrices.

 

 

Flux Mesh Strip

 

 

Meshing

 

 

Creates a mesh strip assuming the first and second half of the matrix positions forms the bottom and top of the mesh strip respectively.

 

 

Flux Move

 

 

Transform

 

 

Moves the matrices towards a target node.

 

 

Flux Orient Axis

 

 

Transform

 

 

Orients an axis towards the specified node.

 

 

Flux Orient

 

 

Transform

 

 

Orients each matric towards a target using a primary and secondary axis of orientation.

 

 

Flux Orient to Next

 

 

Transform

 

 

Orients each matrix towards the next one.

 

 

Flux Path

 

 

Initialization

 

 

Creates matrices evenly spaced along a spline.

 

 

Flux Redistribute

 

 

Creation

 

 

Treats the matrices as a path, and redistributes N matrices evenly or randomly between the other matrices.

 

 

Flux Replicate

 

 

Creation

 

 

Creates N copies of the matrices, each offset by some amount

 

 

Flux Reset

 

 

Transform

 

 

Resets all matrices to the identity matrix

 

 

Flux Rotate

 

 

Transform

 

 

Rotates all matrices

 

 

Flux Scale to Target

 

 

Transform

 

 

Scales all matrices according to the distance from a node

 

 

Flux Scale

 

 

Transform

 

 

Scales all matrices

 

 

Flux Scatter

 

 

Transform

 

 

Places matrices randomly on the surface

 

 

Flux Store Data

 

 

Data

 

 

Copies the matrices to another map channel

 

 

Flux Translate

 

 

Transform

 

 

Moves the matrices

 

Extending Flux Yourself

While Flux is very flexible and powerful you may find that non-trivial compound effects require a lot of clicking to switch back and forth between modifiers, not to mention your scene will slow down substantially when there are too many modifiers on your stack. This is where you can look into using MCG to create your own Flux tools that combine effects. The graphs for these tools are designed to be small and easy to understand so that you can reuse and extend them.

Some of the samples even show how Flux can be extended to do unexpected things like creating meshes.

Final Words 

A big thank you to the amazing team working on Max Creation Graph and to the support of our user community! 

 

Published In
Tags
  • 3ds Max
  • Film & VFX
  • Games
  • Design Visualization
7 Comments
To post a comment please login or register
| 1 year ago
Congratulations MCG team! Any chance to play with flux opened splines?
| 2 years ago
Hi I'm only getting the Flux initializers in the modifiers list.
Edited by pQwH41yi 2 years ago
it's very good stuff.but I don't have some nodes.something like:MatrixSetOrientation,FluxTransformMatrices.....,did I need change my 3D max 2016 to 3D max 2016 design or something else version?
Edited by 330eBSDe 2 years ago
superb
Edited by FjAbS7K7 2 years ago
| 3 years ago
I've added to this blog a list of all the Flux modifiers. The video without music can be found at: https://youtu.be/hHmHY_q3VBI Thanks!
Edited by SmsxxDGK 3 years ago
| 3 years ago
To bad, i´m not allowod to see this wonderful (supposed to be) piece of videoart cause its embedded piece of music! SaxnDi! Ah, found the one without the musik on ´tube, Thanks alot!
Edited by nmZ30QD5 3 years ago
Very cool stuff. Is there any overview of all the content in this MCG Sample Pack 2? Or should I just download it and play with 'em all? :-)
Edited by 5kOX0YuB 3 years ago