[Closed] Getting Started SDK
I’ve been building MAXScript tools for years now, and 95% of the time I’ve found it enough to solve all of my needs. Even times I suspected I couldn’t get more out of MXS, someone here or on Area has come through with advice on getting more juice out of MXS. But there really are times that it just isn’t enough.
As a completely self-taught (or community educated) person, I’ve constantly struggled jumping into the SDK tools. It’s frustrating because I’ve almost always been able to hit the ground running in all things. Although I’ve gotten going with the C#, I’ve never figured out specifically how to get a C++ project for Max up and running. I understand that this is largely due to my own lack of knowledge and experience; but the lack of a Let’s Get Started Making a Max SDK tutorial for C++ newbs is bothersome.
There is a gulf of missing information that I wish was out there (I’m sure it’s there but not in an easily digestible format for helping those in my situation in an efficient manner). One thing is that the SDK Requirements talk about needing specific compilers and specific IDEs. However, the Microsoft website seems to only have a recent version of Visual Studio 2013 that is easily downloadable–and although I’ve found a way to get version 2010, it’s still not entirely clear to me what I need. Do Express installations work? What about the recent changes to VS that seem to have no distinction between VS Community and Professional?
It would be really awesome for people like me who just need a crash course on getting a project going with the assumption that we’ve never actually made a C++ program let alone a Max plugin. I learn far faster when working in context than with traditional Hello World scenarios.
I’d love a step-by-step that explains:
1) Download the latest/most relevant Visual Studio that you can use to compile plugins for Max 2012-2016 (can the Express Editions or current Community VS be set up for this?)
2) Explain what the relationship between each VS and the compilers are. Can any VS IDE use any of the compilers?
3) Set it up to compile for multiple versions of Max inside one environment (if possible). (What do you have to do specifically to configure a Max project to compile?)
4) Hook up one of the project that comes in the MaxSDK/howto folders with the environment set up above.
5) What are some major tips for avoiding problems and optimizing performance in plugin development?
Since I’ve gotten VS 2013 to work well with the C# side and it’s the easiest/latest where the community edition seems to have access to aspects in the Pro versions (that Express did not for previous), it would be most beneficial to explain setting it up with VS 2013 if that is possible.
Hopefully most of you are cheap dates like me and can share this info for eternal gratitude or a six pack!
Try starting here:
http://getcoreinterface.typepad.com/blog/2013/09/3ds-max-c-sdk-training.html
…and here for intermediate training:
http://download.autodesk.com/media/adn/3dsMax(Intermediate)Webcast.zip
Thanks. I’ll download/watch the webcasts.
In the past I’ve tried to use the Plugin Wizards and all attempts simply did not work. I’m convinced that this is not entirely my own inexperience as there have been plenty of others discussing the broken wizards in the past. I’d love info in writing on the steps listed above for reference, including ways to get the projects set up in the latest VS if possible. I’ll try to share what I learn after I’m comfortable… but I’d like someone who already has experience sharing this here and now.
In other words, it would be nice for a written quick-start guide that doesn’t require so many serialized videos.
I’m in, pretty much, the same boat, and I definitely feel a resource like that would be very useful to folks.
I agree, and what I have always tried, that using the wizard may be the ‘wrong’ apporach. I’ve thought my next attempt will be to get a blank project setup to compile for various plugin types (utility, modifier, controllers, ect), and outline that.
Keep us posted. I’ve been pondering jumping back in for a while now, but my past experience is; I open it up, try to get it compiling, throw a tantrum and then meekly go back to maxscript/C# sdk, defeated horribly. :banghead:
Good stuff.
though many aspects of sdk development can be a bit quirky/tricky/“a right pain in the arse” I think the best way to get up and running (and knowing what to do when it breaks) is to be a bit more “experienced” with Visual Studio and win32 dev in general, though the problem with Visual Studio is setting up the project for a max plugin takes time and is extremely tedious process, hence the autodesk adding the “wizard”. The thing with the wizard, other than being crap, is it hides knowledge of the process you need for when it goes wrong (and it will).
there is a section in the help file 3dsMaxSDK.chm Writing Plugins, getting started and Creating a Plug-in Project that can help with the Visual Studio side of things (though it’s by no means complete )
I agree with you wholeheartedly in principle. The problem, again, is that I learn very fast in context–jumping into the pond with a sink or swim approach. In this case, trying to solve some specific needs. I feel I’ll get along fine once I’m actually working towards my goal. Although I know that there are unforeseen mental hurdles… it’s a damn punch in the gut and kick to the face when you cannot follow the simple instructions you’ve read and reread and rechecked 50 times and even get a start screen template to appear. You can only copy files from Folder A to VC/VCProjects and check there permissions so many times… (So I’m not swimming all too well here )
And believe me, I’ve been over the 3dsMax docs. And of course they presume you are starting with more understanding of C++ development. But I have to start somewhere.
Thanks Fabian.
I’ve often times done that same thing in MAXScript (create a function that already existed because I didn’t know about it)… but often the act of making functions helps you gain the experience that we all need (but gain through time).
Above aside, I do have the wizard opening into VS 2010 Express, which I’ve re-installed (I originally started testing back in 2011, I believe). Getting it to work in VS 2010 was straightforward. I’d rather it were in 2013 because in the past while testing I’ve had times where the Express version was limited and could not install various required components in things I was trying to dabble in (like a VS SDK, for example, which was a required component in a project a co-worker and I were working on), while the 2013 version does not have those restrictions. Etc.
Shawn, I feel with you. I’m hitting the exact same problems.
Like Klvnk said, it’s getting easier when you get more knowledge of Visual Studio, C++ and Win32 in general. I’ve learned that by programming a totally different piece of software in C++. Getting back to the 3D Studio Max SDK after a while and after nearly finished that project, it really seems to be much easier to understand.
The SDK is huge. It’s very hard to find the things needed to create something or you are creating a function that already exists just because you didn’t know that. And for me the string conversion stuff really makes me angry most of the time. I’m used to work with strings a lot and the TCHAR, char, wchar_t thing… grrrrr. :banghead:
One last thing: what I started with is extending MaxScript. I think it’s the easiest way to learn the 3D Studio Max SDK and it can even make fun! (oh yes… SDK and fun in one sentence!!!)