Max Creation Graph Updates in 3ds Max 2016 Extension 1

By - - 3ds Max
8 mins
Last modification: 29 Sep, 2017

I am pleased to announce that we have added new functionality to MCG in 3ds Max 2016 Extension 1. You can now create animation controllers using Max Creation Graphs. We also have made it easier to create dynamic rigid body physics simulations with the integration of Physics bullet library. Smaller improvements include added support for Vector3 parameter types and arrays of 3ds Max objects (INode) or floating point values (Single). 

In addition to other fixes, one notable bug fix provided with SP1 (to all 3ds Max 2016 users) that enables users to get mapping channels (e.g. Vertex Color Channels, etc.). This means it is now possible to store and access data in map channels.

Here are some of the highlights of the work on MCG this extension. 

MCG Animation controllers 

The extension ships with several new controllers created using MCG: 

  • Lookat with Billboard Constraint
  • RaytoSurface Position/Orientation/Transform Constraint
  • Rotational Spring with one or three degrees of freedom

You can find the source graphs for these tools in C:\Program Files\Autodesk\3ds Max 2016\MaxCreationGraph\Tools. Warning though, they are not for those uninitiated in the ways of MCG.

To get you started a little more gently into the world of controller creation, I’ve included a sample MCG position controller here called “Orbit” that rotates an object around a target on the XY plane given the speed and radius. 


MAXScript Animation Controller Plugins


While working on MCG animation controller we also added the capability to create scripted animation controller plug-ins in MAXScript. This differs from the traditional “script controller” in that the new controller has a parameter block, a UI displayed in the motion panel, and is listed in the assign controller dialog.

To demonstrate the new MAXScript scripted controller capabilities, I’ve included a “Time Dilation” scripted MAXScript position controller plug-in. You use it by assigning it to an object’s position track that already has a controller assigned. It will cause the object to behave as if time is slowed down and then sped up between the specified begin and end frames. This is done by applying a mathematical function (“pow” to be specific) to the current time and passing the transformed time to the previous controller to get the value. 

Note that one limitation of this tool is that you can only access the previous controller through MAXScript.

Dynamic Rigid Body Simulations with Bullet Physics

We added new operators to MCG that simplify the creation of rigid body simulations using the Bullet physics library. To support this we also have a new property that tools can have called "Is Simulation" that appears in the tool's "properties" dialog. This controls how caches are handled and forces the tool to re-evaluate at each frame.

The new rigid body simulation operators are complex enough that I will be blogging about them in a later post.

For now I leave you with a video from one of our developers Nathan Loofbourrow, where he talks about the work in MCG this release.





Published In
  • 3ds Max
  • Film & VFX
  • Games
  • Design Visualization
To post a comment please login or register
| 4 years ago
Thanks MeliG! It is a huge team effort. Many people have now contributed to MCG on the 3ds Max team: Abdelhak Ouhlal, Amer Yassine, Attila Szabo, Clint Lewis, David Duberman, Graham Fuller, Jean-Thierry Roy, Joel Fortin, Kelvin Zelt, Kevin Derler, Larry Minton, Martin Ashton, Martin Coven, Nathan Loofbourrow, Nicolas Leonard, Randy Clark, Remi McGill, Roman Woelker, Tom Hudson, and of course me. I hope I haven't forgotten anyone? Really though, the extended team deserves credit for supporting this effort and making 3ds Max so awesome!
Edited by SmsxxDGK 4 years ago
| 4 years ago
Wow, this get`s better and better. Great work, Chris!
Edited by yAlomGgp 4 years ago
*Save $66 per month on Autodesk's Suggested Retail Price (SRP) when purchasing 1 year term 3ds Max or Maya subscription.