PDA

View Full Version : Plugin development - Where to start?


MrSparkle
09-22-2009, 03:08 PM
Hi,

I need to develop a plugin for 3ds max that creates geometry. I'm an experienced .NET developer and max user, and I already wrote some MaxScript "plugins" for creating geometry and such.

As I understand the MaxScript and SDK documentation, I have different options:
- Learn C++ and write unmanged plugins using the SDK
- Write scripts that use the .NET abilities of MaxScript as described in this article: http://www.gamasutra.com/view/feature/3780/integrating_maxscript_and_net_.php
- Use a Max.NET wrapper by Ephere: http://ephere.com/autodesk/max/

What would by the best way to start creating my own fast and stable plugin. Does anyone has already developed a plugin with a .NET language such as C#?

Thanks,
Christian

denisT
09-22-2009, 08:41 PM
Hi,

I need to develop a plugin for 3ds max that creates geometry. I'm an experienced .NET developer and max user, and I already wrote some MaxScript "plugins" for creating geometry and such.

As I understand the MaxScript and SDK documentation, I have different options:
- Learn C++ and write unmanged plugins using the SDK
- Write scripts that use the .NET abilities of MaxScript as described in this article: http://www.gamasutra.com/view/feature/3780/integrating_maxscript_and_net_.php
- Use a Max.NET wrapper by Ephere: http://ephere.com/autodesk/max/

What would by the best way to start creating my own fast and stable plugin. Does anyone has already developed a plugin with a .NET language such as C#?

Thanks,
Christian


To develop a plugin with c# is not a good idea. You can use any features of .NET in your code but main part of a plugin should be on c++ or maxscript. If your geometry plugin creates high poly geometry or creates a lot of objects in sequence - it must be written on c++.
If you want to do something simple, and it doesn't need a lot of memory - you can use MXS.
I wrote about 20 geometry plugins, and in my case only 4 are c++, and all other are MXS.

PEN
09-22-2009, 09:01 PM
I use Max script plugins all the time but they are simple. I have noticed that load times are a little higher but mine are all fairly simple geometry for control objects. they work well and have been used in many productions.

boomji
09-23-2009, 09:20 AM
http://www.adskconsulting.com/adn/cs/api_course_sched.php


B

MrSparkle
09-23-2009, 10:39 AM
Hi,

I use Max script plugins all the time but they are simple.

I really need a decent performance, so maxscript is not an option in this case :)



I wrote about 20 geometry plugins, and in my case only 4 are c++, and all other are MXS.

How did you do that? I read that it's only possible to create .NET controls instantiated by MaxScript, but not plugins. Or did you use Max.NET?

Christian

shibumenon
09-23-2009, 02:42 PM
Since you already are used to dotNet, I think the ephere wrapper would be the fastest way out for you...

guruware
09-23-2009, 03:42 PM
Hi,
I really need a decent performance, so maxscript is not an option in this case :)

for performance go C++, see sceneexplorer for .NET performance...

last i heard about .NET wraper was that it doesn't support param-blocks, might have changed, dunno...

why using .NET controls ?
whats so uber-good with them ?
write your own controls, they work and behave as you need/want

i never ever used .NET, don't understand the hype about it... (exept for mxs)
might be ok for business apps, but not for 3d-packages where speed is everything

i write my plugins outside max
a) faster tests, did you ever start max2010 247 times a day ?
b) i can debug without max interfearing (like complete system stop)
c) i can use the code elsewhere, Maya/XSI/Linux/Mac

imho.. the addition of .NET to max wasn't such a good idea
again, ok for mxs, but please not in the core package
and its one of the reasons why we never will get a linux/mac max

i don't want to start a .NET vs. non-.NET war here, its just my opinion
guruware

MrSparkle
09-23-2009, 04:12 PM
Thank you, guruware. I think it's not about flame war here :)
Personally, I like developing with C# very much, the performance is great and software development was never easier! I also wrote 3d software with DirectX.

I would be delighted if Autodesk provides a REAL .NET interface or at least a complete .NET wrapper for the SDK, but I don't know if this will ever happen.

Anyway, I will give Max.NET a try, so I don't need to start c++ coding. Maybe I can port my plugins once Autodesk decides to provide a decent .NET SDK...

Christian

denisT
09-23-2009, 04:32 PM
there are only two ways to make a geometry plugin for max - using c++ and max SDK, and using MAX Script. I don't know way how to make max plugin using c#.



if you need performance go with c++



PS. .NET is very helpful with coding on max script.

KingMax02
09-29-2009, 03:00 AM
i write my plugins outside max
a) faster tests, did you ever start max2010 247 times a day ?
b) i can debug without max interfearing (like complete system stop)

guruware

hi, i want to know how you doing? "Write plugins outside max"
Thanks very much.

guruware
09-29-2009, 03:19 AM
hi, i want to know how you doing? "Write plugins outside max"
Thanks very much.
not realy that much simple :)
i made a small program with basic max-like functionality
a 3d viewport, rollouts, node, mesh, spline, point3, etc classes
which use the same members as you find in max

eq.
this way i can make procedural objects more easy (and faster)
then when ready, do the max-integration

everything which is too much max-specific i cant do like this

guruware

HuaMuLan
09-29-2009, 08:57 AM
I think you need max-sdk procedure Object.

CGTalk Moderation
09-29-2009, 08:57 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.