Learning Path

Hey guys, this month I finally made the decision to dive into the technical side of 3D.
Although I always wanted to use it, I never found time or motivation to actually do it (also because I thought it would be too hard).

But here I am, writing tools for my studio in maxscript that are actually useful in production. My code is of course still very messy and every day I learn better ways to let MXS do what I want it to do.
The more I learn however, the more I think about getting deeper into the tech-side, but my time is very limited with day to day work and learning to code, so I can’t really do the research I would like to do and I hope some more experienced users can help me answer some questions.

Would it be useful to learn Python? I know that Python in Maya is good, but in Max it seems still very rough.
What is at the core of Max? C++? Would it be somehow useful to learn that?
How far can I go with MXS alone before I have to learn advanced languages?
Maybe some of you could share how you started out and what you experienced during your learning path?

I would love to develop scripts/plugins and set up a clean pipeline for my studio one day (in 3ds max, at least for now), but I’m not quite sure on what I should focus my attention to make the best use of my limited free time.
Right now the studio I work for is based in Design and ArchViz, but they are interested to expand in Animation if someone could figure out how to do all the tech-stuff that is needed for an Animation pipeline.
Besides my goal to use all this in production I’m also very interested in how things work at the core, so any links, tips or pointers in the right direction would be much appreciated!

Of course I know that it will take time before I get anywhere near the level that is needed to do all that, but I’m not in a rush and would like to start off in the right direction :):

I’m in pretty much the same situation - but I work with Maya. I’m also always asking myself what my next move should be, and atm I’m looking at making some tool that works with both Maya and Photoshop, using Python.

I first learned MEL, made some tools and scripts with that, and then I learned Python via this totally awesome site which I highly recommend:


Interactive, Live, In-browser coding.

So yeah, learn Python. It’s a good move, a very flexible and useful language and it’s object-oriented. I think it’s a smart idea to go into OO-scripting before going into C++.
I’m also reading Maya Python for Games and Film ( http://www.amazon.com/Maya-Python-Games-Film-Reference/dp/0123785782 ) which goes through a little bit of everything: MEL, Python, Qt and a litte about Maya API.
Maybe there is a similiar book around but for Max?

I came to 3DS Max Tech Art , after starting in Maya I recommend
Maya : learn MEL & Python
Max: learn MXS & C# /Dot Net stuff.

There are threads about Max’s Python implementation both here and at CG Talk but form what I’ve seen it is not well integrated.
Unless you have need to interface with already existing python pipeline stuff, I’d avoid it. (And I love Python)

Max Script is fun but can be maddening. CG Talk’s MXS forum is 10x better than Max Script Help at first.
Watch the dates on threads you search: the ‘best practices’ in MXS have evolved over time. Max script Help has ‘old’ examples too.
I learned a lot from Paul Neale early on.

A big turning point for me was when I started to graspusing Structs to hold my tool scripts
And began keeping Data and Function code seperate from any UI code.

The C# / Dot Net stuff is useful because MXS UI stuff is very limited. Most of the examples discussed in theCG talk MXS Dot Net stickyare about using Dot Net Windows Forms and Controls to overcome this.
Harder to find are examples ofcreating C# objects to load into MXS and integrating C# with MXS

I have probably taken MXS farther than I need to, doing a lot of things that don’t really need Max that may be better suited to C# code.
I was finally forced to switch to pure C# when I had to parse arrays of 1000’s of asset data files.
Max Script couldn’t handle that many files with any speed.

To learn the basics of C# I picked up Head First C#

Hey guys, thanks for the links!
I also realize more and more that .Net and Python are a very good thing to know, also for future careerpaths. C# sounds interesting too, but I guess I’ll start with Python (not for max, but in general) first.

And yeah the MXS Help … I still don’t really know what to think about it although I use it every day. Right now I’m learning so much more from Forums and especially other Scripts on Scriptspot. Sometimes though I really wish I could just have a long chat with some people about their scripts or some kind of mentor to ask questions since figuring this out alone after work hours is getting really tough lately.