Cortex by David Mackenzie

I thought this was worth a mention. The guys at Ephere have been working on an exciting project that looks quite promising. What looks like a node interface for creating plug-ins for max has the potential to make the SDK even more accessible to artists and TDs. I am assuming the plug-ins it creates are using their .Net wrapper for the SDK. I have to say that it is great to see these guys continuing to add great products to max. I really like that they seem to also focus on making it easier for TDs to be able to solve problems, there .Net wrapper (which the Autodesk's .Net wrapper is based on) has made my life MUCH easier. I have been able to bust out new tools and plug-ins much faster (perhaps 2-3x) than using the standard SDK.

Check it out below:

In any case it certainly looks exciting. Will watch this space.




Meet Larry, the 3dsmax layer manager. by David Mackenzie


Why build a new layer manager? 3d Studio Max has had a layer manager for a long, long time. It works very well for what it is, however, as scenes over the years have grown large and complex the layer manager has not evolved to over come this. Scenes these days have more levels of detail and with that detail has come a need for better scene management. When deciding to create a new layer manager there were a couple of things that I wanted to do:

  • Keep the existing layer manager, this seems strange but I like solutions to problems that build in redundancy. If my new layer manager decided to stop working in the middle of production I wanted to be able to revert back to the old one. This meant anything new I created would either need to be built on top of or use the existing layer manager as its core.
  • The layer manager needed to be more granular. Everyone has wanted layer manager that has had sub-layers. I wanted to be able to have sub-layers of any depth.
  • Sub-Layers would inherit the properties of there parents.
  • Make it easy to build new tools and features into the new layer manager. If I was going to build a layer manager I wanted to be able to extend it easily.
  • Standardise our layers and workflow. I wanted to create a workflow were our files and how we worked in them was standardised so that anyone in the studio could open someones file and be able to hit the ground running.
With those goals in mind I got to work. I chose to write the layer manager with Max Script and .Net instead of hitting the SDK. The upside to working with Max Script and .Net is that I could write the tools very fast and after 2 days I had the first version out the door for the artists to try. Since then it has grown and been updated as it has needed to be. There were originally a flurry of bug fixes that were required but after that we set about creating new features as production called for it. It has been about a year since I first wrote it and now it is a solid production tool after cutting its teeth on small jobs and then proving itself on larger jobs it has become an integral part of our workflow.

Custom Features of the layer manager

There are many custom features I have written into the layer manager some of them are below:

  • Isolate Layer. Similar to Max's isolate feature when you right click on a layer and select isolate all other layers are hidden and the selected layer is turned on. The next time you right click on the layer you have the option to de-isolate it. This has proved very handy when yo need to do some quick modeling fixes in large scenes.
  • Rename Layers and Children. I wanted an easy way to rename layers and there children right in the dialog. This proved a little trickier than I first thought it would, however, you can now easily rename layers just by double clicking on them and typing.
  • Node View. An external view for handling nodes.
  • Export Layer. Saves the selected tree of layers as an X-Ref.
  • Layer Sets. For saving the layer states of layers. For instance you can save a state for a camera with all of the relevant layers turned on. This is great for large scenes that have multiple cameras.

A new Layer Manager

Below are some screen shots of the new layer manager. As you can see the interface is very simple and faithful to the original layer manager, this lets new artists in the studio get up to speed with the tool right away.


LayerManager v2.0

Standard Layer Manager

Most recently we used the tool on the Renovators with great success. Using it in conjunction with a few other tools we were able to achieve the impossible delivering animation for 6 houses in 6 days. You can see some of the work here.


What Next?

Moving forward there are a couple of things that I am currently working:

  • Increased Performance. I want to increase the performance of the tool so that I can add support of scene objects in the tree view. So far I have re-written the control and I am pleased to say the performance is much faster. Not to say the current version is slow but there is a difference between adding 200 or so layers and 5000 objects.
  • Tighter integration with X-Refs and containers. I want to make splitting up max files to be completely seamless and transparent. This will be a huge benefit on large projects with more than one artist working on it. Hopefully the layer manager will become a bug for scene management.
  • Create an connection between render passes and layers. It would be great to expand the layer sets functionality to be able to create different render passes.
Overall I am hoping the layer manager to grown into more of a scene manager which will allow artists to manage there scenes as quickly as possible all in one place.
A silver lining?
The biggest upside of writing this tool has been the change in artist behavior. Our scenes are now much more standardised enabling anyone to pick up a project and continue to work on it. Changing a team of artist habits is difficult at best some times it takes a good tool to serve as the catalyst for change. I happy to say that new layer manager has succeeded in this respect.


3dsmax Update - The Game Changing .Net SDK Wrapper by David Mackenzie

I was very please to read what will be in the next 3dsmax Subscription Advantage pack due out in late September. Autodesk has added some very welcome new features including:

  • Render Pass System, which lets you brake down your scene into render passes. It has a great interface for managing this including an intuitive tree view for creating and updating states.
  • Adobe After Effects Interoperability. This is great addition when used with the Render Pass System. It provides a very powerful method to interchange data between AE and Max. Including renders, objects, lights and cameras.
  • Active Shade iray. This update lets you use iray for active shade. Not really excited by this as I do not use iray.

While all of these are great additions to max, I am really excited about is the inclusion of the .Net wrapper for the SDK. For those of us who spend a great deal of time writing tools for artists this really opens up a new world for we can do and how quickly we can do it. I might sound silly but it really is a game changer, often when writing tool you are faced with a junction where you either come up with a work around or you hit the SDK. Often the need to hit the SDK is only for something simple but it is still a massive effort. Most of the time TD's just opt to avoid the SDK and just go with a work around.

3ds Max 2012 Render Passes/State Sets
3ds Max 2012 Render Passes/State Sets

Having a simple interface to much of Max's SDK really does open up a lot of doors for TD's. I have to admit I this is the most excited about a max release I have been in since they added pflow.

I have added the videos below, you can check out the original article


Render Passes/State Sets

ActiveShade for iray