3ds Max C#'s .NET SDK. Thoughts?

I started to look at it this weekend. I really like the initiative, being C++ so low level, exposing (almost all) the SDK in C# makes writing plugins easier and faster. But… is that all?

I mean, I was expecting something like Maya has done with Python. Making writing scripts also easier in a more robust and common language with an enormous gamma of library and tools.

But this “MaxSharp thingie” doesn’t look like it. You don’t have a C# console, to make your code available to Max you have to compile it in a .dll and load it with Maxscript. Or add all the classes to make it as a plugin, or utility, or whatever.

Am I missing something? Is C# (and maybe IronPython) gonna be limited to more “low level” stuff in Max that needs to be wrapped into a plugin/utility/dll? Or is this just the tip of iceberg and we can see a better integration of C# and Max in the future?

(PS: an equivalent “free” version of .NET SDK is offered by Ephere here.)

Since information is still thin and spread out on this, here’s a quick resumed tutorial on getting a glimpse of .NET SDK:

  1. If you don’t have Visual Studio, get Visual Studio C# Express. It’s free.

2a) If you have Autodesk subscription, get “Subscription Advantage Packs for Autodesk 3ds Max 2012 and 3ds Max Design 2012”.

2b) If you don’t have access to a subscription, get MaxNet from Ephere.

  1. Open Visual Studio, create a New Project, select C# Class Library.

  2. Under Solution Explorer, right click References, Add Reference. Browse to 3ds Max root folder, select Autodesk.Max.dll. You have all objects, classes and instances under the Object Browser

  3. On VS, under Tools, Settings, change to Expert Settings and restart VS. So you can search Object Browser.

Then read:

Christopher Diggins post: .NET SDK Enhancements in the 3ds Max 2012 Subscription Advantage Pack

3ds Max SDK help: The Enhanced 3ds Max .NET SDK

3ds Max SDK help: Lesson 7: Writing .Net Plug-ins

*edit: Be careful both subscription package and Ephere’s MaxNet install Autodesk.Max.dll. If you intall both, change the names of the installed dll’s before you do it (Autodesk.Max.dll, Autodesk.Max.Remoting.dll, Autodesk.Max.XML, and under %MAXROOT%/bin/assemblies/Autodesk.Max.Wrappers.dll)

1 Like