A First Look at Max 5
Episode 1: The redecorated interface and the defaults system
The first thing you might notice about Max 5 is the new look of the objects. We've redecorated with a new appearance to ensure you can immediately identify the basic elements of a patch. It doesn't try to be photorealistic, primarily because the interface scales so you can look at a patch at any resolution. That includes zooming out as well as zooming in.
Moreover, we've created a new system of default colors. The system allows you to change the colors of objects that haven't been set to any particular special color value. This means that you can change all the colors to a new appearance, but you don't have to force those colors on anyone else who might look at your patch. Similarly, someone else's color scheme won't be imposed on you when you open their patches. One reason we implemented this system was to allow you to change color defaults when lighting conditions change. Bright clear colors on a blistering white background might be appropriate for a sunny day in LA, but if you're on stage in New York, you might want white on black. Watch how easy it is to change defaults merely by selecting a pre-configured file.
Episode 2: The file browser
One of our favorite things about Ableton Live is how drag and drop speeds up the process of working. You can try new things faster just by dragging in a new audio file or plug-in from a file browser into the appropriate location in the Live interface. We wanted to apply this same idea to Max too, because Max programmers end up using a lot of files too -- but not quite in the same way as a Live user. Your patches might use images, sound samples, quicktime movies, subpatchers, etc. but you shouldn't have to type their names or go to an open file dialog to use them.
First, watch how easy it is to drop an image into a patcher. Note the difference between dropping the image onto an object and just dropping it into the patcher.
You can do the same thing with audio files. The second time the file is dragged, the option key was held down. This creates a "read" message box and connects it to the object. This movie also shows how the Max 5 playbar object works with sfplay~ as well as movie.
The next movie shows the preview feature of the file browser. Each type of file Max uses has a handy set of actions you can perform on a file.
There's a lot more to the file browser that we'll show you in the near future. For example, there are many cool options for dragging a patcher file into a patcher -- you can now make a bpatcher in one step.
The file browser is based on a Sqlite database that keeps track of every file in your max world. You can build queries for these files, such as "all patchers containing the word 'beetle' made within the last month." Moreover, you can attach tags to any file, then use the tags to keep all files belonging to a particular project together.
The Sqlite database integrated into Max is exposed to the patcher, so you can access it either via the new Max sqlite object or by using a Javascript interface.
Episode 3: Presentation mode
We need to show you a short video of Max 4. This is the patch for one of the Pluggo plug-ins. It has actually been cleaned up from what it originally looked like. You could probably work on it a bit more to make it somewhat neater. But you'll still have patch cords getting in the way of perfecting the user interface.
Even using the new Max 5 zoom features won't help you much. It would seem that the solution to this sort of problem is to do something more like Reaktor, where the interface is in a completely separate window. However, we believe part of what makes Max easy to use for quick prototyping is that you can see the relationship between the interface elements and the program logic. However, as this plug-in example shows, making the interface in a patcher look nicer often destroys its original clarity.
We think we've come up with a pretty good solution to this problem. Again, inspired by Ableton Live, which has Arrangement and Session views on the same document that you use at different times depending on what you're doing, we now have two "modes" of a patch, Patching Mode (the traditional view of Max with objects and patch cords) and Presentation Mode (which allows every object to have a new position, doesn't show any patch cords, and provides layout tools to make interface construction easier).
Watch how you take this simple patch and give it an interface using the presentation mode feature.
And finally, take a look at how you could start to clean up the visual logic of the Ring Modulator plug-in using Presentation Mode.
by David Zicarelli on October 5, 2007