Autodesk 3D Studio MAX(tm) For those of you who didn't make it to Siggraph, here's the scoop. 3D Studio has been completely redesigned -- from the ground up. The Yost Group has been working on it for three years (yup, we started it way before R3 was even a twinkle in our eyes). But first, some history. The system architecture for the original DOS version of 3D Studio was designed in the mid 1980's (along with most of the other animation systems available today), and 3DS is the ultimate workhorse expression of non-object oriented technology. It is robust. It gets the job done. It is showing the world how to open up professional 3d animation to everyone... but as much as we love and will always stand behind the DOS version, it isn't the future. We're sure that it will have a long life (while the future completely 'arrives') but the future is coming... FAST. The future is object oriented. The future is component. The future is fun to use. And the future is completely extensible. Because component software is the future for all of us who use software, the future is 3D Studio MAX. We always knew that this was possible, and we decided to go for it in the spring of 1992, right after we shipped 3DSr2. Because of the immensity of the project, we could never have gotten it done without doubling the size of the Yost Group (to eight people ). As always, the key to getting it done was pulling the right team together. Here are the key Yost Group players: Dan Silva: co-creator of 3D Studio Tom Hudson: co-creator of 3D Studio Don Brittain: formerly VP of Research for Wavefront (1986-1992) Rolf Berteig: IPAS programmer extraordinaire Jack Powell: co-designer and documentation sculptor Gary Yost: yours truly... In addition to this core team, there are two primary supporting YG players. Gus Grubba is handling image processing and device drivers. Mark Meier is taking care of all the developer documentation issues, so that the plug-in API docs will ship with the product (not six months later) and they'll be complete and FULL of valuable examples. Beyond the Yost Group, the core 3DS technical team at Autodesk includes such talented folks as Bob Bennett, Keith Trummel, Phil Miller, Steve Elliott, Jonas Ruikis, Grant Blaha, and Jeremy Hubbel. Plus, the Autodesk/IthacaSoftware folks, like Brian Matthews, Jeff Kowalski, Tanvir Hassan, Azhar Khan, and Billy Hsu have given us the fastest, most flexible and pluggable interactive rendering pipeline on the planet... We call it Heidi (HDI=HoopsDeviceInterface). And on top of all this, the Unreal Pictures folks (Michael Girard, Susan Amkraut, and John Chadwick) have spent twenty (combined) years solving the difficult problems of doing character animation and skinning, and they've brought all of their skill to the table by creating the Biped/Skinemation core component plug-ins for 3D Studio MAX. With 3D Studio you've always had the tools to play God with, by building worlds within the program. But now, with Biped, you can populate your worlds with absolutely-convincing digital slaves, whose every movement you control in real time. No kidding. Is digital slavery the wave of the future? (That's what we mean by "the future is coming fast".) So, with this core team of TWENTY people, we've come a long way from the days of putting 3DSr1/2/3 together with just Tom, Dan, Jack and myself. All this is important to note, because it's the people who've made MAX happen. Good ideas are a dime a dozen, but we've had the team and the time to actually make our dream a reality. And what, exactly, is our reality? It's all based on what we call Procedural Linking and Embedding. PLE enables anyone to write C++ code that becomes an integral part of 3DS MAX and the scene itself. These DLL's are called Core Components (we call them 'CoreComs' or 'CoreComps' for short), and PLE enables them to do more than just embed static data into a scene (a la OLE). They can embed procedural data that can be dynamically influenced by scene elements, including other CoreComs. Using PLE technology, a CoreCom plug-in 'lives' in the scene, interacting with scene entities (including other CoreComs). Geometric- controlling CoreComs can be arranged in a pipeline -- each adding their effect to produce the output geometry while other CoreComs are plugged into the parameters of the geometric modifiers to control the animation. PLE technology allows CoreCom plug-ins to leverage their capabilities by interacting with other CoreComs. A single animated object in the scene may be comprised of multiple CoreComs -- each responsible for a different part of the animation... much like a living organism. Another way to look at it is that the scene is a dynamic network of real-time data exchange that allows data flow between a CoreCom, the system, and other CoreComs. Got it? Good! So, here's a very rough synopsis of a few of the major features within MAX (the few that I could think of while writing this list, the day before actually leaving for Siggraph). There's plenty more for you here in the forum for to read about MAX, because in addition to this synopsis, there are three MSWord2 doc files uploaded to the DL3 of the forum (in 3DSMAX.ZIP). (3DSMAX.DOC is the press release for MAX, BIPED.DOC is the press release for Biped, and 3DSNEWS.DOC is the copy that went into one of the handouts at Siggraph.) Please grab them for more information, and you might want to check out what the preliminary UI looked like in early July (when the screen shots 3DSMAX1.GIF, 3DSMAX2.GIF, and BIPED.GIF were taken). Note: At the risk of sounding redundant, since we're not going to be shipping until sometime this winter, this entire list is preliminary, and anything in it is subject to change at any time before release. The following list tries to touch on parts of the system that are different from DOS 3D Studio. Therefore, it doesn't include bulletted items of things that are already present in DOS 3DS. Overall - MAX is not a port. It has been totally re-architected from the ground up using MS Visual C++. - Windows-compliant UI, uses Win'95-style UI for WinNT. - Multitasking, multithreaded, and supports multiple processors. - On-line help - Noun/verb architecture instead of 3DS verb/noun. All processes are selection-based, instead of tool-based. When a selection is hilighted, the tools viable for that selection automatically appear. (no hunting for appropriate tools) - Toolbar at top of screen provides all the tools needed 80% of the time. No searching necessary. - All tools/icons have tooltips. - DLL-based, so updates can be distributed just by changing a couple of DLL's. - Unlimited UNDO/REDO - Unlimited named selection sets. - Inverse Kinematics are available at any time, for any hierarchy, in real time. - Super fast Ithaca HDI geometry pipeline and interactive renderer. - Many 'smart' techniques are used to seamlessly maintain interactivity, no matter how large the scene database is. - Works (but doesn't require) 3D hardware acceleration (ie, GLiNT chip-based boards, etc.) - Enhanced keyboard input so that any time a value is required by anything, it can be precisely typed in. - Powerful grouping facility for nesting groups of objects within groups, within groups, etc. User Interface - One interface. All modeling and animating is done in the same scene. - It's got more options for how to transform entities than any 3D application we've ever seen. - Keyboard equivalents are customizable - Unlimited map type adjustments - Dynamic viewport manipulation Developer Stuff - Built from ground up to be extensible - Visual C++ based - Supports traditional plug-ins (must be ported from DOS however) - Developer API will ship with the product itself - New Core Component form of plug-in supported: object creators, object modifiers (deformers, modelers, etc), animation controllers, and space warps (world-space-based modifiers). - All Core Components operate seamlessly within the UI... completely modelessly. - Plug-ins can be authorized/registered so developers can tie specific plug-ins to specific hardware locks. - Geometry Import/Export is filterable by plug-ins, so any data type can be brought directly into the system - Yost Group is creating the developer API document, and after release we'll be concentrating on supporting developers instead of building a boutique catalog of our own plug-ins. Animation - To animate, just click on the ANIMATE button and start doing stuff. - Animation effects link directly into the geometry database, and can be modified in real time along with all other geometry editing tools. They can optimize their display so that even complex particle systems and deformations become just another editable element of the scene. Any animation effect is possible. - Subcomponents of objects, modifiers and materials are all animateable (animated modeling is now possible). - Very easy methods for making locking keys, and for key control. - Extensive function curve editing for any pluggable animation controller. All plug-ins use the same time editing tools! - Precise timing control. You can apply eases and even eases on eases. - Built-in metronome, sound file import and sound 'scrubbing' (real time scratching) supported. - SMPTE or Frame based control - Thousands of sub-frame increments means scaling operations etc. are highly accurate - Very powerful looping control - Inverse kinematics system includes ability to 'pin' objects to that they don't move until the kinematic chain is fully extended. Makes walk cycles, etc much easier. - Dozens of other neat time-based features that we don't want to give away to our competition right now. Rendering - Plug-in rendering interface - Floating materials editor (modeless) - Very cool color picker. - Materials editor edits materials 'hot' in the scene, dynamically. - Texture maps can have their own mapping coordinates, and you can mix coordinate types within a material. - You can apply multiple maps within each mapping type. - Much more pluggability in the renderer, to make more rendering special effects possible. - SXP's from Yost Group IPAS Disk#2 included. - IXP's from Yost Group IPAS Disk#1 included as Video Post image processing plug-ins. Modeling - Any type of datastructure can be incorporated in the system. 3DSMAX ships with tools for creating polygonal, bezier spline and bspline patch models. Additionally, plug-ins are capable of creating and editing (seamlessly, in real time) nurbs, winged-edge polyhedral, and any type of procedural model. Models can be any size. - Smart snap system lets you snap to geometry (vertices or edges) or grid lines/edges. Snapping can work in 2D, 2.5D, or 3D. - Objects and sub-object elements can easily be transformed in any selectable coordinate system and around any center point. - Models can be animated at their sub-object level, and modifiers can also be animated at sub-object level (for example, the center of a bend can be animated relative to a subset of the control points or vertices that it's bending). - A history of all geometry modifications is saved in an editable 'stack', so you can go back and modify editing operations that you did (even years ago). Everything in this stack is animatable. - Powerful object instancing and referencing. References allow instance control with local modification possibilities, while still being controlled by their master instances. There can be unlimited numbers of instance/reference chains. - Object space modifiers let you deform objects in their own coordinate system, and they come with animatable 'gizmos' that allow the modifier to move around the object over time. - Included modifiers do the kinds of modeling effects from Yost Group IPAS Disk#3 in a fun and interactive way. Procedural geometry-generator versions of Hedra, Displace and Optimize will all be given away as freeware if they aren't completed by the first release. - Space Warps let you assign scene-based effects (explosions, black holes, ripples) to groups of objects and for each object to have its own specific parameters associated with the warp (so some buildings can be 'hard' and others 'soft' for the explode plug-in). This kind of effect wasn't possible with the AXP interface, which only allowed one effect per object. You can now have an unlimited number of effects on any object, and a single effect can be applied to an unlimited number of objects. - Interactive renderer allows texture maps to be adjusted in the scene, in real time. - Plug-in modifiers can also be built to apply any sort of custom UV mapping coordinates using any real-time method. - Imports and (partially) exports .3DS files System Requirements - Runs on a 486, but loves a fast Pentium with 32mb RAM minimum (NT requires over 20Mb all on its own) - Nominally uses 2X RAM of DOS version - Works great with multiple processors (the 2nd processor increases performance by over 60%). - Expect announcements later re: RISC processors - 1024x768x256 required for comfortable use, but it will run in 800x600x256 on the new generation of laptops. -- For Subscribe/Unsubscribe, send mail to majordomo@autodesk.com