|
Goal : be able to develop 3D Studio Max® scripts in MAXScript
Prerequisites : knowledge of a programming/scripting language (algorithmic) is a plus
Profile : artists with an experience with 3DSMax, R&D engineers, technical directors, tools developers
Duration : 7 hours
Sessions on demand: Ask for one session
Training location: on site.
Cost : 600 Euros per person without V.A.T (19.6%) (travel, lodging, meals NOT included )
Course content
Basics
- Overview
- Maxscript access in UI
- Maxscript doc
- Listener
- Place objects
- macro-recorder
- Variables
- Maths
- Learn with box primitive
- Script editor (Max 9 and 2008)
- Load/Save/Run a script file
- Errors and « undefined »
- Comments
- simple scripts examples analysis
- simple dialog box creation
- simple rollout creation
- Tests, variables3
- 3D Vectors
- Example : Create a box in the middle position of 2 selected objectsRotations
- Euler
- AxisAngle
- Quaternion
- Example : Change the object rotation using these 3 ways
- Casting between rotations representations
- Scale
- Most common commands
- Apropos
- Help
- ShowClass
- Showproperties (ex : Showproperties $.modifiers[1] --(1-based index !!)
- GetpropNames
- Classof
- Tests instructions
- If / then /else – if do
- While
- Arrays
- Iterate through an array – for Loops
- for i = 1 to 5 do (...)
- for myvar in MyArray do(myvar...)
- Continue command to skip iteration
- Exit command to break a loop
- Example : Clone a box primitive with a for loop
- Get the selected nodes and modify them
- Case of a single object selected
- Case of several objects selected (if $ == selection)
- Functions
- Definitions (same line of in a code block)
- blocks between ()
- send parameter by value (copy)
- send parameter by reference like C++ doe
- globals & locals variables
User Interface
- Macroscripts
- Where they are in the UI ?
- Where are they on the directories ?
- Example : an exporter made with Maxscript : in Maxscripttools subdir
- File is Macro_MXSExport.mcr
- Interfaces
- Dialogs
- Rollout and controls
- Angles
- Buttons
- push
- check
- Bitmap
- Spinners
- CheckBox
- ColorPicker
- Dropdownlist
- Slider
- Timer
- Mouse events management
- Mouse. buttonStates / Mouse. pos / Mouse. screenpos
- Visual Maxscript to graphically create / modify controls
- List of scripted plugins you can create
- Utility
- Example, create a utility which gets the selected node and modify its position
with a spinner control into a rollout
- Floating dialog
- Modifier
- Extend an existing mod or replace its UI
Advanced MAXScript programming
- Maxscript debugger
- Follow example_start_here.ms file
- Follow Example_Tutorial1.ms (animation)
- Follow Example_Tutorial9.ms (animation)
- Tips and tricks to debug your script
- print
- MessageBox
- Debugprint
- Going through a script step by step (in the Maxscript editor shift+enter on a selected line)
- try / catch blocks
- including a script into another script (include command)
- Encrypt a script
- Garbage collector
- Files processing (getfiles)
- Streams
- String stream
- File stream
- Callbacks
- Bitmaps
- Set an ActiveX control into a Maxscript (for example to visualise the resulting film)
- Repetitive process automation
- Example : Add an UVW Map modifier to create UVs with specific settings on different objects.
- Examples of advanced scripts analysed
|