kevin vandecar visual arts intro 3dsmax customization
TRANSCRIPT
![Page 1: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/1.jpg)
![Page 2: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/2.jpg)
Introduction to 3ds Max Customization and Plug-in Development
Kevin VandecarAutodesk Developer NetworkM&E Developer Technical Services
![Page 3: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/3.jpg)
bio: Kevin Vandecar
• @ Autodesk for about 18 years– all customization related
• Experience with AutoCAD, AutoCAD Architecture, 3d Studio (DOS), Autodesk Revit• Last five years as Software Engineer on AutoCAD Architecture API and Revit API• now focusing on 3ds Max customization
– currently working for the Media and Entertainment group within Autodesk Developer Network supporting 3ds Max customization and programming.
– email: [email protected]
![Page 4: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/4.jpg)
3ds Max - Intro to Customization
• Presentation Goal– Quickly show what aspects that can be customized– Discuss What, Why, and How for each “type” of customization– Covering these:
• General User Interface Customizations• MAXScript• .NET API• C++ MAX SDK
![Page 5: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/5.jpg)
3ds Max - Intro to Customization
• Show of hands– Currently using 3ds Max (any version)? – 3ds Max 2011?– Autodesk Developer Network (ADN) members?
![Page 6: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/6.jpg)
Customize User Interface
• Why customize the User Interface?– Improve efficiency of your Artists and other Production people– Make your most common tasks more accessible– Saving Time and Money $$$$ in your production environment
• Investment of time to develop customization is relatively low• Cost savings can be high
– Having your favorites easily accessible/consistent
![Page 7: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/7.jpg)
Customize User Interface• Keyboard• Toolbars• Quad menus• Regular menus• Colors
• Ribbon
![Page 8: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/8.jpg)
Customize User Interface
• All can be Stored via a “UI” file– Save/Load– Text based sub-files for each type
• Can also be customized from:– MAXScript– .NET API– C++ Max SDK
![Page 9: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/9.jpg)
Customize User Interface
• Demonstration
![Page 10: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/10.jpg)
Customize User Interface
• Resources:– 3ds Max help: “Customizing the User Interface”– Book: 3ds Max (2011) Bible: “Chapter 4, Customizing the
Max Interface and Setting Preferences”– Book: 3ds Max MAXScript Essentials (Chapters 2 and 3, but
various UI aspects covered through-out)
![Page 11: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/11.jpg)
MAXScript
• What is MAXScript?– The 3ds Max scripting language– Simpler and easier to use than C++– Interpreted “scripting” language
• Use to “drive” 3ds Max• Not to be confused with plug-in development
– Proprietary/Specific to 3ds Max
![Page 12: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/12.jpg)
MAXScript
• Why use MAXScript?– Customize the user interface– Automate repetitive tasks– Provide “algorithmic” traits to geometry/animation– Save Time and Money $$$$
• Consider Investment of time to develop customization– Programming now involved so need more skill
• Cost savings can be high
![Page 13: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/13.jpg)
MAXScript - Functionality• Almost “anything” 3ds Max does, MAXScript can automate!• Including, but not limited to:
• User interface• Geometry• Cameras• Lights• Helpers
• Particles• Modifiers• Animation• Controllers• Trackview
• Renderer• Materials• Batch process files• Batch process objects• Import/Export
![Page 14: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/14.jpg)
MAXScript
• How to use MAXScript– MAXScript is built-in– Listener and Editor windows– Visual MAXScript Plug-in
• Text based storage• Auto-Loading and Running capabilities
![Page 15: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/15.jpg)
MAXScript
• Demonstration
![Page 16: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/16.jpg)
MAXScript
• Resources:– Maxscript.chm: included with 3ds Max– Book: 3ds Max (2011) Bible: “Chapter 49, Automating with
MAXScript”– Book: 3ds Max MAXScript Essentials– Web resources (see end)– ADN DevTech– Sample files
![Page 17: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/17.jpg)
MAX .NET API
• What is MAX .NET API?– A managed extension of the C++ MAX SDK libraries
• Not fully feature rich
– Can use managed languages like:C#, VB.NET, C++/CLI (managed C++)
![Page 18: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/18.jpg)
MAX .NET API
• Why use MAX .NET API?– Sophisticated managed UI capabilities
• access to Max’s UI, • Microsoft’s WPF/XAML and associated design tools
– Interfacing with other .NET API components– At the moment, it has the least amount of exposure into
Max internals.
![Page 19: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/19.jpg)
MAX .NET API
• What is MAX .NET API? - It’s a bit complicated… – Initially introduced a .NET API component in 3ds Max 2008
• This has grown some over the last few releases to be “wrappers” for the C++ functionality
• This is the only officially supported aspect
– MAX Sharp is a prototype work in progress that can be used by ADN members only at this point.• If interested in this contact me.
![Page 20: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/20.jpg)
MAX .NET API - Functionality• ManagedServices• MaxCustomControls• WPFCustomControls• CSharpUtilities• ExplorerFramework
![Page 21: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/21.jpg)
MAX .NET API
• How to use MAX .NET API– Install MAX SDK– Choose a managed language and IDE
• Visual C#• Visual Basic .NET• Visual C++/CLI
– Reference assemblies
![Page 22: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/22.jpg)
MAX .NET API
• Demonstration
![Page 23: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/23.jpg)
MAX .NET API
• Resources:– MAX SDK documentation– ADN DevTech
![Page 24: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/24.jpg)
MAX SDK
• What is MAX SDK?– Used for plug-in development– Object Oriented, Set of C++ libraries (and headers)– Requires knowledge of C++ (but… many, many resources
available)
![Page 25: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/25.jpg)
MAX SDK• Why use MAX SDK?– Functionality for nearly everything
• Flexible• Modify existing behaviors• Provide new functionality
– Saving Time and Money $$$$ in your production environment• Consider Investment of time to develop customization
– Serious Programming now involved so need more skill• Cost savings can again be high
![Page 26: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/26.jpg)
MAX SDK• Why use MAX SDK?– Commercial Plug-ins for resale
• Pure compiled language and associated binaries• Time to develop versus selling in volume makes good business
sense• Seriously consider joining Autodesk’s partner programs (ADN
technical and marketing)
![Page 27: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/27.jpg)
MAX SDK• Why use MAX SDK?– Internal use for task automation, proprietary internal
features, etc.• Time to develop versus functionality needed:
– Would it be easier/faster to develop with CUI, .NET API, or MAXScript?
– Already know C++? Huge advantage if so, but still time consuming.– Consider maintenance over time
• Consider joining ADN for technical help
![Page 28: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/28.jpg)
MAX SDK - Functionality• The most robust and flexible access to 3ds Max!• The following is a list of the most important plug-in types:
•3D Texture Map•Animation Controllers•Atmospheric•Bitmap Texture•Camera Object•Color Selection•Compound Objects
•Crowd Behavior•File Export•File Import•Geometric Objects•Global Utility•Hardware Shaders•Image Filters
•Image Import/Export•Image Viewers•IK Solver•Helper Objects•Light Objects•Linear Shape Object•Manipulator Objects
•Material Plug-in•MAXScript Extensions•Modifier•Multi-pass Camera Effects•Particle Objects•Patch Objects•Radiosity Effect
•Renderer•Rendering Effects•Render Elements•Sampler•Shader•Shape Objects•Snaps
•Sound•Spline Objects•Spring Systems•Texture Map•Track View Utility•Utility•World Space Modifier
![Page 29: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/29.jpg)
MAX SDK
• How to use MAX SDK?– Install from 3ds Max media. Both win32 and x64 supported– Visual C++ 9.0 (Visual Studio 2008)
• Service Pack 1 with the July 28, 2009 security patch installed.• Either VS2008 or VS2010 IDEs will work (but for VS2010 must use VC90 toolset)
– Many samples provided• Including many built-in features
– Auto-loading and Delay loading supported– Debug build provided with symbols to help your development efforts
![Page 30: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/30.jpg)
3ds Max Plug-in Architecture
![Page 31: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/31.jpg)
MAX SDK
• Demonstrations– Plug-ins that ship with the SDK
• Object plug-in• Modifier plug-in
![Page 32: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/32.jpg)
MAX SDK
• Resources:– Maxsdk.chm included with MAX SDK– Web resources (see end)– ADN DevTech
![Page 33: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/33.jpg)
3ds Max - Intro to Customization - Summary
• UI Customization• Easy and low investment of time/money
• MAXScript• Easy to get started and low investment of time/money
• .NET API• Useful for UI and/or consumption of other .NET Framework functionality
• MAX SDK• Requires serious programming skills, but the most powerful and flexible
![Page 34: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/34.jpg)
Web Resources for 3ds Max Customization
• AREA http://area.autodesk.com/– http://area.autodesk.com/forum/autodesk-3ds-max – http://area.autodesk.com/blogs/chris
• gamedev.net– customization and programming forums
![Page 35: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/35.jpg)
Additional Resources for 3ds Max Customization
• www.autodesk.com/develop3dsmax• Autodesk Developer Network – Sparks program– Annual subscription
• Get access to almost all the software for development purposes
– Technical and Marketing support• Direct technical support vie DevHelp online• Trainings and Mentoring
– www.autodesk.com/joinadn
![Page 36: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/36.jpg)
ADN M&E DevTech Global Support Team
Naiqi Weng - Toronto, Canada
Akira Kudo - Tokyo, Japan
Kristine Middlemiss - Toronto, Canada
Kevin Vandecar – Manchester, NH US
Santosh Kumar – Bangalore, India
Cyrille Fauvel – Brest, FranceManager ADN M&E DevTech
![Page 37: Kevin Vandecar Visual Arts Intro 3dsMax Customization](https://reader036.vdocuments.net/reader036/viewer/2022081414/54f627254a79596c4a8b4ca9/html5/thumbnails/37.jpg)
Q + A